
Alexey
12.04.2018
16:18:57
без репликации никуда

Алексей
12.04.2018
16:19:14
Ну то понятно, я вот думаю как себя словари поведут, у нас я настаиваю на словарях, и не много стремно. Чтобы не вылезло боком.

Гаврилов
12.04.2018
16:20:07
я бы вот не рискнул делать кх основной бд
слишком много заморочек

Google

Гаврилов
12.04.2018
16:20:16
с транзакциями и т.д.
нужно делать самому транзакции на уровне приложения
+ удаления нету
не подходит вообще для основной бд
ну у нас пока в 100 гб укладывается кх

Alexey
12.04.2018
16:22:02
словари из мускуля, живут в памяти прекрасно:
SELECT
type,
element_count
FROM system.dictionaries
┌─type───┬─element_count─┐
│ Hashed │ 2939 │
│ Hashed │ 966854 │
│ Hashed │ 1611475 │
│ Hashed │ 70 │
│ Hashed │ 29613 │
│ Hashed │ 61948 │
│ Hashed │ 3093 │
│ Hashed │ 3599277 │
│ Hashed │ 318636 │
│ Hashed │ 64 │
│ Hashed │ 19428 │
│ Hashed │ 15570993 │
│ Hashed │ 1028 │
│ Hashed │ 320681 │
│ Hashed │ 2745141 │
└────────┴───────────────┘

Гаврилов
12.04.2018
16:26:15
если нужна сортировка по имени
у нас в справочниках есть поле ord
в котором указана нужна сортировка
потом что постоянно просят костыль в виде "а вот этого всегда вверху"

Alexandr
12.04.2018
16:27:04
Насколько плохо пушить старые по времени данные в кх?

Гаврилов
12.04.2018
16:27:28
и вот это поле, если надо добавляем

Google

Алексей
12.04.2018
16:30:11

Alexey
12.04.2018
16:30:55

Алексей
12.04.2018
16:34:04

Гаврилов
12.04.2018
16:34:50
я вообще update и delete жду
чтобы весь кх переделать
и синхронизацию
и справочники
возможно еще микросервис на жаве заменить на lua
если получится подключится

Алексей
12.04.2018
16:36:55
я вообще update и delete жду
Я не думаю что будет нормальный update
Скорее всего будет типа, давайте перепишем блок с данными где нужно обновить.

Гаврилов
12.04.2018
16:37:09
у нас данные не так часто меняются

Sergei
12.04.2018
16:37:31

Гаврилов
12.04.2018
16:37:34
но иногда надо

Алексей
12.04.2018
16:37:40

Гаврилов
12.04.2018
16:37:45
и делит очень нужен
даже пусть с переписыванием всего блока
+ чтобы при обновлении версии таблицу не дропать
а обновлять незаметно для пользователя
пусть оно там в фоне мержится

Алексей
12.04.2018
16:38:37

Google

Гаврилов
12.04.2018
16:38:47
иногда надо удалить целиком без остатка
пытались сделать replacedmergetable
вообще не фонтан

Alexey
12.04.2018
16:40:08
А мне нравится, куча таблиц, сразу после инсерта в скрипте делаю optimize table partition final, пока нареканий нет

Гаврилов
12.04.2018
16:40:18
а мне не помогает
вот сегодня
100к записей
делаю optimize table partition final
0 толку
всмысле 100к лишних записей

Алексей
12.04.2018
16:41:22
Ясно, а перезапись партиций. Типа если надо удалить, взять нужные данные из партиции, удалить и вставить снова

Гаврилов
12.04.2018
16:41:38
я хотел уже так делать
но это пока не критично
и можно дождатся update/delete

Алексей
12.04.2018
16:41:58
Ясно

Гаврилов
12.04.2018
16:42:21
пока данные за 20 минут переливаются
из постгреса в кх
можно дропать

Alexey
12.04.2018
16:42:27
Странно, у меня всегда хлопается одним запросом до последней записи, например в таблице где партиции по дню, ~2 млн строк за день, перезаливаю раз в час, хлопается сразу же

Гаврилов
12.04.2018
16:42:45
у меня партиции по стандартному ключу

Google

Алексей
12.04.2018
16:42:49
Главное чтобы update/delete не влияли на скорость выборки

Гаврилов
12.04.2018
16:42:52
может если сделать по 1 дню, то лучше станет
мы готовы смирится с падением скорости на какойто промежут времени
когда выполняется update/delete
днем у нас мало записей приходит
все в основном ночью

Alexey
12.04.2018
16:44:13
У вас версия кх какая

Гаврилов
12.04.2018
16:44:26
вчера обновлялся
думал, мб баг где
а нет
не помогло

Alexey
12.04.2018
16:44:55
У меня 343, может не надо обновляться)))

Гаврилов
12.04.2018
16:45:00
и воспроизводится еще както странно
не всегда

Denis
12.04.2018
16:45:30
делаю optimize table partition final
может парты нельзя смержить потому что итоговый размер очень большой будет?
или дубликаты уже лежат в одном парте, нечего мержить (это пофикшено имхо) (если залить дубликаты одним инсертом, то они не схлопнуться)

Alexey
12.04.2018
16:45:42
У вас точно данные с одним ключом не разьезжаются по шардам?

Гаврилов
12.04.2018
16:45:51
1 машина
места свободного чуть меньше чем сама бд занимает

Alexey
12.04.2018
16:46:22
Опа
Может в этом дело

Google

Гаврилов
12.04.2018
16:46:45
но партиции то не больше гигобайта

Denis
12.04.2018
16:47:03

Alexey
12.04.2018
16:47:32

Гаврилов
12.04.2018
16:47:36
на прошлой неделе у меня вообще дублей было столькоже, столько настоящих данных
просто х2
я изначально надеялся запихивать вообще все
при обновлении
и пусть оно там удалит старое
но чтото не пошло

Alexey
12.04.2018
16:48:26
Селекты с final убирают дубли, с ним медленно выходит?

Гаврилов
12.04.2018
16:48:34
медленно
почти в 5 раз

Alexey
12.04.2018
16:49:01
Ну да, у меня также

Гаврилов
12.04.2018
16:49:40
надо попробовать ключ по дням сделать
может легче станет

Alexey
12.04.2018
16:50:28
У меня когда своб.места остаётся мало, кх перестает мержить

Гаврилов
12.04.2018
16:50:46
ну я не думаю что ему 90 гб для мержа мало
если реально так, то можно еще сотку выпросить
правда возмущаются, когда ссд просишь

Denis
12.04.2018
16:53:04
вы проверьте есть ли вообще что мержить
select * from system.parts where table =
и параметр max_bytes_to_merge_at_max_space_in_pool

Гаврилов
12.04.2018
16:53:49
ну я проверяю дубли сравнивая результат между final и не final запросом

Denis
12.04.2018
16:54:53
дубликаты илиминируются при мерже партиций (в старых версиях КХ)