Разработка, проектирование и производство IT оборудования

Тестирование производительности и масштабируемости параллельной СУБД Postgree XC на кластере серверов Rikor R314

Используемое оборудование: Сервер Rikor R314


Зависимость скорости подсчета строк от размера кластера


Test 5 1

Скорость подсчёта строк в БД разного объёма. Скорость равна количеству операций суммирования в секунду. Данный тип запросов является одним из самых тяжёлых для многих СУБД, поскольку требует полного перебора всех строк.

Из графиков видно, что для небольших баз данных, с таблицами до 10 000 записей, увеличение кластера не приводит к увеличению производительности. Для таблиц около 100 000 записей рост производительности останавливается, если узлов больше 4. Для таблиц от 1 000 000 записей и больше наблюдается линейный рост производительности без признаков затухания при данном количестве узлов.

Таким образом, максимальный эффект от масштабирования кластера достигается на больших базах данных в задачах, связанных с полным или частичным перебором или агрегированием данных.

К таким задачам относятся, в первую очередь, аналитические расчёты в бухгалтерии (сведение годового баланса для больших предприятий) и статистике (задачи связанные с многомерной агрегацией и анализом многомерных кубов данных). Знакомый пример - вычисление рейтинга телепередач по сумме периодов телесмотрения на каждой приставке.

Зависимость скорости подсчета строк от размера кластера


Test 5 2

Суммарное время выполнения запроса COUNT в базах данных разного объёма и при разном количестве узлов в кластере.

Из графика видно, что чем больше база данных тем больше эффект от масштабирования кластера по абсолютной величине. Максимальный прирост производительности наблюдается при переходе от 1 к 2 узлам. При дальнейшем увеличении кластера время выполнения экспоненциально уменьшается.

Увеличение количества узлов позволяет добиться быстрого, отклика в реальном времени даже на очень больших базах данных. Например, в данном запросе, в БД 90 000 000, время ожидания снижется с 2 минут, на 1 узле, до 13 секунд на 6 узлах.

Время выполнения запроса COUNT — подсчет строк в БД разного объема


Test 5 3

Суммарное время выполнения запроса COUNT в базах данных разного объёма и при разном количестве узлов в кластере, отображённое в логарифмическом масштабе по вертикальной оси.

Из графиков видно, что для больших баз данных (от 1Млн.зап. и более), независимо от объёма, сохраняется единая зависимость производительности от количества узлов. Другими словами, относительное приращение производительности, выраженное в долях или процентах, для больших баз данных остаётся постоянным. Однако, по абсолютной величине время выполнения данного запроса пропорционально размеру базы.

7