Greenplum支持人为多阶段聚合的方法 - 直连segment(PGOPTIONS='-c gp_session_role=utility') Or gp_dist_random('gp_id') Or 多阶段聚合 prefunc

  1. 云栖社区>
  2. 阿里云数据库ApsaraDB>
  3. 博客>
  4. 正文

Greenplum支持人为多阶段聚合的方法 - 直连segment(PGOPTIONS='-c gp_session_role=utility') Or gp_dist_random('gp_id') Or 多阶段聚合 prefunc

德哥 2018-10-05 16:57:31 浏览1427
展开阅读全文

标签

PostgreSQL , 多阶段聚合 , 直连segment , gp_dist_random('gp_id')


背景

聚合操作是分析型场景中最常见的需求之一,在Greenplum中,数据已分布存储,聚合操作需要多阶段执行。

实际上PostgreSQL 9.6开始支持并行聚合后,聚合的方法也与分布式数据库的多阶段聚合类似。

创建聚合函数时,必须实现多阶段的API才能够让聚合操作真正的并行起来。

有些插件可能因为某些原因没有实现多阶段聚合

《Greenplum roaring bitmap与业务场景 (类阿里云RDS PG varbitx, 应用于海量用户 实时画像和圈选、透视)》

还有什么方法可以让聚合并行起来呢?

1、gp_dist_random('gp_id')

2、直连segment

3、gpdb mapreduce接口

1 gp_dist_

网友评论

登录后评论
0/500
评论
德哥
+ 关注
所属云栖号: 阿里云数据库ApsaraDB