2017-06-02 242 views
2

我正在尝试使用实木复合地板的最小/最大指数。我有问题一起以下/回答在这里:Spark Parquet Statistics(min/max) integration如何查看parquet元数据中的最小/最大索引?

scala> val foo = spark.sql("select id, cast(id as string) text from range(1000)").sort("id") 

scala> foo.printSchema 

root 
|-- id: long (nullable = false) 
|-- text: string (nullable = false) 

当我在看一个单独的文件拼花我看不出有任何的最小/最大

> parquet-tools meta part-00000-tid-5174196010762120422-9 

5fb2e22-0dfb-4597-bdca-4fb573873959-0-c000.gz.parquet 
file:  file:.../part-00000-tid-5174196010762120422-95fb2e22-0dfb-4597-bdca-4fb573873959-0-c000.gz.parquet 
creator:  parquet-mr version 1.8.1 (build 4aba4dae7bb0d4edbcf7923ae1339f28fd3f7fcf) 
extra:  org.apache.spark.sql.parquet.row.metadata = {"type":"struct","fields":[{"name":"id","type":"long","nullable":false,"metadata":{}},{"name":"text","type":"string","nullable":false,"metadata":{}}]} 

file schema: spark_schema 
-------------------------------------------------------------------------------- 
id:   REQUIRED INT64 R:0 D:0 
text:  REQUIRED BINARY O:UTF8 R:0 D:0 

row group 1: RC:125 TS:1840 OFFSET:4 
-------------------------------------------------------------------------------- 
id:   INT64 GZIP DO:0 FPO:4 SZ:259/1044/4.03 VC:125 ENC:PLAIN,BIT_PACKED 
text:   BINARY GZIP DO:0 FPO:263 SZ:263/796/3.03 VC:125 ENC:PLAIN,BIT_PACKED 

我已经试过.sortWithinPartitions( “id”)具有相同的结果。

+0

您是否找到解决方案? – RBanerjee

+0

统计信息不会生成火花1.6 parquet-mr 1.5 – RBanerjee

回答

4

您可以使用镶木地板工具查看统计数据。在你的情况,你可以运行

parquet-tools dump -d -n part-00000-tid-5174196010762120422-95fb2e22-0dfb-4597-bdca-4fb573873959-0-c000.gz.parquet

截至今天(2017年6月9日),火花2.1.1木地板1.8.1不产生二进制列的统计信息,如字符串。

相关问题