Подскажите, пожалуйста, есть ли способ добавить материализованный вычисляемый выражением столбец в существующую таблицу? И какие могут быть подводные? Например, ch сам [не] вычислит выражение для всех существующих строк или пропустит все те строчки, которые будут вставлены, пока идет процесс актуализации? ALTER TABLE в документации ничего не пишет про это
нативный порт у вас без ssl? просто я поставил перед кликхаусом tcp прокси для терминации ssl. сам кликхаус не перечитывает сертификат когда они обновляются, приходилось его перезапускать раз в три месяца
Не, SSL это лишняя головная боль, стараемся без этого изврата работать :) Тем более, что вставляют в базу не пользователи, а наши сервисы в изолированной сети.
Подскажите, пожалуйста, есть ли способ добавить материализованный вычисляемый выражением столбец в существующую таблицу? И какие могут быть подводные? Например, ch сам [не] вычислит выражение для всех существующих строк или пропустит все те строчки, которые будут вставлены, пока идет процесс актуализации? ALTER TABLE в документации ничего не пишет про это
добавить столбец это легкая операция, кх не будет хранить его для старых значений, он на лету будет вычислять
Правильно понимаю, что сделать ALTER из Enum8 в LowCardinality на 1ТБ это плохая идея? Т.е. выход только создавать колонку рядом с новым типом, постепенно наполняя ее старыми данными, или совсем новую таблицу?
Правильно понимаю, что сделать ALTER из Enum8 в LowCardinality на 1ТБ это плохая идея? Т.е. выход только создавать колонку рядом с новым типом, постепенно наполняя ее старыми данными, или совсем новую таблицу?
я бы создал новую колонку и туда инсерттил из енума. это не будет блочить новые инсерты - сразу вставляйте в лоукардиналити столбец. а в фоне можно заполнить старые данные. ну и удалить потом ненужный енум не проблема
я бы создал новую колонку и туда инсерттил из енума. это не будет блочить новые инсерты - сразу вставляйте в лоукардиналити столбец. а в фоне можно заполнить старые данные. ну и удалить потом ненужный енум не проблема
Правильно понимаю, что сделать ALTER из Enum8 в LowCardinality на 1ТБ это плохая идея? Т.е. выход только создавать колонку рядом с новым типом, постепенно наполняя ее старыми данными, или совсем новую таблицу?
лучше новую с дефолтом из старого, тогда и наполнять не надо. КХ автоматом будет использовать выражение default для старых данных
добрый день. кто-нибудь может подсказать где почитать более детально про INDEX в кх? документация весьма скудно описывает типы индексов, как выбирать их GRANULARITY тоже не вполне понятно. спасибо
Всем привет, кто-нибудь пробовал уже wide+wal использовать как замену Buffer таблицам? Можно ли получить задержку на получение новых (только записанных) данных до 100мс и не бояться резкого роста партов?
добрый день. кто-нибудь может подсказать где почитать более детально про INDEX в кх? документация весьма скудно описывает типы индексов, как выбирать их GRANULARITY тоже не вполне понятно. спасибо
в КХ есть только кластерный индекс, и скип индексы (с очень ограниченным пространством применения).