Обсуждаем ClickHouse
вообще никакой.
когда используются table functions типа postgresql(), url(), remote() под капотом (в контексте запроса) создается временная таблица Engine = postgresql, запрос выполняется против нее.
не ну так то да, а из клика как-то можешь вызвать?
Читать полностью…писать http application для доступа в оракл, у меня типа так, написан очень простой http сервис который можно запросить http://gate/?table=xxx&col=a,b,c&where=a=5, он ходит в mysql и возвращает результат select a,b,c from xxx where a=5 в виде tsv
Читать полностью…1. создаем clickhouse-odbс-bridge чтобы harmful библиотеки работали в отдельном процессе и не могли уронить КХ процесс
2. запрещаем harmful LD_LIBRARY_PATH/LD_LIBRARY_PRELOAD для всего включая clickhouse-odbс-bridge
3. total win - нихрена не работает.
https://github.com/ClickHouse/ClickHouse/issues?q=is%3Aissue%20state%3Aclosed%20instantclient
Читать полностью…У меня партицирование по месяца, и основные куски данных которые небыли перенесены, это конец месяца. Очень похоже на что-то с партициями. А как Бобёр может влиять на это? добавлять к SQL?
Читать полностью…sudo systemctl show clickhouse-server | grep Environment
Environment=CLICKHOUSE_WATCHDOG_NO_FORWARD=1 LD_LIBRARY_PATH=/opt/oracle/instantclient-basic_23_8:/opt/oracle/instantclient-odbc_23_8
EnvironmentFiles=/etc/default/clickhouse-server (ignore_errors=yes)
EnvironmentFiles=/etc/default/clickhouse (ignore_errors=yes)
SetLoginEnvironment=no
Всем привет
помогите пожалуйста,
создаю таблицу - дает ок
CREATE TABLE oracle_remote
(
`column1` UInt64,
`column2` String,
`column3` String,
`column4` UInt32
)
ENGINE = ODBC('Driver=/opt/oracle/instantclient-odbc_23_8/libsqora.so.23.1;ServerName=//host/service_name;Uid=user;Pwd=pwd', 'TESTUSER', 'EMPLOYEES')
Code: 302. DB::Exception: Received from localhost:9000. DB::Exception: Child process was exited with return code 88. (CHILD_WAS_NOT_EXITED_NORMALLY)
Привет! Подскажите, пожалуйста, работает ли predicate pushdown для Parquet-файлов в ClickHouse(25.3)?
У меня есть Parquet с ~500 млн записей. Пробую фильтровать по условию field > 1000, но при этом нагрузка на сеть остаётся такой же, как и при полном сканировании (без фильтра). Даже при точном фильтре (field = 55) картина та же.
Возможно, я что-то упускаю?
Вот статья, на которую ориентировался:
https://clickhouse.com/blog/clickhouse-and-parquet-a-foundation-for-fast-lakehouse-analytics
а кстати КХ умеет клонировать таблицы хардлинками
CREATE TABLE xxx_c CLONE AS xxx;
https://github.com/ClickHouse/ClickHouse/issues/65015
в более новых версиях замену серверного серта на лету добавляли, но там осталась проблема кажется с клиентскими (когда КХ ssl клиент)
Читать полностью…КХ это один бинарник который прикидывается разными приложениями, вопрос не имеет смысла
Читать полностью…Всем привет! А как правильно делать бэкап таблиц? Создание таблицы рядом с такой же структурной и инсерт запрос из старой в новую у меня не перенёс все данные, хотя запрос выполнился.
Читать полностью…Можно ли стандартным механизмом репликации переехать с Ordinary на Atomic ?
Переезжаем в другой ДЦ (не будет ли каких то отвалов, из-за разных принципов работы и хранения движков)
всем привет! подскажите пожалуйста, какая разница при вставке в mergetree таблицу между селектом из postgresql engine таблицы и использованием postgresql() функции
Читать полностью…Сохраняем сообщение строкой и потом парсим, у нас еще старый клик без поддержки json
Читать полностью…жесть какая-та если честно
Не понимаю что делать
вот тут https://github.com/ClickHouse/ClickHouse/issues/41266#issuecomment-1248975103
плюс https://github.com/ClickHouse/ClickHouse/issues/64041
И как конец месяца может быть связан с партицией по месяцу?
Бобер не корректно выполняет insert as select
кх очень старается чтобы не работал LD_LIBRARY_PATH
Читать полностью…>через isql с хоста проверял подключение идет нормально
isql использует переменные окружения из текущего env
чтобы эти переменные окружения передать systemd clickhouse-server.service надо читать гитхаб, и копать как это сделать имеенно для instantclient, потому что КХ параноик и не разрешает LD_PRELOAD.
в гитхаб есть ишью где я показывал пример как скопировать все оракловые библиотеки в каталог КХ, чтобы работало без LD_PRELOAD.
вы путаете: pushdown, индексы, prewhere
predicate pushdown это передача предиката ниже, кому КХ будет передавать предикат? Кто у вас позади КХ будет фильтровать?
теоритически если есть minmax индекс у field, то КХ может читать не все роугруппы для field > 1000
prewhere не сделан, КХ не умеет вычитать одну колонку из parquet , отфильтровать роугруппы для field > 1000 и прочитать отфильтрованные роугруппы для остальных колонок, есть PR который все это умеет (включая такую филтрацию для блумфильтра по field), но там еще долгииий путь.
Я не настаиваю. Я просто привёл аналогию случаю))
Читать полностью…Разобраться почему не перенес
Например, не делать этого в бобре
Можно. Нет никакой проблемы что движок базы разный у реплик или даже шардов.
Надо только помнить об этом, а то получается странно - запускаешь exchange table a and b on cluster x. И команда падает на 19 нодах и успешно завершается на 21 и сидишь чешешь репу.
но дичь конечно, он не перечиывает серт при смене конфига, и каждый апдейт серта = рестарт кх
UPD, если весь блок снести и добавить - теперь перечитывает, возможно из-за cacheSessions в кеш попадал