以下博文翻译自PostgreSQL主要代码贡献人员之一Robert Haas的博客(详情可浏览:http://www.postgresql.org/community/contributors/),同时他也是并行方式全表扫描功能的主要开发人员, 原文地址: http://rhaas.blogspot.com/2015/11/parallel-sequential-scan-is-committed.html (Blogspot现为Google旗下网站,得翻墙)


我以前建议过将并行全表扫描功能加入至PostgreSQL 9.5中,但未实现。然而,今天我很高兴地向各位通报 我已经将第一版本的并行扫描功能提交至PostgreSQL的开发主分支中,我们确认它将会包含在将要发布的9.6版本中。

为PostgreSQL增加并行查询功能,目前这只是第一步,它也是我长久以来的一个梦想,我已为此工作了好几年了, 最早真正开发时是在9.4版本的开发期间,那时我主要是开发了一些后台动态进程和动态共享内存;接着在9.5版本 期间,我又增加了很多有关并行机制的底层基本加松的开发,以及其他包含在提交的补丁的内容。下面我想说提交的 主要内容明细和下一步还准备要开发的工作和大家沟通一下。

在开始之前,我想首先将这些荣誉给一些应该得的人。首先,Amit Kapila为这个项目中贡献了巨大的帮助。主要是由 Amit和我写了这个功能的大部分代码,这些代码经过涵盖在最近几年多次提交的补丁中。我们俩也写了大量的没有包含在补丁 中的代码。第二,我想感谢Noah Misch,在项目早期阶段,在我被一些问题给绕得晕头转向时,他给了我很大的帮助;第三,我想向整 向PostgreSQL社区的成员,尤其是所有帮助我进行代码审核、功能测试、提出改进意见以及在很多其他方面提供帮助而最终 使用这个功能得以实现的人们。

最为重要的是,我要感谢EnterpriseDB公司,没有EnterpriseDB公司管理上的支持,尤其是来自Tom Kincaid和Marc Linster的支持, 也就不可能让我和Amit有大量的时间开发并最终完成这个项目。同样地,没有我在EnterpriseDB公司的团队的支持,我们的项目也 不可能现在完成,当我忙于项目开发时,我的同事们耐心地帮助我处理了其他的问题。谢谢所有的人。

好了,现在我们来看一下测试效果:

rhaas=# \timing
Timing is on.
rhaas=# select * from pgbench_accounts where filler like '%a%';
 aid | bid | abalance | filler
-----+-----+----------+--------
(0 rows)

Time: 743.061 ms
rhaas=# set max_parallel_degree = 4;
SET
Time: 0.270 ms
rhaas=# select * from pgbench_accounts where filler like '%a%';
 aid | bid | abalance | filler
-----+-----+----------+--------
(0 rows)

Time: 213.412 ms

这里是查询计划的内容:

rhaas=# explain (costs off) select * from pgbench_accounts where filler like '%a%';
                 QUERY PLAN                 
---------------------------------------------
 Gather
   Number of Workers: 4
   ->  Parallel Seq Scan on pgbench_accounts
         Filter: (filler ~~ '%a%'::text)
(4 rows)

目前因该功能还在进一步的开发中,还有一些未处理的问题和使用限制,如现在该功能暂不能在分区表上使用; 仅可对表的全表扫描类查询较有效,有索引的列就用不上了,当然对数据的过滤的操作,多进程并行处理总是要快一些; 还有就是并行处理的进程数如何根据系统配置进行最有效设置,以及其他一些小问题还未完全完成。

最后,也是请大家多多进行测试,并给我们反馈Bug,谢谢!

请在登录后发表评论,否则无法保存。
1楼 pger
2023-05-06 10:54:33+08

postgre 文档

2楼 brutut
2022-12-30 09:46:18+08

就算怀揣世上最伟大的梦想,也不妨碍我们得到一个普通人的快乐。这世上只有一种成功。,就是以自己喜欢的方式过一生。 幸运飞艇走势图 福彩双色球走势图 幸运时时彩走势图

3楼 kericnnoe
2022-12-17 03:31:30+08

歐博百家樂的玩家都是採用微笑心法來下注百家樂

4楼 nihaota
2022-08-21 16:20:00+08

讨债公司 蓝月传奇辅助 蓝月辅助

6楼 nihaosb
2022-02-20 15:11:15+08

讨债公司 搬家公司 网站制作

© 2010 PostgreSQL中文社区