일부 지구 물리학적인 데이터 (지진 데이터)가있는 파일을 가지고 있으며 로컬 파일 시스템에서이 파일을 읽고 HDFS에 Hadoop Sequential 파일로 저장하고 있습니다.Mapper 또는 Reducer에서 값 목록을 내보내려면 어떻게해야합니까?
이제이 Sequential 파일의 값을 읽고 HBase 테이블에 저장할 수있는 MapReduce 작업을 작성하려고합니다. 이 파일들은 단순히 플랫 파일이 아닙니다. 대신 그들은 많은 부분으로 구성되며 각 부분은 240 바이트의 블록이고 여러 필드가 있습니다. 각 필드는 짧거나 정수가 될 수 있습니다. 블록 번호를 키로 사용하고 Sequence 파일의 값으로 240 바이트 (모든 필드 포함)의 바이트 배열을 사용하고 있습니다. 따라서 각 순차 파일에는 모든 블록이 바이트 배열 및 블록 번호로 포함되어 있습니다.
내 질문에 이러한 파일을 처리하는 동안 각 240 바이트 블록을 읽고 개별 필드를 읽고 240 바이트 블록이 완료되면 한 번에 모든 필드를 내보낼 수 있습니까? 1000 블록이있는 파일이 있다고 가정합니다. 따라서 MapReduce 프로그램에서이 1000 개의 블록을 한 번에 하나씩 읽고 각 필드를 추출 (짧은 또는 int) 한지도의 결과로 모든 필드를 방출해야합니다.
관련하여 도움이 필요합니다.
Zhi An : 답장을 보내 주셔서 감사합니다. 사실 순차적 파일 (블록 번호는 전체 블록이 포함 된 240 바이트 배열) – Tariq