Kami menguji PostgreSQL pada SSD RAID-0 array dengan tabel 10 miliar entri. (Bagian 1)



Dr. Tariff (iOS, Android) .

HDD . , . SSD . SSD , RAID-0 . PostgreSQL SSD .


1. PostgreSQL SSD RAID-0 SSD.
2. (SELECT UPDATE) , , .

. :
  1. SSD
  2. RAID-0 2- SSD
  3. SSD HDD




:
  • Intel i7 4770.
  • 16 Gb RAM.
  • Intel SSD .
  • Intel SSD 480 Gb 530 . Model – SSDSC2BW480A401
  • Toshiba HDD 3000 Gb. Model – DT01ACA300
  • – Ext4. SATA 3.



Linux Mint 17.2. PostgreSQL — «PostgreSQL 9.4.4 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit»

SSD 440. SSD .



500 /, SATA .

Postgres :
shared_buffers = 2048 Mb
port = 5400
max_connections = 1000


3 :
  • pg_bench
  • Python Psycopg2
  • Python SQLAlchemy

pgBench , . , . , , Python .

SQLAlchemy. SQL execute. , SQLAlchemy ( ) CPU.

Psycopg2 15%, , . Python c Psycopg2. Python .

:
CREATE TABLE numbers
(
"number" bigserial NOT NULL,
operator smallint,
region smallint,
CONSTRAINT numbers_pkey PRIMARY KEY (number)
)

:
'SELECT * FROM numbers WHERE number=%d'

.

:
'UPDATE numbers set region=%d, operator=%d WHERE number=%d'

. UPDATE , . INSERT DELETE . . , 1%.

RAID-0 mdadm. RAID , .

COPY. , . 1 1- .

SSD . – 1 . 42 21 . . , .



SELECT


. 16 , .



UPDATE


. 16 . – .

PostgreSQL MVCC ACID. , 2 .

dead-, . , .



15-20%. . VACUUM. , .

PostgreSQL .



, . . . , - .


, SSD 1- .
, 980 . , , .

SSD RAID-0 10- .

, Dr. Tariff Android iOS.


Berlangganan berita kami dan berbagi informasi dengan teman-teman Anda di Vkontakte dan Facebook .

Source: https://habr.com/ru/post/id383295/


All Articles