Я хочу измерить производительность и масштабируемость моего приложения БД. Я ищу инструмент, который позволил бы мне запускать множество операторов SQL для моей БД, принимая файл БД и сценария (SQL) в качестве аргументов (+ необходимые сведения, например, имя хоста, порт, логин ...).
В идеале он должен позволять мне контролировать параметры, такие как количество моделируемых клиентов, продолжительность теста, рандомизировать переменные или выбирать из списка (например, SELECT FROM ... WHERE value = @var, где var читается из командной строки или рандомизируется за исполнение). Я бы хотел, чтобы результаты теста были сохранены в виде файла CSV или XML, который я могу проанализировать и построить их. И, конечно же, с точки зрения цен, я предпочитаю «бесплатно» или «демо»: -)
Удивительно (по крайней мере для меня), хотя существует множество таких инструментов для нагрузочного тестирования веб-приложений, я не смог найти ни одного для тестирования БД !? Те, которые я видел, такие как pgbench, используют встроенную БД на основе некоторого сценария TPC, поэтому они помогают проверить конфигурацию СУБД и H / W, но я не могу проверить МОЮ БД! Есть предложения?
В частности, я использую Postgres 8.3 в Linux, хотя я мог бы использовать любой универсальный инструмент DB, соответствующий этим требованиям. H / W имеет 32 ГБ оперативной памяти, а размер основных таблиц и индексов составляет ~ 120 ГБ. Следовательно, может быть соотношение времени отклика 1:10 между холодным и теплым кэшем (ввод / вывод против оперативной памяти). На самом деле я ожидаю, что запросы будут распределяться равномерно, поэтому для меня важно проверить запросы к различным частям БД.
Не стесняйтесь также связаться со мной по электронной почте.
Спасибо!
- Шауль Дар (info@shauldar.com)