postgis地理信息数据多核并行处理

postgis地理信息数据多核并行处理

ID:8908284

大小:342.65 KB

页数:10页

时间:2018-04-11

postgis地理信息数据多核并行处理_第1页
postgis地理信息数据多核并行处理_第2页
postgis地理信息数据多核并行处理_第3页
postgis地理信息数据多核并行处理_第4页
postgis地理信息数据多核并行处理_第5页
资源描述:

《postgis地理信息数据多核并行处理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、PostGIS地理信息数据多核并行处理本文章来自于阿里云云栖社区摘要: 标签PostgreSQL,PostGIS,栅格,raster,多核并行背景自从PostgreSQL9.6支持CPU多核并行计算后,PostgreSQL最流行的插件之一PostGIS,用户对多核需求也越来越多。标签PostgreSQL,PostGIS,栅格,raster,多核并行背景自从PostgreSQL9.6支持CPU多核并行计算后,PostgreSQL最流行的插件之一PostGIS,用户对多核需求也越来越多。原因是PostGIS中有大

2、量的运算是非常耗费CPU资源的,比如raster类型相关的运算。PostGIStendstoinvolveCPU-intensivecalculationsongeometries,supportforparallelqueryhasbeenatthetopofourrequestlisttothecoreteamforalongtime.Nowthatitisfinallyarrivingthequestionis:doesitreallyhelp?PostGIS发布的2.3.1版本,已经可以看到诚意了吧,

3、以下函数已经支持并行计算了。MarkST_Extent,ST_3DExtentandST_Mem*aggfunctionsasparallelsafesotheycanbeparallelized扫描并行扫描并行,比如扫描节点有大量数据要被过滤时,或者说查询子句中有大量的运算时,使用并行可以大大提升其效率。例如1.filter过滤掉大量的数据,并且filter本身运算量较大时,使用CPU多核并行,效果明显select*fromtablewherefilter...;2.当func函数或者OP操作符运算量较大时

4、,使用CPU多核并行,效果非常明显比如聚合运算,或者一些业务逻辑运算(虽然TABLE本身没几条记录,但是每条记录的运算耗时很长时,并行效果明显)。selectfunc(x),xopyfromtable...;JOIN并行我们在使用explain观察SQL时,或者使用perf跟踪SQL的开销时,对于一个多个表数据JOIN的SQL,如果JOIN的数据量很大,可能就会成为整个SQL的性能瓶颈。现在可以使用CPU的多核并行来加速JOIN了。聚合并行聚合操作,比如统计某个维度的平均值、最大、最小、SUM等,在金融、分析

5、行业用得非常多,处理的数据量大,运算量也较大。除了扫描码并行,聚合函数本身也要支持并行才行,比如sum,count,avg,可以想象并行处理都是安全的。应该这么说,凡是在分布式数据库中支持的2阶段聚合函数,并行都是安全的。关于分布式数据库的2阶段并行聚合的原理请参考《hll插件在Greenplum中的使用以及分布式聚合函数优化思路》(原文链接:https://github.com/digoal/blog/blob/master/201608/20160825_02.md?spm=5176.100239.blo

6、gcont71882.22.4t0mP2&file=20160825_02.md)《Postgres-XCcustomizedaggregateintroduction》(原文链接:https://github.com/digoal/blog/blob/master/201305/20130502_01.md?spm=5176.100239.blogcont71882.23.ANzwbr&file=20130502_01.md)观察并行、并行原理如果你要观看并行效果,这样设置一下就好了postgresql.c

7、onfmax_worker_processes=64max_parallel_workers_per_gather=8parallel_tuple_cost=0parallel_setup_cost=0min_parallel_relation_size=0force_parallel_mode=ontablealtertabletable_nameset(parallel_workers=8);关闭并行效果altertabletable_nameset(parallel_workers=0);setforc

8、e_parallel_mode=off;并行原理参考《PostgreSQL9.6并行计算优化器算法浅析》(原文链接:https://github.com/digoal/blog/blob/master/201610/20161002_01.md?spm=5176.100239.blogcont71882.26.9H8LJO&file=20161002_01.md)《PostgreSQL9.6并行计算

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。