码迷,mamicode.com
首页 > 其他好文 > 详细

hive问题汇集贴

时间:2017-08-23 16:23:33      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:regex   extra   顺序   错误   join   apache   left join   issues   条件   

(原创文章,谢绝转载~)

hive的使用中遇到问题汇集贴:

  • HIVE-9146 的bug (新版本已fixed),见 issues.apache.org/jira/browse/HIVE-9146, left join时关联条件顺序不一致导致错误结果。

          旧版本hive关联条件要写成如     ... on  tb1.a=tb2.b  and   tb1.c=tb2.d ...

                                                            ... on  tb1.a=tb3.b  and   tb1.c=tb3.d ...  

                                       (这里若写成  on   tb1.c=tb3.d    and   tb1.a=tb3.b    仅顺序改变,会导致错误结果)

                                                            ... on  tb1.a=tb4.b  and   tb1.c=tb4.d ...

  • hive的默认fields的分隔符是 \001 ,当原始数据文件中出现这个时,即便指定新的分隔符例如逗号,在load数据时也会出现混乱错位。
  • 处理分号“;”相关,例如数据加上分号,要用\073代替直接写分号,concat(column,‘;‘)报错,concat(column,‘\073‘) 可以。
  • 子查询的表需要加上一个别名。
  • hiveql的正则式中(rlike、regexp、regexp_extract(str,regex,index) ),例如匹配数字需要写 \\d 代替 \d 。

hive问题汇集贴

标签:regex   extra   顺序   错误   join   apache   left join   issues   条件   

原文地址:http://www.cnblogs.com/randomstring/p/7418724.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!