在 Parquet 文件格式中使用嵌套数据类型是否会带来任何性能优势?
AFAIK Parquet 文件通常是专门为查询服务创建的,例如Athena,因此创建这些值的过程也可以简单地展平这些值 - 从而允许更轻松的查询、更简单的模式并保留每列的列统计信息。
使用嵌套数据类型可以获得什么好处,例如struct
?
在镶木地板中保留嵌套结构会产生负面后果。问题是,如果 parquet 文件中有嵌套结构,则 Spark 谓词下推无法正常工作。
因此,即使您正在处理镶木地板数据集中的几个字段,spark 也会加载并具体化整个数据集。
这里是ticket https://issues.apache.org/jira/browse/SPARK-17636关于这个问题已经开放了很长时间。
EDIT
该问题已在spark 2.4版本中得到解决。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)