GrowingIO大數據面試題

GrowingIO

GrowingIO大數據面試題

 

1)現有如下數據文件需要處理

格式:CSV

位置:hdfs://myhdts/input.csv

大小:100GB

字段:用戶ID,位置ID,開始時間,停留時長(分鐘)

4行樣例:

UserA,LocationA,2018-01-01 08:00:00,60

UserA,LocationA,2018-01-01 09:00:00,60

UserA,LocationB,2018-01-01 10:00:00,60

UserA,LocationA,2018-01-01 11:00:00,60

2)解讀:

樣例數據中的數據含義是:

用戶UserA,在LocationA位置,從8點開始,停留了60分鐘

用戶UserA,在LocationA位置,從9點開始,停留了60分鐘

用戶UserA,在LocationB位置,從10點開始,停留了60分鐘

用戶UserA,在LocationA位置,從11點開始,停留了60分鐘

該樣例期待輸出:

UserA,LocationA,2018-01-01 08:00:00,120

UserA,LocationB,2018-01-01 10:00:00,60

UserA,LocationA,2018-01-01 11:00:00,60

3)處理邏輯:

(1)對同一個用戶,在同一個位置,連續的多條記錄進行合併

(2)合併原則:開始時間取最早時間,停留時長加和

要求:請使用Spark、MapReduce或其他分佈式計算引擎處理

大數據培訓