Как вставить значение в UUID-поле в Cassandra

Возникла необходимость заполнить таблицу двумя миллионами тестовых записей. Одно из полей имеет тип TIMEUUID. Мне было необходимо вставить случайные значения в это поле, в зависимости от сгенерированного времени. Скажу, что это была таблица логов и к ней писался пейджинатор (которого, как известно, для Кассандры не существует).

Устанавливаем и подключаем gem simple_uuid.

Сам процесс создания выглядит очень просто:

time = Time.now-(70000*rand())
uuid = SimpleUUID::UUID.new(time)
$db.execute("INSERT INTO Logs (id, timestamp, message) VALUES (?, ?, ?)", uuid, time, "Запись лога #{counter}")

В первой строке мы создаём случайный таймстамп.
Затем генерируем случайный UUID на основании этой метки. И вставляем в базу 🙂

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *