2015-03-03 120 views
0

我需要與APACHE豬腳本以下一點幫助:在Apache的豬創建時間序列

考慮以下數據集:

ID | NAME |創建日期
123 | ABC | 2014-12-15 00:00:00.000

123 | ABC | 2014-12-25 00:00:00.000

123 | DEF | 2014-12-31 00:00:00.000

123 | ABC | 2015-01-02 00:00:00.000

123 | DEF | 2015-02-16 00:00:00.000

在上面的數據中,對於任何特定的ID,可以分配和重新分配不同的名稱,例如上面的ID:123有兩個名稱分配給它:ABC,DEF 這裏需求它創建一種基於2創建日期的ID和NAME的時間序列,並創建開始日期和結束日期。 只是爲了澄清一點,我想要一個ID被分配給一個特定的名稱和它的開始日期和結束日期的所有序列。 以下是我期望的輸出:

ID | NAME |開始日期| END DATE

123 | ABC | 2014-12-15 00:00:00.000 | 2014-12-25 00:00:00.000

123 | DEF | 2014-12-31 00:00:00.000 | 2015-01-02 00:00:00.000

123 | ABC | 2015-01-02 00:00:00.000 | 2015-02-16 00:00:00.000

123 | ABC | 2015-02-16 00:00:00.000 |

在此先感謝

+0

告訴我們你到目前爲止試過的東西... – 2015-03-03 10:25:12

回答

0

至於我對你的問題的理解,我創建了一個腳本。 A =加載'pigexpr.txt'使用PigStorage('|')作爲(id1,name1,cdate1);使用PigStorage('|')作爲(id1,name1,cdate1); B =加載'pigexpr.txt'使用PigStorage('|')作爲(id,name,cdate);

等級=等級A;

rankb =等級B; B1 =過濾rankb(rank_B> 1);

rankb1 = rank B1;

C =加入排名BY rank_A,rankb1 BY rank_B1;

D = foreach C生成排名:: id1,排名:: name1,排名:: cdate1,rankb1 :: cdate;

dump D;