【问题标题】:Hive external table with parquet data not selecting data带有镶木地板数据的 Hive 外部表未选择数据
【发布时间】:2017-11-02 04:20:38
【问题描述】:

我有带有镶木地板数据的 Hive 外部表。这里没有使用压缩。我正在使用 spark 作业将数据(镶木地板文件)写入 HDFS 目录。但是当我尝试从表中选择数据时,我得到以下错误/警告并且没有出现输出。 我确信这是一个常见问题。请告诉我如何克服这个问题?

蜂巢 - 1.2.1000.2.5.0.0-1245 hdp - 2.5.0.0-1245 火花版本 1.6.2

2017 年 6 月 1 日下午 5:04:27 警告:org.apache.parquet.CorruptStatistics:忽略统计信息,因为无法解析 created_by(请参阅 PARQUET-251):parquet-mr 版本 1.6.0 org.apache.parquet.VersionParser$VersionParseException: 无法解析 created_by: parquet-mr version 1.6.0 using format: (.+) version ((.) )?(build ?(.)) 在 org.apache.parquet.VersionParser.parse(VersionParser.java:112) 在 org.apache.parquet.CorruptStatistics.shouldIgnoreStatistics(CorruptStatistics.java:60) 在 org.apache.parquet.format.converter.ParquetMetadataConverter.fromParquetStatistics(ParquetMetadataConverter.java:263)

似乎是因为 spark job 中使用的 parquet writer 版本和 Hive 中使用 read 的 parquet writer 版本不同,它们之间存在差距。在这里我们可以看到在 Hive 中用于读取的版本是 parquet-mr 版本 1.6.0

现在,如果有人能告诉我如何更改 spark 作业中使用的 parquet writer 版本或如何更改 Hive parquet reader 版本,我可以尝试解决这个问题。

【问题讨论】:

    标签: hadoop apache-spark hive parquet


    【解决方案1】:

    您看到的异常是无害的。

    【讨论】:

      猜你喜欢
      • 2021-05-16
      • 1970-01-01
      • 2019-05-15
      • 1970-01-01
      • 2020-12-20
      • 2018-02-12
      • 1970-01-01
      • 1970-01-01
      • 2018-12-22
      相关资源
      最近更新 更多