分佈式系統 MIT 6.824 Lab 1: MapReduce 準備

一、環境準備

1.Linux系統
2.Go環境的安裝

二、準備實驗的代碼

通過課程地址獲取 https://pdos.csail.mit.edu/6.824/labs/lab-mr.html

$ git clone git://g.csail.mit.edu/6.824-golabs-2020 6.824
$ cd 6.824
$ ls
Makefile src

三、測試樣例

*注意這裏要將實驗的6.824路徑設置爲到GOPATH中
由於實驗提供了順序的MapReduce操作,在src/main/mrsequential.go.它是一個單進程的操作,實驗代碼提供了統計單詞次數的在 mrapps/wc.go, 文檔的索引在 mrapps/indexer.go. 可以通過一下的命令執行word count:

$ cd ~/6.824
$ cd src/main
$ go build -buildmode=plugin ../mrapps/wc.go
$ rm mr-out*
$ go run mrsequential.go wc.so pg*.txt
$ more mr-out-0
A 509
ABOUT 2
ACT 8
...

但是在執行go build -buildmode=plugin ../mrapps/wc.go會出現一下錯誤

unexpected directory layout:
	import path: _/home/xxx/6.824/src/mr
	root: /home/xxx/6.824/src
	dir: /home/xxx/6.824/src/mr
	expand root: /home/xxx/6.824
	expand dir: /home/xxx/6.824/src/mr
	separator: /

第一步,先確定Go境是否正常
第二步,在mrapps/wc.go的 import "../mr" 修改爲 import "mr"
我在做lab的時候,出現了第二步的問題,修改好了,沒有出現問題了,接下來就可以做lab1的實驗了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章