2010-03-03 2 views
0

haddop이 내가 가진 문제에 대한 올바른 도구라면 이해하고 싶습니다.Hadoop을 사용하여 대규모 데이터 세트 일치?

데이터 세트 A와 B가 일치하는 오프라인 프로세스 (한 달에 한 번 또는 한 분기)를 작성 중입니다. 데이터 세트 A는 Oracle에 있고 데이터 세트 B는 XML 파일입니다. 데이터 세트 A는 약 20M 레코드이고 데이터 세트 B는 6M 레코드입니다.
각 레코드는 음악 노래를 나타내며 형식은 다음과 같습니다

song { 
    songid: 

    // type of string , avg_num_of_titles_per_song=1.4 , std_deviation=1.9 
    titles:[] 

    // type of string avg_num_of_performers_per_song=1.5 std_deviation=0.9 
    performers:[] 
} 

두 개의 기록이 일치하는 경우 : - 적어도 하나의 타이틀 검색, 일치 검색 또는 음성 알고리즘 또는 거리 알고리즘 를 사용하여 - 적어도 수행자

이 프로세스의 출력은 데이터 세트가 (1) 인 2 개의 데이터 세트이며, A의 레코드는 한 번만 일치합니다 (일치하는 알고리즘을 사용하여 일치 함). B와 B의 동일한 레코드는 A에서 한 번만 일치합니다. (2) m 궁극적 인 일치

hadoop이 직업에 적합한 도구일까요?

감사합니다.

답변

1

정상 작동합니다. 그러나 당신의 데이터 세트는 hadoop의 사용을 정당화하기에는 그다지 크지 않습니다. 당신은 아마 단 하나의 살찐 서버에서 그것을 실행할 수 있습니다. 먼저 작은 데이터 세트를 distcache에 넣어 다른 노드에 고르게 분산시킨 다음 두 번째로 큰 데이터 세트를 oracle 데이터베이스에서 가져 와서 HDFS로 업로드 할 수 있습니다. 그런 다음 두 개의 데이터 세트와 일치하는지도 작업을 실행하십시오. 산출물을 산출하는 것은 표준지도 - 감소 프로그래밍에 불과합니다.