从这里开始是一些示例数据
示例输入
ID Date Value
10 2012-06-01 00:01:45 20
10 2012-06-01 00:01:51 12
10 2012-06-01 00:01:56 21
10 2012-06-01 00:02:01 43
10 2012-06-01 00:02:06 12
17 2012-06-01 00:02:43 64
17 2012-06-01 00:02:47 53
17 2012-06-01 00:02:52 23
17 2012-06-01 00:02:58 45
17 2012-06-01 00:03:03 34
期望输出
ID Date
10 2012-06-01 00:01:45 2012-06-01 00:02:06 20 12
17 2012-06-01 00:02:43 2012-06-01 00:03:03 64 34
所以我希望得到第一个和最后一个日期,并将两者的值合并为一行。我的表中的ID值在以后的日期也会有其他条目,所以我只想获得一系列条目的第一个和最后一个。每个条目相隔5秒。如果它们更大,那么它就是一个新的链条。
有什么建议吗?
由于
答案 0 :(得分:0)
我刚开始对此进行搜索,但看起来LATERAL VIEW
和EXPLODE
加上可能是用户定义的函数,或者两个是你的朋友。
答案 1 :(得分:0)
我最终创建了一个MapReduce作业来处理我的数据的csv文件,而不是使用配置单元。
我根据ID“映射”。然后设置一个参数,如果数据进一步超过2小时,我将它们分开。
最后,很容易破解MapReduce代码,然后思考hive查询。