Движок таблицы GenerateRandom создает случайные данные по заданной схеме таблицы.
Примеры использования:
- Используйте в тестах для заполнения большой таблицы воспроизводимыми данными.
- Генерируйте случайные входные данные для фаззинг-тестов.
Использование в сервере ClickHouse
ENGINE = GenerateRandom([random_seed [,max_string_length [,max_array_length]]])Параметры max_array_length и max_string_length задают максимальную длину всех
массивов, столбцов map и строк соответственно в сгенерированных данных.
Движок таблицы Generate поддерживает только запросы SELECT.
Он поддерживает все DataTypes, которые можно хранить в таблице, кроме AggregateFunction.
Пример
1. Создайте таблицу generate_engine_table:
CREATE TABLE generate_engine_table (name String, value UInt32) ENGINE = GenerateRandom(1, 5, 3)2. Выполните запрос к данным:
SELECT * FROM generate_engine_table LIMIT 3┌─name─┬──────value─┐
│ c4xJ │ 1412771199 │
│ r │ 1791099446 │
│ 7#$ │ 124312908 │
└──────┴────────────┘Детали реализации
- Не поддерживаются:
ALTERSELECT ... SAMPLEINSERT- Индексы
- Репликация