HDFS 구조[5] 데이터 조회(하둡)
이번 포스팅에서는 HDFS에서 파일 읽기에서 데이터를 어떻게 조회하는지 알아보겠습니다. [HDFS 파일 읽기] - 클라이언트에서 네임 노드의 입력 스트림 객체(DFSInputStream)를 통해 스트림 객체를 생성한다. - 생성된 스트림 객체를 이용하여 기본 블록의 10 배수 만큼 조회한다. - 클라이언트 스트림 객체에서 블록 리더기를 생성한다. - DFSInputStream은 파일을 모두 읽을때까지 블록을 조회한다. 모두 읽었다면 close를 통해 닫아야 한다. 1. Client에서 DFSClient에게 읽기 요청을 합니다. : read() 호출 2. DFSInputStream에서 네임 노드로 블록 위치를 요청합니다.: getBlockLocations() 호출 3. 요청 받은 블록 위치를 반환해줍니다. 4. 블록 리더기를 생성합니다. > 이 때 블록이 저장된 데이터 노드가 같은 서버에 있다면 BlockReaderLocal을 생성하고 원격에 있다면 RemoteBlockReader를