试图将Spark 1.6.X Parquet读入Spark 2.X的警告

时间:2017-02-18 20:11:23

标签: apache-spark parquet

当试图将spark 1.6.X镶木地板文件加载到spark 2.X中时,我看到很多WARN级别的声明。

  16/08/11 12:18:51 WARN CorruptStatistics: Ignoring statistics because created_by could not be parsed (see PARQUET-251): parquet-mr version 1.6.0
  org.apache.parquet.VersionParser$VersionParseException: Could not parse created_by: parquet-mr version 1.6.0 using format: (.+) version ((.*) )?\(build ?(.*)\)
    at org.apache.parquet.VersionParser.parse(VersionParser.java:112)
    at org.apache.parquet.CorruptStatistics.shouldIgnoreStatistics(CorruptStatistics.java:60)
    at org.apache.parquet.format.converter.ParquetMetadataConverter.fromParquetStatistics(ParquetMetadataConverter.java:263)
    at org.apache.parquet.format.converter.ParquetMetadataConverter.fromParquetMetadata(ParquetMetadataConverter.java:567)
    at org.apache.parquet.format.converter.ParquetMetadataConverter.readParquetMetadata(ParquetMetadataConverter.java:544)
    at org.apache.parquet.hadoop.ParquetFileReader.readFooter(ParquetFileReader.java:431)
    at org.apache.parquet.hadoop.ParquetFileReader.readFooter(ParquetFileReader.java:386)
    at org.apache.spark.sql.execution.datasources.parquet.SpecificParquetRecordReaderBase.initialize(SpecificParquetRecordReaderBase.java:107)
    at org.apache.spark.sql.execution.datasources.parquet.VectorizedParquetRecordReader.initialize(VectorizedParquetRecordReader.java:109)
    at org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat$$anonfun$buildReader$1.apply(ParquetFileFormat.scala:369)
    at org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat$$anonfun$buildReader$1.apply(ParquetFileFormat.scala:343)
    at [rest of stacktrace omitted]

我正在运行2.1.0版本,并且有很多这些警告。有没有办法 - 没有将记录级别更改为ERROR - 来抑制这些?

这似乎是修复的结果 - 但警告可能尚未删除。以下是JIRA的一些细节:

https://issues.apache.org/jira/browse/SPARK-17993

  

我已经从PR构建了代码,它确实成功地阅读了   数据。我试过做df.count(),现在我已经蜂拥而至   像这样的警告(他们只是不停地印刷出来   终端):

将日志记录级别设置为ERROR是最后一种方法:它正在吞噬我们依赖的标准监视消息。有人找到了解决方法吗?

1 个答案:

答案 0 :(得分:4)

暂时 - 即直到/除非这个火花/镶木地板虫被修复 - 我将把以下内容添加到log4j.properties

log4j.logger.org.apache.parquet=ERROR   

位置是:

  • 针对外部火花服务器运行时:$SPARK_HOME/conf/log4j.properties

  • Intellij(或其他IDE)中本地运行时:src/main/resources/log4j.properties