IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> hive中查询数据为NULL,impala中查询数据可以正常显示 -> 正文阅读

[大数据]hive中查询数据为NULL,impala中查询数据可以正常显示

事情起因:

????????????????生产环境新接了一张表,该表的处理过程是 上游将数据推送至kafka,然后flink消费kafka的数据,flink直接将消费的数据写到hdfs上指定的hive表空间下面,写入完成后通过msck repair table table_name修复一下表,即可在hive和impala中正常显示。

? ? ? ? ? ? ? ? 但问题出现在flink写入表的时候,代码中的属性名称和hive表中的属性名称不匹配,即代码中叫value,而hive建表时叫value2。此时数据正常存放到hdfs上的hive表空间下面,但数据在hive中查询时value2字段显示为NULL,impala中可以正常显示具体的值。

解决办法:

????????????????该表的存储压缩格式是parquet的,在解决过程中尝试新建备份表,通过insert into select 源表的方式,或者是create table as select的方式,均无法在新建表中查询到具体的数据,同时在impala中也不再显示数据。

????????????????最后通过添加了set参数,即可在hive原表中显示数据,命令为:

set parquet.column.index.access=true

原因是:Impala是以序号形式读取parquet,而Hive是以列形式读取parquet 。

最后:

? ? ? ? ? ? ? ? ? 问题已经定位并且解决,但作为开发人员之外的人还是无法看到这个结果。所以后续还是需要修改hive表结构,使其代码中的属性名和hive表的字段名相对应。

写在最后:

? ? ? ? 1.所有写到hdfs上的内容都需要进行匹配(目前仅测试了parquet格式下的),包含flink、spark或者是sqoop等,如果导入的数据的列名与Hive建表时定义的列名不一致,会导致Hive中查询到数据为null,因为Hive默认使用列名来访问Parqeut数据文件,可以通过参数?set parquet.column.index.access=true?来修改访问方式。

? ? ? ? 2.在Hive和Impala中,默认访问Parquet数据文件的方式不一样,Hive是以列名,Impala是以位置,这一点需要注意。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-07-16 21:59:58  更:2021-07-16 22:00:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/8 20:26:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码