spark 2.1 读取parquet外部表返回null
来源:互联网 发布:成都大数据产业研究院 编辑:程序博客网 时间:2024/06/03 04:07
背景
通过spark2.1读取hive外部表部分字段返回都为null
原因
外部表数据使用parquet文件存储,parquet文件列名是大小写敏感的,而hive metastore 的信息都是以小写的形式存储。
在2.1版本以前spark-sql会对parquet的列名作小写处理
2.1更新中在下面的jira中进行了删除:
https://issues.apache.org/jira/browse/SPARK-18333
解决办法:
将所有的字段名改为小写
列名多个单词间使用下划线分割而不是驼峰式。使用hive的SerDe
设置spark.sql.hive.convertMetastoreParquet=false
,使用hive的SerDe,会带来一些性能损失只能作为临时方案。修改源码
维护麻烦使用内部表
阅读全文
0 0
- spark 2.1 读取parquet外部表返回null
- spark 读取hive parquet
- spark读取json,parquet文件
- spark读取gz文件与parquet文件
- spark 批量读取HDFS(hive分区)parquet文件
- spark-shell读取外部数据源
- cvCreateFileCapture读取视频返回NULL
- spark操作parquet文件
- Spark Parquet使用
- Spark+Parquet分片规则
- Parquet表在spark与Impala间兼容性测试
- Parquet表在spark与Impala间不兼容问题
- Spark从外部读取数据之textFile
- Spark从外部读取数据之wholeTextFiles
- Spark从外部读取数据之textFile
- Spark从外部读取数据之textFile
- parquet-thrfit 数据读写以及hive表读取
- Spark中配置Parquet参数
- Java进阶--Java中 i++完全解析
- [java]类&抽象类&接口分别作为方法参数和返回值
- sizeof()与strlen()的区别
- 程序员日常工作英文20170608
- android项目中通过JNI调用Windows下的dll库
- spark 2.1 读取parquet外部表返回null
- 关系模型中的一些关键字的定义
- Opencv 中cv开头的函数和没有cv的区别,例如cvWaitkey()和waitKey()的区别
- Tomcat+Mysql web环境搭建 科协纳新网站以及优化设想
- Mysql数据库定时任务自动备份
- Linux下端口被占用解决
- 吐槽Dialog的实现
- 线性表之链表实现栈结构
- CSDN机器学习笔记二 决策树、随机森林