PostGIS 地理信息数据 多核并行处理.docxVIP

PostGIS 地理信息数据 多核并行处理.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PostGIS 地理信息数据 多核并行处理.docx

PostGIS地理信息数据多核并行处理本文章来自于阿里云云栖社区摘要:?标签PostgreSQL , PostGIS , 栅格 , raster , 多核并行背景自从PostgreSQL 9.6支持CPU多核并行计算后,PostgreSQL最流行的插件之一PostGIS,用户对多核需求也越来越多。标签PostgreSQL , PostGIS , 栅格 , raster , 多核并行背景自从PostgreSQL 9.6支持CPU多核并行计算后,PostgreSQL最流行的插件之一PostGIS,用户对多核需求也越来越多。原因是PostGIS中有大量的运算是非常耗费CPU资源的,比如raster类型相关的运算。PostGIS tends to involve CPU-intensive calculations on geometries, support for parallel query has been at the top of our request list to the core team for a long time.Now that it is finally arriving the question is: does it really help?PostGIS发布的2.3.1 版本,已经可以看到诚意了吧,以下函数已经支持并行计算了。Mark ST_Extent, ST_3DExtent and ST_Mem* agg functions as parallel safe so they can be parallelized扫描并行扫描并行,比如扫描节点有大量数据要被过滤时,或者说查询子句中有大量的运算时,使用并行可以大大提升其效率。例如1. filter过滤掉大量的数据,并且filter本身运算量较大时,使用CPU多核并行,效果明显select * from table where filter...; 2. 当func函数或者OP操作符运算量较大时,使用CPU多核并行,效果非常明显比如聚合运算,或者一些业务逻辑运算(虽然TABLE本身没几条记录,但是每条记录的运算耗时很长时,并行效果明显)。selectfunc(x), x op y from table ...; JOIN并行我们在使用explain 观察SQL时,或者使用perf跟踪SQL的开销时,对于一个多个表数据JOIN的SQL,如果JOIN的数据量很大,可能就会成为整个SQL的性能瓶颈。现在可以使用CPU的多核并行来加速JOIN了。聚合并行聚合操作,比如统计某个维度的平均值、最大、最小、SUM等,在金融、分析行业用得非常多,处理的数据量大,运算量也较大。除了扫描码并行,聚合函数本身也要支持并行才行,比如sum,count, avg, 可以想象并行处理都是安全的。应该这么说,凡是在分布式数据库中支持的2阶段聚合函数,并行都是安全的。关于分布式数据库的2阶段并行聚合的原理请参考《hll插件在Greenplum中的使用以及分布式聚合函数优化思路》(原文链接:/digoal/blog/blob/master/20160802.md?spm=5176.100239.blogcont71882.22.4t0mP2file02.md)《Postgres-XC customized aggregate introduction》(原文链接:/digoal/blog/blob/master/20130501.md?spm=5176.100239.blogcont71882.23.ANzwbrfile01.md)观察并行、并行原理如果你要观看并行效果,这样设置一下就好了postgresql.confmax_worker_processes = 64 max_parallel_workers_per_gather = 8 parallel_tuple_cost = 0 parallel_setup_cost = 0 min_parallel_relation_size = 0 force_parallel_mode = on tablealter table table_name set (parallel_workers=8); 关闭并行效果alter table table_name set (parallel_workers=0); setforce_parallel_mode = off; 并行原理参考《PostgreSQL 9.6 并行计算优化器算法浅析》(原文链接:/digoal/blog/blob/master/201610

文档评论(0)

czy2014 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档