Обсуждаем ClickHouse
Всем привет
помогите пожалуйста,
создаю таблицу - дает ок
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 ?
Переезжаем в другой ДЦ (не будет ли каких то отвалов, из-за разных принципов работы и хранения движков)
Друзья подскажите пожалуйста, сейчас clickhouse local имеет версию 25.8.1.1099
А новые фичи появились в clickhouse 25.7 , когда примерно заедут в локал? спасибо
P.S. Release v25.6.5.41-stable (видимо clickhouse 25.7 просто не зашла еще )
Latest
yesterday
я скачал ca от issuer, sudo verify OK, ошибка та же(но он даже не пытается файл читать судя по strace, только stat делает, сейчас на стенде хочу проверить, может после рестарта подцепит). Уже большое желание появилось выставить nginx перед кх, надо проверить только как native за stream жить будет
Читать полностью…Думаю что не заморачивались бы добавлять, если была бы "взаимозаменяемая".
Читать полностью…в 24.2 добавлена функция mergeTreeIndex. В вашей версии нет такой.
Читать полностью…Проверка на сервере проходит?
TRUSTSTORE=/etc/clickhouse-server/certs/root-ca.crtЧитать полностью…
SSL_NODE_CERT=/etc/clickhouse-server/certs/wildcard.domain.my.crt
sudo -u clickhouse openssl verify -verbose -CAfile "${TRUSTSTORE}" "${SSL_NODE_CERT}"
<openSSL>
<server>
<!-- <loadDefaultCAFile>true</loadDefaultCAFile> -->
<caConfig>/etc/clickhouse-server/certs/root-ca.crt</caConfig>
<certificateFile>/etc/clickhouse-server/certs/wildcard.domain.my.crt</certificateFile>
<privateKeyFile>/etc/clickhouse-server/certs/wildcard.domain.my.key</privateKeyFile>
<dhParamsFile>/etc/ssl/clickhouse/dhparams.pem</dhParamsFile>
</server>
</openSSL>
root-ca.crt
у вас должны быть вся цепочка - root, intermediate(s).wildcard.domain.my.crt
- только серт хоста.Коллеги, всем доброй ночи!
Имеется задача, ограничить тяжелые запросы от УЗ по нагрузке на CPU.
В документации подобного не нашел. Как сделать, чтобы при достижении, условно, потребления CPU одним запросом от конкретного пользователя, он получал эксепшн? Как-то это реализовать средствами ClickHouse возможно? max_threads - не очень подходит, видимо.
По ссылке инфы не нашел: https://clickhouse.com/docs/operations/settings/query-complexity?spm=a2ty_o01.29997173.0.0.6522c921Xl7nZ4#max_cpu_usage
Перенести метаданные таблицы в другое место и стартануть
Читать полностью…вы путаете: 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 в кеш попадал
Тоже верно!!. С другой стороны есть функция nvl, а есть coalesce ))
Читать полностью…Ммм. Понятно. Благодарю!! А взаимозаменяемой нет случайно?? Чтобы таки посмотреть?
Читать полностью…Коллеги, день добрый. При попытке посмотреть индексы получаю ошибку. Не понимаю.
SELECT * FROM mergeTreeIndex(currentDatabase(), severity, with_marks = true);
SQL Error [22000]: Code: 46. DB::Exception: Unknown table function mergeTreeIndex: or incorrect parameterized view. (UNKNOWN_FUNCTION) (version 23.8.2.7)
да, тоже самое, потом заменил на loadDefaultCAFile true, судя по доке это более правильный путь
ща на стенде поднимаю тоже самое и буду дебажить
не тот что в последний раз ( без /rush )
Читать полностью…коллеги добрый день, подскажите плз, есть ли флаг который позволяет при старте ch пропустить коррапченные таблицы? табличка с движком Iceberg не аттачится при старте, из за чего БД не стартует, хотелось бы стартовать без нее и потом разобраться уже с ней
Читать полностью…