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

Тэк.. наверно я не понимаю шардинг.. я думал, машины локально

обрабатывают запросы, а на инициаторе мержатся результаты? Или они просто читают диск и льют туда всё прочитанное?

13 ответов

15 просмотров
Philipp-Saveliev Автор вопроса

как мап-редус, типа

это если у вас запрос select sum() from table;

вам надо еще подумать, шарды делают группировку, но если ключ шардирования не совпадает, то инициатору надо финально группировать уже весь датасет, со всех шардов (по умолчанию инициатор делает группировку всегда)

а если что то посложнее, то это не так. многоуровневые запросы после 0 уровня работают на инициаторе, темп таблицы если есть копируются на все шарды. ещё есть всякие GLOBAL JOIN (если шардирование не совпадает)... и много вариантов.

Philipp Saveliev
как мап-редус, типа

Ну если вы захотите посчитать количество уников за день. То просто посчитать отдельно две цифры, а потом их сложить не прокатит, если шардирование не исключает возможность что одни и теже юзеры попадают на оазные сервера.

Philipp-Saveliev Автор вопроса
【D】【J】
это если у вас запрос select sum() from table;

запрос, допустим, такой: SELECT some_name, count(distinct(uuid)) FROM qwe WHERE ev_time >= '2021-09-01 00:00:00' AND ev_time < '2021-10-01 00:00:00' AND domain = 'exmaple.com' GROUP BY some_name

Philipp Saveliev
запрос, допустим, такой: SELECT some_name, count(d...

не надо вам count(distinct(uuid)), откройте для себя приблизительные вычисления уже. это же надо все uuid передать на инициатор, без группировки, вы тупо в сеть упретесь

Philipp Saveliev
запрос, допустим, такой: SELECT some_name, count(d...

с этим проблем не особо, но state count(distinct(uuid)) будет ехать с шардов на сервер. и он будет дальше аггрегироваться там. если точность не важна можно использовать неточный uniq*

Philipp Saveliev
запрос, допустим, такой: SELECT some_name, count(d...

если точность важна и уникальных много - то метла не взлетит...

【D】【J】
если точность важна и уникальных много - то метла ...

да никому не нужна такая точность, это бред в бигдате

Denny [Altinity]
да никому не нужна такая точность, это бред в бигд...

ну точность может быть нужна, но масштабы там будут в миллионах максимум, поэтому они спокойно саггрегируются

Philipp Saveliev
запрос, допустим, такой: SELECT some_name, count(d...

собственно в вашем случае поэтому именно важно шардить правильно, например по uuid и тогда вообще можно сложить результаты с шардов. optimize_distributed_group_by_sharding_key

【D】【J】
собственно в вашем случае поэтому именно важно шар...

да все так + еще есть более дубовый --distributed_group_by_no_merge arg If 1, Do not merge aggregation states from different servers for distributed queries (shards will process query up to the Complete stage, initiator just proxies the data from the shards).

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

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

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
как быть с принтером? такой подход прокатит?
zamtmn
12
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Я не понимаю, это троллинг или что? Швабрика поддерживают, который буквально пишет на ассемблере взаимодействия с винапи. Я это ещё написал загрузчик и хоть что-то изучаю в о...
Shadow Akira
6
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
Карта сайта