镶木地板谓词下推

时间:2016-01-28 17:39:37

标签: hadoop apache-spark parquet bigdata

parquet的谓词下推是否意味着实际只从磁盘加载了所需的数据?

E.g。如果我创建一个火花数据帧并且只创建select个特定字段,那么这些字段是否会从磁盘中读取?

1 个答案:

答案 0 :(得分:6)

谓词下推处理将扫描哪些值而不是哪些列。 因此,如果在A列上应用过滤器仅返回值为V的记录,则谓词下推将使镶木地板只读块可能包含值V. Parquet在几个级别中保存最小/最大统计数据,它将比较值V与那些最小/最大标题,并且仅扫描最小/最大包含值V的块。 这是谓词下推。

镶木地板的另一个问题是“投影下推” - 它将数据存储在列中,因此当您的投影将查询限制为某些列时,只会返回这些列。此功能不是所谓的谓词下推。