Hive でクエリを作成するか、次のことを行う必要がある関数を定義する必要があります。
データセット:
Student || Time || ComuputerPool
-------------------------------------
A || 9:15AM || Pool1.Machine2
-------------------------------------
A || 9:45AM || Pool1.Machine7
-------------------------------------
A || 10:15AM|| Pool1.Machine9
-------------------------------------
A || 11:00AM|| Pool2.Machine2
-------------------------------------
A || 12:05 || Pool2.Machine3
-------------------------------------
A || 12:40 || Pool3.Machine5
-------------------------------------
A || 13:10 || Pool1.Machine3
-------------------------------------
A || 13:50 || Pool1.Machine10
-------------------------------------
B ..........................
そのため、クエリは、特定の学生が特定のコンピューター プールで最初にマシンを使用したときと、別のプールで最初にマシンを使用し始めたときの差を計算することによって、その学生が特定のコンピューター プールで過ごした時間を調べる必要があります。したがって、この例では、彼が費やした時間は次の差になります: 11:00AM - 9:15AM = 1Hour45Mins
ここでの質問は、1 つのストア時間値で最初に使用したものをマークし、後で次のプール データを見つけたときにそれを使用する方法です。