Postgres в памяти стоит попробовать? - PullRequest
0 голосов
/ 04 февраля 2020

В целях тестирования стало необходимым вводить данные в Postgres как можно быстрее. Мы говорим

  1. Ruby в приложении Rails
  2. Бинарный файл размером 8 ГБ psql Дамп помещается на RAMdisk
  3. Работает на виртуальной машине на основе Ubuntu 18 с 32 гигабайт RAM

Цель состоит в том, чтобы создать очень недолговечный экземпляр приложения для тестирования, поэтому безопасность и постоянство данных не имеет значения . Приоритетом # 1 является вставка дампа в postgres и выполнение любых миграций данных как можно быстрее.

Первая идея, которую я получаю, это поместить Postgres data-folder в RAMdisk. Теоретически, это должно сделать ввод-вывод намного быстрее, чем при использовании SSD.

Пожалуйста, поделитесь, если у вас есть опыт работы с postgres в памяти.

PS Я прочитал это: Оптимизация PostgreSQL для быстрого тестирования ; и все еще пытаюсь получить преимущество с этой идеей RAMdisk.

Ответы [ 2 ]

1 голос
/ 05 февраля 2020

Вы не получите столько пользы от RAM-диска, как вы думаете. Хотя, в зависимости от того, сколько вам нужно повышения производительности, оно может быть достаточно хорошим и, безусловно, простым решением.

Этот технический документ должен быть информативным: https://www.mcobject.com/december05-2001/ Этот документ, конечно, написан нами (McObject) и использует eXtremeDB для иллюстрации своих точек, но точки не зависят от поставщика ( т.е. почему RAMdisk уступает любой истинной системе баз данных в памяти).

1 голос
/ 04 февраля 2020

Да, конечно, это будет работать.

Вы можете еще больше ускорить обработку, используя UNLOGGED таблицы повсюду.

...