2012-02-27 3 views
0

Hadoop에서 데모 애플리케이션을 개발 중이며 입력 내용은 .mrc 이미지 파일입니다. 내가 그들을 hadoop에로드하고 그들을 통해 일부 이미지 처리를하고 싶습니다.사용자 정의 이진 입력 - Hadoop

메타 데이터가있는 큰 머리글과 일련의 이미지 데이터가 포함 된 이진 파일입니다. 이미지를 읽는 방법에 대한 정보는 헤더에도 포함됩니다 (예 : number_of_images, number_of_pixels_x, number_of_pixels_y, bytes_per_pixel, 헤더 바이트 뒤 첫 번째 이미지는 첫 번째 이미지, 두 번째 이미지는 두 번째 이미지 등)

? 파일의 이러한 종류의 좋은 입력 형식은 무엇

나는 두 가지 솔루션을 생각했다.

  1. 시퀀스 파일 헤더의 메타 데이터를 배치하여 파일을 순서와 각 이미지 쌍을로 변환이 경우 수 모든 매퍼의 메타 데이터에 액세스합니까?
  2. 사용자 정의 InputFormat 및 RecordReader를 작성하고 pl 분산 캐시에 메타 데이터 저장.

안녕하세요. 하둡에서 새로운 기능이있어서 뭔가 누락 될 수 있습니다. 어떤 접근 방식이 더 좋다고 생각하십니까? 내가 놓친 다른 방법이 있니?

답변

0

파일 형식을 알지 못하면 첫 번째 옵션이 더 좋은 옵션 인 것 같습니다. 시퀀스 파일을 사용하면 많은 SequenceFile 관련 도구를 활용하여 더 나은 성능을 얻을 수 있습니다. 그러나이 접근법에 대해 저에게 우려되는 두 가지 사항이 있습니다.

  1. .mrc 파일을 .seq 형식으로 가져 오는 방법은 무엇입니까?
  2. 당신은 헤더가 큰 것을 언급,이

그러나 심지어 우려 SequenceFiles의 성능이 저하 될 수 있습니다, 나는 SequenceFile의에서 데이터를 표현하는 것이 최선의 선택이라고 생각합니다.

+0

헤더는 항상 129KB입니다. 너무 큽니까? – fgrollio

+0

헤더가 작 으면 괜찮을 것입니다. 당신이 큰 머리말을 말했을 때, 나는 그것이 몇 MB의 순서로 생각하고있었습니다. –

관련 문제