ClickBench нагрузка
Нагрузка базируется на данных и запросах из репозитория https://github.com/ClickHouse/ClickBench, а запросы и схема таблицы адаптированы под YDB.
Тест генерирует типичную рабочую нагрузку в следующих областях: анализ потока кликов и трафика, веб-аналитика, машинно-генерируемые данные, структурированные журналы и данные о событиях. Он охватывает типичные запросы в аналитике и информационных панелях реального времени.
Набор данных для бенчмарка был получен на основе фактической записи трафика одной из крупнейших в мире платформ веб-аналитики. Он анонимизирован, при этом сохраняет все основные распределения данных. Набор запросов был импровизирован, чтобы отразить реалистичные рабочие нагрузки, в то время как запросы не исходят непосредственно из производства.
Инициализация нагрузочного теста
Перед запуском теста создайте таблицу:
ydb workload clickbench init
Посмотрите описание команды для запуска нагрузки:
ydb workload clickbench init --help
Доступные параметры
Имя параметра | Описание параметра |
---|---|
--table <значение> |
Имя таблицы. Значение по умолчанию clickbench/hits . |
--store <значение> |
Тип хранилища таблиц. Возможные значения: row , column . Значение по умолчанию row . |
Загрузка данных в таблицу
Загрузите данные в таблицу. Для этого скачайте и распакуйте архив с данными, затем загрузите данные в таблицу:
wget https://datasets.clickhouse.com/hits_compatible/hits.csv.gz
gzip -d hits.csv.gz
ydb import file csv --path clickbench/hits --input-file hits.csv
Запуск нагрузочного теста
Запустите нагрузку:
ydb workload clickbench run
В течение теста на экран выводится статистика по нагрузке для каждого запроса.
Посмотрите описание команды для запуска нагрузки:
ydb workload clickbench run --help
Общие параметры для всех видов нагрузки
Имя параметра | Описание параметра |
---|---|
--output <значение> |
Имя файла, в котором будут сохранены результаты выполнения запросов. Значение по умолчанию results.out . |
--iterations <значение> |
Количество выполнений каждого из запросов нагрузки, создающих нагрузку. Значение по умолчанию: 1 . |
--json |
Имя файла, в котором будет сохранена статистика выполнения запросов в формате json . По умолчанию файл не сохраняется. |
--ministat |
Имя файла, в котором будет сохранена статистика выполнения запросов в формате ministat . По умолчанию файл не сохраняется. |
--query-settings |
Настройки выполнения запроса. По умолчанию не указывается. |
--ext-queries-file |
Имя файла, в котором можно указать внешние запросы для выполнения нагрузки. По умолчанию файл не требуется. |
--ext-query |
Строка с внешними запросами для выполнения нагрузки. Значение по умолчанию отсутствует. |
--table |
Имя таблицы. Значение по умолчанию: clickbench/hits . |
--include |
Номера или отрезки номеров запросов, которые нужно выполнить в рамках нагрузки. По умолчанию выполняются все запросы. Указываются через запятую, например 1,2,4-6 . |
--exclude |
Номера или отрезки номеров запросов, которые нужно исключить в рамках нагрузки. По умолчанию выполняются все запросы. Указываются через запятую, например 1,2,4-6 . |