Мое приложение-образец Java предназначено для чтения данных из одного кластера хаопов и сохранения его в другом кластере сложения (скажем, A, B).как передавать данные между различными кластерами хаопов в приложении Java?
это пример кода для считывания данных с А.
StringBuilder result=new StringBuilder();
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
FileStatus[] status=fs.listStatus(new Path("/result/test1"));
for(FileStatus file:status){
System.out.println(file.getPath().toString());
if(file.getPath().toString().contains("part")){
FSDataInputStream inputStream=fs.open(file.getPath());
String inputString;
while((inputString=inputStream.readLine())!=null){
result.append(inputString);
}
}
}
код ниже, чтобы получить доступ к B
conf.set("fs.default.name", "hdfs://10.101.51.221:9000");
conf.set("mapred.job.tracker", "hdfs://10.101.51.221:9001");
fs=FileSystem.get(conf);
Этот пример приложения Java содержит в Hadoop/CONF/* в buildpath чтобы получить доступ к A, и я думал, что я также могу получить доступ к B, просто изменив fs.default.name и mapred.job.tracker, но он не работает. Сообщение об ошибке было как
13/08/21 14:41:08 INFO ipc.Client: Retrying connect to server: Already tried 0 time(s).
...
13/08/21 14:41:26 INFO ipc.Client: Retrying connect to server: Already tried 9 time(s).
Exception in thread "main" java.net.ConnectException: Call to server failed on connection exception: java.net.ConnectException: Connection refused: no further information
Любого наконечник об этой проблеме будет оценены
Не могли бы вы дать мне более подробную информацию? Я использую r1.2.0 и просматриваю api в http://hadoop.apache.org/docs/r1.2.0/api/index.html документе, но ничего не нашел о классе org.apache.hadoop.tools.DistCp –