時(shí)間:2024-02-04 13:45作者:下載吧人氣:25
由于最近在做超大表的性能測(cè)試,在該過(guò)程中發(fā)現(xiàn)了無(wú)序uuid做主鍵對(duì)表插入性能有一定影響。結(jié)合實(shí)際情況發(fā)現(xiàn)當(dāng)表的數(shù)據(jù)量越大,對(duì)表插入性能的影響也就越大。
PostgreSQL創(chuàng)建插入腳本,測(cè)試各種情況的tps。
數(shù)據(jù)庫(kù)版本:PostgreSQL 10.4 (ArteryBase 5.0.0, Thunisoft)
操作系統(tǒng)配置:CentOS Linux release 7 ,32GB內(nèi)存,8 cpu
測(cè)試參數(shù):pgbench -M prepared -r -n -j 8 -c 8 -T 60 -f /opt/thunisoft/pgbench_uuid_v4.sql -U sa pgbenchdb
空表,1000w數(shù)據(jù),5000w數(shù)據(jù),一億數(shù)據(jù)的各種主鍵測(cè)試。
測(cè)試無(wú)序的uuid,有序的uuid,序列,有普通btree,有唯一索引和沒(méi)有主鍵的情況
1.創(chuàng)建表
–無(wú)序的uuid
pgbenchdb=# create table test_uuid_v4(id char(32) primary key);
CREATE TABLE
–有序的uuid
pgbenchdb=# create table test_time_nextval(id char(32) primary key);
CREATE TABLE
–遞增序列
pgbenchdb=# create table test_seq_bigint(id int8 primary key);
CREATE TABLE
–創(chuàng)建序列
create sequence test_seq start with 1 ;
網(wǎng)友評(píng)論