Cstore列式存储中的条件匹配

时间:2019-11-22 07:12:57

标签: columnstore cstore-fdw

在列存储中,所有分析查询将比行存储更快。如果要使用条件过滤查询中要包含的记录,该怎么办?

select sum(A.a) from A where A.b > 100 and A.c <= 10;

当列分别存储时,列存储如何管理过滤。以及它如何在各个表之间应用联接。

1 个答案:

答案 0 :(得分:0)

cstore_fdw对每个列块使用块范围过滤器。在读取列数据之前,它首先检查数据范围是否与过滤器兼容。因此,如果沿过滤列的数据分布有助于删除数据块,那么您将获得显着的性能提升。

关于连接,cstore_fdw不执行任何操作。它组成数据行,并将其转发到postgres引擎以进行进一步处理。进一步处理可能是诸如聚合,窗口函数处理或联接操作之类的事情。