在这些日子里,我写了一些hive语句,但是当我整合hive语句时,我遇到了一些问题,具体情况就是这个(使用hadoop集群):
当我跑步时:
from tmp
insert overwrite local directory '/tmp/out/jpg'
select count(1) where logdate=0222 and req_uri regexp '\.(jpg|JPG)';
或
from tmp
insert overwrite local directory '/tmp/out/jpg_hit'
select count(1) where logdate=0222 and req_uri regexp '\.(jpg|JPG)' and hit_status="hit";
结果是对的 在“/ tmp / out / jpg”或“/ tmp / out / jpg_hit”下,只有一个文件,文件上的结果(两个结果不相等)
但是当我跑步时:
from tmp
insert overwrite local directory '/tmp/out/jpg'
select count(1) where logdate=0222 and req_uri regexp '\.(jpg|JPG)'
insert overwrite local directory '/tmp/out/jpg_hit'
select count(1) where logdate=0222 and req_uri regexp '\.(jpg|JPG)' and hit_status="hit";
在“/ tmp / out / jpg”或“/ tmp / out / jpg_hit”下,有很多文件,当我对每个文件编号求和时,我发现两个结果相等,并且等于大数,结果是错误。 我可以问你我是如何解决这个问题的?