DC
(id UInt8, foo Nullable(UInt8), bar Nullable(UInt8))
. Есть первый insert в таблицу - (0, 3, NULL)
, и второй (0, NULL, 9)
. Можно ли как-то смержить обе строки по одинаковому ID, но чтобы получилась в итоге одна строка - (0, 3, 9)
?На данный момент делаю это через выборку существующей строки, беру оттуда все данные, и вставляю уже с дополненными данными в таблицу движка ReplacingMergeTree, вот только это медленно
Можно либо не вставлять в КХ пока нету всех данных, можно записывать в collapsing / replacing при приходе новых данных запоминая состояние где-то в другой базе, mysql / cassandra ..., можно выбирать использовать aggregatingMT и как-то им вычислять, но тоже не быстро это https://gist.github.com/den-crane/d03524eadbbce0bafa528101afa8f794 .