клиентские приложения которые в случайные промежутки времени отправляют данные( сложный JSON) на сервер.
запросы от клиентов приходят в виде 1 объект в случайный промежуток времени.
момент вставки в БД предполагается определять так: "когда накопилось 10 тыс. объектов - вставь в КХ".
как и с помощью чего реализуют подобную логику ? in-memory БД а-ля Redis?
Очередь, может - ивент стрим (от Кафки до Флинка - смотря какой кейс) - все зависит от объема данных, ресурсов, сценариев предобработки и того, можете ли вы эти данные потерять или нет ( Редис вот не персистентый)
с этими технологиями знаком только в общих чертах. объем в 10000 вставок может накопится в среднем за часов пусть 5-7. предобработку можно не делать , т.е. настроить на клиенте. данные терять - нет. может есть под рукой статья или материал какой то с примером как это реализовано на одной из указанных технологий? я так понимаю для КХ это типовая довольно задача или у всех данные сперва в OLTP БД падают?)
ну если так мало вставок, можно сразу в кх вставлять и не мучаться
единичными по пару кб и пофиг?)
Возьмите clickhouse-bulk
спасибо, посмотрю
Это 30 инсертов в секунду, мелочь, можете не парится
Можете взять буффер кх в добавок, если диск такой слабый итд
Обсуждают сегодня