내가 HFTP를 통해 하둡에 연결하는 방법을 발견하고는, (읽기 전용) 잘 작동 :Java에서 hdfs 프로토콜을 통해 hadoop에 액세스하려면 어떻게해야합니까?
uri = "hftp://172.16.xxx.xxx:50070/";
System.out.println("uri: " + uri);
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create(uri), conf);
fs.printStatistics();
그러나, 나는 읽기/복사 파일뿐만 아니라 쓰고 싶은, 즉, 내가 원하는 hdfs를 통해 연결하십시오. 어떻게 실제의 원격 파일 시스템을 편집 할 수 있도록 hdfs 연결을 가능하게 할 수 있습니까?
내가 "HFTP"에서 위의 프로토콜을 변경하려고 -> "HDFS를",하지만 다음과 같은 예외가 ...(URL 프로토콜과 하둡의 불쌍한 내 지식을 용서있어, 나는 이것이 가정 다소 이상한 질문 메신저 묻는하지만, 어떤 도움이 정말 감사하겠습니다) 스레드에서
예외는 "주요"때 java.io.IOException가 :! /172.16.112.131:50070 지역 예외에 실패에 전화 : java.io .EOFException org.apache.hadoop.ipc.Client.wrapException (Client.java:1139) org.apache.hadoop.ipc.Client.ca ll (Client.java:1107) at org.apache.hadoop.ipc.RPC $ Invoker.invoke (RPC.java:226) at $ Proxy0.getProtocolVersion (알 수없는 소스) at org.apache.hadoop.ipc. RPC.getProxy (RPC.java:398) at org.apache.hadoop.ipc.RPC.getProxy (RPC.java:384) at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode (DFSClient.java:111) org.apache.hadoop.hdfs.DFSClient. (DFSClient.java:213)의 에서 org.apache.hadoop.hdfs.DistributedFileSystem. 초기화 org.apache.hadoop.fs.FileSystem.access $ 200 org.apache.hadoop.fs.FileSystem.createFileSystem (FileSystem.java:1514)에서 (DistributedFileSystem.java:89) (FileSystem.java:67) at org.apache.hadoop.fs.FileSystem $ Cache.getInternal (FileSystem.java:1548) at org.apache.hadoop.fs.FileSystem $ Cache.get (FileSystem.java:1530) at org.apache .hadoop.fs.FileSystem.get sb.HadoopRemote.main (HadoopRemote.java:24)에서 (FileSystem.java:228)