pgbench là một công cụ được cung cấp bởi PostgreSQL để kiểm tra hiệu suất của cơ sở dữ liệu PostgreSQL. Nó tạo ra một tập hợp các truy vấn mẫu và thực thi chúng để đánh giá khả năng chịu tải và hiệu suất của cơ sở dữ liệu.
Để sử dụng pgbench, bạn cần thực hiện các bước sau:
Thực hiện update chung:
yum update -y
yum install postgresql-contrib -y
1. Tạo cơ sở dữ liệu kiểm tra
Bạn cần tạo cơ sở dữ liệu mục tiêu hoặc sử dụng một cơ sở dữ liệu đã tồn tại để kiểm tra. Ví dụ, để tạo một cơ sở dữ liệu mới có tên là mydatabase, bạn có thể chạy lệnh sau:
su postgres
createdb mydatabase
2. Khởi tạo cơ sở dữ liệu kiểm tra với pgbench
pgbench -i -s 100 mydatabase
Trong đó:
- -i là tùy chọn để khởi tạo cơ sở dữ liệu với dữ liệu mẫu.
- -s 100 là scaling option, nó là số rows mặc định của table mẫu x factor. Như trong ví dụ này là 100, số row hiện có của table x 100 lần.
Khi thực thi lệnh này hệ thống sẽ tạo ra dữ liệu mẫu trong database:
Schema | Name | Type | Owner
——–+——————+——-+———-
public | pgbench_accounts | table | postgres
public | pgbench_branches | table | postgres
public | pgbench_history | table | postgres
public | pgbench_tellers | table | postgres
3. Chạy kiểm tra với pgbench
pgbench -c 90 -j 5 -T 60 mydatabase
Trong đó:
- -c 90 là số lượng kết nối đồng thời (client) mà pgbench sẽ sử dụng (số session).
- -T 60 là thời gian chạy kiểm tra, ở đây là 60 giây.
- -t 1000 là số transactions thực hiện test (có thể thay thế cho -T)
- -j 5: số luồng chạy đồng thời
4. Xem kết quả
pgbench sẽ hiển thị kết quả sau khi hoàn thành quá trình chạy. Kết quả bao gồm số lượng truy vấn mỗi giây (TPS – Transactions Per Second).
Ngoài ra, bạn cũng có thể tùy chỉnh các tham số của pgbench để phản ánh các tình huống sử dụng cụ thể của ứng dụng của bạn. Điều này bao gồm thay đổi số lượng client, tỷ lệ đọc/ghi, và nhiều tham số khác.