PostgreSQL 12 新特性解读之三| 分区表DML性能大辐提升
2019-10-17 08:00
2501 查看
发行说明
环境准备
CREATE TABLE userinfo (
userid int4,
username character varying(64),
ctime timestamp(6) without time zone
) PARTITION BY HASH(userid);
psql -At postgres postgres -c "SELECT 'CREATE TABLE userinfo_' || n || ' PARTITION of userinfo FOR VALUES WITH (MODULUS 16, REMAINDER ' || n || ');' FROM generate_series(0,15) as n ;" | psql
psql -At postgres postgres -c "SELECT 'CREATE TABLE userinfo_' || n || ' PARTITION of userinfo FOR VALUES WITH (MODULUS 2048, REMAINDER ' || n || ');' FROM generate_series(0,2047) as n ;" | psql
INSERT INTO userinfo(userid,username,ctime) SELECT round(100000000*random()), n || '_username',clock_timestamp() FROM generate_series(1,20000000) n;
CREATE INDEX idx_userinfo_userid ON userinfo USING BTREE(userid);
CREATE INDEX idx_userinfo_username ON userinfo USING BTREE(username);
测试场景
SELECT * FROM userinfo WHERE userid= $;
SELECT * FROM userinfo WHERE username= $;
INSERT INTO userinfo(userid,username,ctime) VALUES (11111111,'11111111_username',now());
参考
相关文章推荐
- PostgreSQL 12正式发布:全面的性能提升
- 【原创】PostgreSQL hstore 列性能提升一例
- PostgreSQL和PPAS的分区表及多种条件下的性能体现二
- 解读年度数据库性能:PostgreSQL的日志文件和数据加载
- Django基础: QuerySet特性及高级使用技巧,如何减少数据库的访问,节省内存,提升网站性能
- PostgreSQL学习手册(性能提升技巧)
- 【原创】PostgreSQL hstore 列性能提升一例
- PostgreSQL和PPAS的分区表及多种条件下的性能体现一
- 从源码解读Mysql 5.7性能和数据安全性的提升
- 深度:VMware VSAN 6.0性能特性解读
- 【原创】PostgreSQL hstore 列性能提升一例
- openfire源码解读之将cache和session对象移入redis以提升性能
- PostgreSQL学习手册(八) 性能提升技巧
- 一个提升PostgreSQL性能的小技巧
- 【10.2移动新特性】GraphicsLayer新增动态模式,性能极大提升!
- 解读 Oracle 12c 的 12 个新特性
- 转载:PostgreSQL学习手册(性能提升技巧)
- PostgreSQL学习手册 性能提升技巧
- MySQL 5.6的新特性:提升优化器性能
- PostgreSQL10:重量级新特性-支持分区表