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

Всем привет, подскажите, пожалуйста, с чем может быть связана проблема есть

3 шарда по 2 реплики, внутри каждого шарда replicated табличка,
но есть проблема что в один шард в разы больше пишется данных, хотя запись происходит в distributed табличку следующей структуры:
CREATE TABLE relap_logs.adroom_log
(
`creative_id` Int64,
`for_url_id` UInt32,
`position` UInt16,
`uid` FixedString(8),
`front_uid` FixedString(8),
`is_new_uid` UInt8,
`rec_id` FixedString(19),
`geo_code` String,
`country_code` FixedString(2),
`region_code` FixedString(3),
`city_name` String,
`device_type` Enum8('mac' = 1, 'pc' = 2, 'other_desktop' = 3, 'iphone' = 4, 'android_phone' = 5, 'ipad' = 6, 'android_tablet' = 7, 'other_mobile' = 8) DEFAULT CAST('other_desktop', 'Enum8(\'mac\' = 1, \'pc\' = 2, \'other_desktop\' = 3, \'iphone\' = 4, \'android_phone\' = 5, \'ipad\' = 6, \'android_tablet\' = 7, \'other_mobile\' = 8)'),
`alg_id` UInt16,
`adroom_id` UInt32,
`is_reload` UInt8,
`is_valid_session` UInt8,
`ctime` DateTime,
`event_date` Date,
`domain_id` UInt32,
`widget_id` UInt32,
`event_type` Enum8('show' = 1, 'view' = 2, 'click' = 3),
`adroom_type` Enum8('local' = 1, 'net' = 2, 'local2' = 3),
`payfor` Enum8('cpc' = 1, 'cpm' = 2, 'cpv' = 3, 'promo' = 4),
`relap_revenue` Float32,
`publisher_revenue` Float32,
`brand_safety_categories` Array(String)
)
ENGINE = Distributed('relap_cluster_1', 'relap_logs', 'adroom_log_replicated', adroom_id)
может кто-то подскажет, по какому принципу он распехивает по шардам данные основываясь на ключе шардирования?
Или где я мог ошибиться?(

4 ответов

8 просмотров

остаток от деления adroom_id на число шардов, перекосы по данным лекго могут в таком случае

Sergey-Skvorcov Автор вопроса
Konstantin Ilchenko
остаток от деления adroom_id на число шардов, пере...

блин, а вот это оч странно, посмотрел у меня там 83501 уникальных значений adroom_id (по которому шардируется)

Sergey Skvorcov
блин, а вот это оч странно, посмотрел у меня там 8...

а какая разница сколько уникальных значений? тут важно количество записей

Sergey-Skvorcov Автор вопроса
Konstantin Ilchenko
а какая разница сколько уникальных значений? тут в...

да, вы правы, спасибо! т.е. по факту похоже что я где-то много пишу с одним и тем-же значением adroom_id пойду смотреть

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта