복붙노트

[HADOOP] 하둡 돼지 : 조건에 조인 (예 tab1.COL1 LIKE (%의 tab2.col2 %)로.)

HADOOP

하둡 돼지 : 조건에 조인 (예 tab1.COL1 LIKE (%의 tab2.col2 %)로.)

어떻게 돼지의 조건으로 가입 구현하는 방법? SQL 동등한 예 :

       select * from tab1, tab2 where instr(t1.col1,t2.col1 ) > 1 ;
       select * from tab1, tab2 where f(t1.col1) =f(t2.col1)  ;

대단히 감사합니다. 필리포

해결법

  1. ==============================

    1.현재로서는 돼지는 외부 조인 및 전체 조인, 내부 조인 만 지원합니다. 두 번째 예는 돼지가 아닌 다른 하나에서 구현 될 수있다 가입. 다음은 예입니다.

    현재로서는 돼지는 외부 조인 및 전체 조인, 내부 조인 만 지원합니다. 두 번째 예는 돼지가 아닌 다른 하나에서 구현 될 수있다 가입. 다음은 예입니다.

    tab1 = LOAD 'file1' using PigStorage('|') using (col1:chararray,col2:chararray);
    tab2 = LOAD 'file2' using PigStorage('|') using (col1:chararray,col2:chararray);
    result = JOIN tab1 by col1, tab2 by col1;
    
  2. ==============================

    2.이 시도.

    이 시도.

    1.

    Cross_Table = CROSS tab1, tab2;
    Filter_Table = FILTER Cross_Table BY NOT(STARTSWITH(tab1::col1, tab2::col1));
    

    2.

    Join_Table = JOIN tab1 BY f(col1) INNER JOIN, tab2 BY f(col1); 
    
  3. from https://stackoverflow.com/questions/37491392/hadoop-pig-join-on-a-condition-ex-tab1-col1-like-tab2-col2 by cc-by-sa and MIT license