PostgreSQL表分区不同实现,性能基准测试[翻译]
原文链接 original by Alexander Korotkov@Postgres Professional company 翻译: 小次郎@飞象最近(2016 3月份) pg_pathman 更新提供了更改查询和删除查询的支持. 由于使用了PostgreSQL查询计划挂钩,更新和删除规划在对单个分区查询时,速度会有改善 其他方式的查询,依旧使用缓慢的继承查询规划 当然,UPDATE,DELETE操作只涉及一个一个分区的情况似乎是最常见,最需要优化的。 此外,分享一些基准测试。 这一基准测试是一年的记账,按天来做表分区,总计约1百万(1M)条数据 当然,这只是个测试示列,因为在实际中由于数据量太小,没有人会分成这么多分区 但它仍然很高兴见到分区开销。下列操作的性能进行比较:
以下的分区方法进行了比较︰ 单表,没有使用分区 pg_partman 扩展 pg_pathman 扩展 在2xIntel Xeon CPU X5675 @ 3.07GHz,24 GB 内存的服务器上,数据库参数配置fsync=off 使用10个线程可以得到如下的结果。
我可以得到以下结论
用于基准测试的 SQL 脚本,请参阅此依据。 create_*.sql 创建日记帐表使用分区的各种方法。 pg_bench的脚本: select_one.sql、 select_day.sql、 insert.sql 和 update.sql . P.S. 这篇文章不是对 pg_partman 的批评。 在很长时间以来,是一个很强大的模块,并且使用了很久. pg_pathman新的扩展模块。 pg_pathman github 地址 译者注: 表分区模块
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |