Tôi muốn sử dụng bộ nhớ cache được phân phối để cho phép người lập bản đồ truy cập dữ liệu. Trong chính, tôi đang sử dụng lệnhTruy cập các tệp trong bộ nhớ cache phân phối hadoop
DistributedCache.addCacheFile(new URI("/user/peter/cacheFile/testCache1"), conf);
đâu/người dùng/peter/cacheFile/testCache1 là một tập tin đó tồn tại trong HDFS
Sau đó, chức năng thiết lập của tôi trông như thế này:
public void setup(Context context) throws IOException, InterruptedException{
Configuration conf = context.getConfiguration();
Path[] localFiles = DistributedCache.getLocalCacheFiles(conf);
//etc
}
Tuy nhiên, mảng localFiles này luôn rỗng.
Lần đầu tiên tôi chạy trên một cụm máy chủ để thử nghiệm, nhưng tôi đọc rằng điều này sẽ ngăn bộ đệm phân phối hoạt động. Tôi đã thử với một pseudo-phân phối, nhưng điều đó không làm việc, hoặc
Tôi đang sử dụng hadoop 1.0.3
nhờ Peter
thể trùng lặp của [tập tin không đặt đúng vào bộ nhớ cache phân phối] (http://stackoverflow.com/questions/12708947/ tập tin-không-đưa-chính xác-vào-phân phối-bộ nhớ cache) – kabuko