Size: a a a

PostgreSQL + 1C + Linux

2020 October 21

LK

L K in PostgreSQL + 1C + Linux
Сергей Голод
в этом плане да. Но если например вам нужно собрать массив из 10 дисков (raid10 к примеру), то у меня было бы больше доверия к такому массиву который я соберу на ZFS чем к связке mdadm+lvm+ext4
Сергей а гибридные варианты SSD (кеш) + HDD на zfs используете?
источник

СГ

Сергей Голод... in PostgreSQL + 1C + Linux
L K
Сергей а гибридные варианты SSD (кеш) + HDD на zfs используете?
HDD не использую, только SSD. Дополнительно оптаны в качестве SLOG где это необходимо
источник

LK

L K in PostgreSQL + 1C + Linux
Сергей Голод
в этом плане да. Но если например вам нужно собрать массив из 10 дисков (raid10 к примеру), то у меня было бы больше доверия к такому массиву который я соберу на ZFS чем к связке mdadm+lvm+ext4
А какие нибудь сбои связанные с zfs когда нибудь были?
источник

СГ

Сергей Голод... in PostgreSQL + 1C + Linux
L K
А какие нибудь сбои связанные с zfs когда нибудь были?
только восстановимые. На одном из пулов (как раз там остались HDD, но там нет нагрузки существенной) - один из дисков в зеркале "шалил" и scrub всё чинил).
источник

СГ

Сергей Голод... in PostgreSQL + 1C + Linux
т.е. это и не сбой, а штатный механизм zfs по устранению таких сбоев
источник

СГ

Сергей Голод... in PostgreSQL + 1C + Linux
Антон Дорошкевич
А может отключить только synchronous_commit и повторить тест?
отключён только synchronous_commit:
root@hz:~# pgbench -U postgres -j 64 -c 64 -M prepared -T 120 -v -P 5 pgbench
starting vacuum...end.
starting vacuum pgbench_accounts...end.
progress: 5.0 s, 67507.0 tps, lat 0.942 ms stddev 0.804
progress: 10.0 s, 68953.3 tps, lat 0.928 ms stddev 0.810
progress: 15.0 s, 70500.0 tps, lat 0.907 ms stddev 0.990
progress: 20.0 s, 72560.3 tps, lat 0.882 ms stddev 0.520
progress: 25.0 s, 71273.5 tps, lat 0.897 ms stddev 1.731
progress: 30.0 s, 73685.1 tps, lat 0.868 ms stddev 0.619
progress: 35.0 s, 64655.7 tps, lat 0.990 ms stddev 7.564
progress: 40.0 s, 57815.9 tps, lat 1.106 ms stddev 15.720
progress: 45.0 s, 67637.4 tps, lat 0.870 ms stddev 2.782
progress: 50.0 s, 70515.1 tps, lat 0.980 ms stddev 8.681
progress: 55.0 s, 74726.8 tps, lat 0.856 ms stddev 2.056
progress: 60.0 s, 71599.7 tps, lat 0.835 ms stddev 1.642
progress: 65.0 s, 67775.3 tps, lat 1.005 ms stddev 10.574
progress: 70.0 s, 78462.3 tps, lat 0.815 ms stddev 0.487
progress: 75.0 s, 78793.2 tps, lat 0.812 ms stddev 0.492
progress: 80.0 s, 79057.9 tps, lat 0.809 ms stddev 0.499
progress: 85.0 s, 79395.8 tps, lat 0.806 ms stddev 0.445
progress: 90.0 s, 79234.6 tps, lat 0.807 ms stddev 0.472
progress: 95.0 s, 79688.1 tps, lat 0.803 ms stddev 0.503
progress: 100.0 s, 79519.7 tps, lat 0.804 ms stddev 0.474
progress: 105.0 s, 71389.1 tps, lat 0.848 ms stddev 1.403
progress: 110.0 s, 58309.7 tps, lat 1.156 ms stddev 9.281
progress: 115.0 s, 62800.2 tps, lat 1.019 ms stddev 1.581
progress: 120.0 s, 61198.0 tps, lat 1.045 ms stddev 1.455
transaction type: <builtin: TPC-B (sort of)>
scaling factor: 5000
query mode: prepared
number of clients: 64
number of threads: 64
duration: 120 s
number of transactions actually processed: 8535358
latency average = 0.899 ms
latency stddev = 4.714 ms
tps = 71109.300340 (including connections establishing)
tps = 71125.651468 (excluding connections establishing)

второй запуск:
root@hz:~# pgbench -U postgres -j 64 -c 64 -M prepared -T 120 -v -P 5 pgbench
starting vacuum...end.
starting vacuum pgbench_accounts...end.
progress: 5.0 s, 72677.4 tps, lat 0.875 ms stddev 2.067
progress: 10.0 s, 69826.6 tps, lat 0.916 ms stddev 1.017
progress: 15.0 s, 70417.6 tps, lat 0.908 ms stddev 1.107
progress: 20.0 s, 70908.9 tps, lat 0.902 ms stddev 1.057
progress: 25.0 s, 74519.4 tps, lat 0.858 ms stddev 0.933
progress: 30.0 s, 73033.5 tps, lat 0.876 ms stddev 1.110
progress: 35.0 s, 75679.9 tps, lat 0.845 ms stddev 0.945
progress: 40.0 s, 73460.8 tps, lat 0.871 ms stddev 1.028
progress: 45.0 s, 74932.6 tps, lat 0.854 ms stddev 0.903
progress: 50.0 s, 77001.5 tps, lat 0.831 ms stddev 1.075
progress: 55.0 s, 77390.7 tps, lat 0.826 ms stddev 1.191
progress: 60.0 s, 76810.3 tps, lat 0.833 ms stddev 1.056
progress: 65.0 s, 74802.3 tps, lat 0.855 ms stddev 1.204
progress: 70.0 s, 76949.2 tps, lat 0.831 ms stddev 1.103
progress: 75.0 s, 73885.5 tps, lat 0.866 ms stddev 1.253
progress: 80.0 s, 75769.5 tps, lat 0.844 ms stddev 1.371
progress: 85.0 s, 72456.9 tps, lat 0.883 ms stddev 1.614
progress: 90.0 s, 73065.8 tps, lat 0.875 ms stddev 1.713
progress: 95.0 s, 72008.9 tps, lat 0.888 ms stddev 2.038
progress: 100.0 s, 71447.0 tps, lat 0.895 ms stddev 1.269
progress: 105.0 s, 67414.3 tps, lat 0.949 ms stddev 2.410
progress: 110.0 s, 63471.8 tps, lat 1.007 ms stddev 1.929
progress: 115.0 s, 60871.5 tps, lat 1.052 ms stddev 2.188
progress: 120.0 s, 59715.3 tps, lat 1.071 ms stddev 2.130
transaction type: <builtin: TPC-B (sort of)>
scaling factor: 5000
query mode: prepared
number of clients: 64
number of threads: 64
duration: 120 s
number of transactions actually processed: 8642665
latency average = 0.888 ms
latency stddev = 1.457 ms
tps = 72007.886348 (including connections establishing)
tps = 72023.010271 (excluding connections establishing)
источник

АД

Антон Дорошкевич... in PostgreSQL + 1C + Linux
Спасибо
источник

LK

L K in PostgreSQL + 1C + Linux
Сергей Голод
отключён только synchronous_commit:
root@hz:~# pgbench -U postgres -j 64 -c 64 -M prepared -T 120 -v -P 5 pgbench
starting vacuum...end.
starting vacuum pgbench_accounts...end.
progress: 5.0 s, 67507.0 tps, lat 0.942 ms stddev 0.804
progress: 10.0 s, 68953.3 tps, lat 0.928 ms stddev 0.810
progress: 15.0 s, 70500.0 tps, lat 0.907 ms stddev 0.990
progress: 20.0 s, 72560.3 tps, lat 0.882 ms stddev 0.520
progress: 25.0 s, 71273.5 tps, lat 0.897 ms stddev 1.731
progress: 30.0 s, 73685.1 tps, lat 0.868 ms stddev 0.619
progress: 35.0 s, 64655.7 tps, lat 0.990 ms stddev 7.564
progress: 40.0 s, 57815.9 tps, lat 1.106 ms stddev 15.720
progress: 45.0 s, 67637.4 tps, lat 0.870 ms stddev 2.782
progress: 50.0 s, 70515.1 tps, lat 0.980 ms stddev 8.681
progress: 55.0 s, 74726.8 tps, lat 0.856 ms stddev 2.056
progress: 60.0 s, 71599.7 tps, lat 0.835 ms stddev 1.642
progress: 65.0 s, 67775.3 tps, lat 1.005 ms stddev 10.574
progress: 70.0 s, 78462.3 tps, lat 0.815 ms stddev 0.487
progress: 75.0 s, 78793.2 tps, lat 0.812 ms stddev 0.492
progress: 80.0 s, 79057.9 tps, lat 0.809 ms stddev 0.499
progress: 85.0 s, 79395.8 tps, lat 0.806 ms stddev 0.445
progress: 90.0 s, 79234.6 tps, lat 0.807 ms stddev 0.472
progress: 95.0 s, 79688.1 tps, lat 0.803 ms stddev 0.503
progress: 100.0 s, 79519.7 tps, lat 0.804 ms stddev 0.474
progress: 105.0 s, 71389.1 tps, lat 0.848 ms stddev 1.403
progress: 110.0 s, 58309.7 tps, lat 1.156 ms stddev 9.281
progress: 115.0 s, 62800.2 tps, lat 1.019 ms stddev 1.581
progress: 120.0 s, 61198.0 tps, lat 1.045 ms stddev 1.455
transaction type: <builtin: TPC-B (sort of)>
scaling factor: 5000
query mode: prepared
number of clients: 64
number of threads: 64
duration: 120 s
number of transactions actually processed: 8535358
latency average = 0.899 ms
latency stddev = 4.714 ms
tps = 71109.300340 (including connections establishing)
tps = 71125.651468 (excluding connections establishing)

второй запуск:
root@hz:~# pgbench -U postgres -j 64 -c 64 -M prepared -T 120 -v -P 5 pgbench
starting vacuum...end.
starting vacuum pgbench_accounts...end.
progress: 5.0 s, 72677.4 tps, lat 0.875 ms stddev 2.067
progress: 10.0 s, 69826.6 tps, lat 0.916 ms stddev 1.017
progress: 15.0 s, 70417.6 tps, lat 0.908 ms stddev 1.107
progress: 20.0 s, 70908.9 tps, lat 0.902 ms stddev 1.057
progress: 25.0 s, 74519.4 tps, lat 0.858 ms stddev 0.933
progress: 30.0 s, 73033.5 tps, lat 0.876 ms stddev 1.110
progress: 35.0 s, 75679.9 tps, lat 0.845 ms stddev 0.945
progress: 40.0 s, 73460.8 tps, lat 0.871 ms stddev 1.028
progress: 45.0 s, 74932.6 tps, lat 0.854 ms stddev 0.903
progress: 50.0 s, 77001.5 tps, lat 0.831 ms stddev 1.075
progress: 55.0 s, 77390.7 tps, lat 0.826 ms stddev 1.191
progress: 60.0 s, 76810.3 tps, lat 0.833 ms stddev 1.056
progress: 65.0 s, 74802.3 tps, lat 0.855 ms stddev 1.204
progress: 70.0 s, 76949.2 tps, lat 0.831 ms stddev 1.103
progress: 75.0 s, 73885.5 tps, lat 0.866 ms stddev 1.253
progress: 80.0 s, 75769.5 tps, lat 0.844 ms stddev 1.371
progress: 85.0 s, 72456.9 tps, lat 0.883 ms stddev 1.614
progress: 90.0 s, 73065.8 tps, lat 0.875 ms stddev 1.713
progress: 95.0 s, 72008.9 tps, lat 0.888 ms stddev 2.038
progress: 100.0 s, 71447.0 tps, lat 0.895 ms stddev 1.269
progress: 105.0 s, 67414.3 tps, lat 0.949 ms stddev 2.410
progress: 110.0 s, 63471.8 tps, lat 1.007 ms stddev 1.929
progress: 115.0 s, 60871.5 tps, lat 1.052 ms stddev 2.188
progress: 120.0 s, 59715.3 tps, lat 1.071 ms stddev 2.130
transaction type: <builtin: TPC-B (sort of)>
scaling factor: 5000
query mode: prepared
number of clients: 64
number of threads: 64
duration: 120 s
number of transactions actually processed: 8642665
latency average = 0.888 ms
latency stddev = 1.457 ms
tps = 72007.886348 (including connections establishing)
tps = 72023.010271 (excluding connections establishing)
Спасибо за тесты.
Какой вывод делаем?
источник

СГ

Сергей Голод... in PostgreSQL + 1C + Linux
L K
Спасибо за тесты.
Какой вывод делаем?
отключение full_page_writes и synchronous_commit увеличивают производительность при изменяющих операциях.
источник

LK

L K in PostgreSQL + 1C + Linux
А одиночный synchronous_commit ?
источник

СГ

Сергей Голод... in PostgreSQL + 1C + Linux
L K
А одиночный synchronous_commit ?
каждый из параметров влияет. Отключение обоих даёт наибольший эффект
источник

LK

L K in PostgreSQL + 1C + Linux
Спасибо, записываю.
источник

LK

L K in PostgreSQL + 1C + Linux
Вот думаю нужны ли автоматические spapshot или блажь?
источник

LK

L K in PostgreSQL + 1C + Linux
Для чего это может понадобиться в контексте pg+1c?
источник

СХ

Сергей Худояров... in PostgreSQL + 1C + Linux
подскажите, вчерашний вопрос.. А БГУ 1.0 можно завести через веб сервис?
источник

СХ

Сергей Худояров... in PostgreSQL + 1C + Linux
7 пользователей
источник

АП

Андрей Поляков... in PostgreSQL + 1C + Linux
Сергей Худояров
подскажите, вчерашний вопрос.. А БГУ 1.0 можно завести через веб сервис?
там же нет УФ - только толстый клиент
источник

СХ

Сергей Худояров... in PostgreSQL + 1C + Linux
а можно завести будет на файловом доступе?
источник

АП

Андрей Поляков... in PostgreSQL + 1C + Linux
Сергей Худояров
а можно завести будет на файловом доступе?
толстый клиент - обычный доступ локально или по сети через расшаренную папку
источник

СХ

Сергей Худояров... in PostgreSQL + 1C + Linux
да, по сети
источник