184 похожих чатов

Добрый день, Можно ли добавить новую запись, но чтобы обновились только

определенные столбцы, а остальные подтянулись из предыдущего?
Использую ReplacingMergeTree

Как пример:
event_1(uuid, column_1, column_2, column_3, column_4, column_5)
event_2(uuid, column_4, column_5)

6 ответов

12 просмотров

нет. Можно через aggregatingMergeTree если табличка крохотная

Vitaly- Автор вопроса
Denny [Altinity]
нет. Можно через aggregatingMergeTree если таблич...

Не подскажите как можно решить, у меня только два варианта - Перед добавлением получать все нужные данные(select …) и потом батчами вставлять - Разносить на разные таблицы

Vitaly
Не подскажите как можно решить, у меня только два ...

я НЕ знаю, я храню последний стетй в кластере кассандры, который в 5 раз больше кластера КХ

можно, если использовать AggregatingMergeTree и колонки SimpleAggregateFunction(anyLast, Nullable(String)) если использовать не Nullable(String), а просто String, то тогда будет перезатираться пустой строкой, так что для тех колонок, которые могут отсутствовать Nullable обязателен. но согласно документации "Почти всегда использование Nullable снижает производительность, учитывайте это при проектировании своих баз." https://clickhouse.tech/docs/ru/sql-reference/data-types/nullable/ более того если вставляется 1 колонка из 200, то нагрузка на диске как буд-то вы вставляете все 200. возможно отдельная табличка: event_custom_properties(uuid, column_name, column_value) engine= ReplacingMergeTree будет оптимальнее. есть желание воспользоваться Nested(column_name, column_value) вместо отдельной таблички, но пока хз как сделать, чтобы мёржились значения по соответствующим ключам.

Vitaly- Автор вопроса
Vladimir Goncharov
можно, если использовать AggregatingMergeTree и ко...

Спасибо огромное, буду пробовать разные варианты, Nullable как то совсем не хочется делать

Похожие вопросы

Обсуждают сегодня

Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
А чем вам питонисты не угодили?😂
.
79
Всем привет. Поделитесь, пожалуйста, опытом. Есть форма, на которой имеется dbgrid и кнопки: добавить, редактировать, удалить. Если нет записей в dbgrid, то кнопки редактирова...
Евгений
4
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
Вот смотрите у меня есть два стрима сейчас fs, cs: TStream; fs := TFileStream.Create('filename'); cs := TCompressionStream.Create(compression_level, fs); Я хочу сделать так: ...
notme
5
type TExtensions<GExtender>=class function GetExtension<GEntityExtenderType>:GEntityExtenderType; end; function TExtensions<GExtender>.GetExtension<GEntityExtenderType...
zamtmn
8
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Карта сайта