分享

求教:impala与hive表字段顺序的问题

hive impala hbase 整合成功。在hue的hive视图中,创建一个映射表,在hive中看到的字段顺序和在impala视图看到的顺序不同,导致insert into table select 插入字段顺序错乱。求指导!!!!

已有(6)人评论

跳转到指定楼层
desehawk 发表于 2018-3-5 20:05:14
怎么会这样,你是如何操作的。
指定都明确字段名,系统应该不会插入错误
回复

使用道具 举报

ohano_javaee 发表于 2018-3-5 20:11:38
desehawk 发表于 2018-3-5 20:05
怎么会这样,你是如何操作的。
指定都明确字段名,系统应该不会插入错误

我先执行了select,然后把字段按顺序记下来,然后create 表。
然后insert into 表  select。
我select用的是*,三个表关联
回复

使用道具 举报

ohano_javaee 发表于 2018-3-5 20:26:26
ohano_javaee 发表于 2018-3-5 20:11
我先执行了select,然后把字段按顺序记下来,然后create 表。
然后insert into 表  select。
我select ...

不知道我说明白了没有。
我在hive视图查看表结构和impala视图查看表结构,列的顺序不一样。impala好像是按照字典顺序排列的。hive按照建表顺序排列。
回复

使用道具 举报

desehawk 发表于 2018-3-5 21:25:15
ohano_javaee 发表于 2018-3-5 20:26
不知道我说明白了没有。
我在hive视图查看表结构和impala视图查看表结构,列的顺序不一样。impala好像是 ...

insert和select别用*,都指定试试。
回复

使用道具 举报

ohano_javaee 发表于 2018-3-6 09:41:47
desehawk 发表于 2018-3-5 21:25
insert和select别用*,都指定试试。

insert不能指定列吧?
回复

使用道具 举报

ohano_javaee 发表于 2018-3-6 10:08:13
解决了。我先查询impala表,把结果导出Excel,然后把字段的顺序记下来。然后重拍了select的字段顺序。测试发现,impala字段确实是按照字典顺序排列的,hive是按照建表时字段的顺序排列。

期待有高人指点下更高的解决方案!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条