Обсуждаем ClickHouse
а есть какой нибудь ReplicationQueueLog? :)
чтобы понять сколько сети потрачено на репликацию?
A NetworkSendBytes включает в себя возврат клиенту?
Читать полностью…для distributed Instert по идее можно прикинуть так
SELECT event_date, hostName() h, formatReadableSize(sum(ProfileEvents['NetworkReceiveBytes'])) AS wb FROM clusterAllReplicas('cluster-name',system.query_log) WHERE event_date=today() AND initial_query_id!=query_id AND query_kind='Insert' GROUP BY ALL
SELECT event_date, hostName() h, formatReadableSize(sum(ProfileEvents['NetworkSendBytes'])) AS rbЧитать полностью…
WHERE event_date=today() AND Initial_query_id!=query_id AND query_kind='Select' GROUP BY ALL
можно
http_connection_timeout
http_send_timeout
http_receive_timeout
эти 3 - скорее всего те, которые вы хотите, все доступные смотрите запросом
SELECT nameЧитать полностью…
FROM system.settings
WHERE name ILIKE '%timeo%'
оставьте ваше CREATE TABLE таблица
и добавьте
CREATE MATERIALIZED VIEW мвшка TO таблица AS SELECT
Подскажите, пожалуйста. Делаю MATERIALIZED VIEW без POPULATE на основе
CREATE TABLE .... AS (SELECT ....)
Не срабатывает. Как корректнее сделать?
никаких подводных, просто таблицы одинаковой схемы (а клик и не даст разной создать) с одним путём ЗК реплицируются между собой.
остальное - вопрос вкуса
я предпочитаю что то типа /clickhouse/cluster/shard/database/table
Всём привет! Вопрос, по путям в зукипер, в доках и статьях используется разный нейминг где-то ...database/table_name... Где-то uuid это на выбор админов и тогда бестпрактис какой или одно как-то превращается в другое, тогда где про это и подводные камни прочитать?
Читать полностью…Можно строки заблюрить целиком, по условию на эту колонку. row policy называется. Но будьте осторожны, не упустите из виду предупреждение в доке, что когда навесите фильтрующее полиси, все кому по полиси не положено, видеть перестанут. Чтобы конкретный пользователь не видел, а все остальные по прежнему видели, создаете сразу и полиси для него, и разрешающее для всех остальных.
Читать полностью…Привет, а в кх можно как-то в консумерах кафки включить Static Group Membership?
Читать полностью…версия — 23.8.12.13
engine = ReplicatedMergeTree()
partition by toYYYYMMDD(dt)
order by ( dt, cat_id )
ttl toStartOfDay(dt) + toIntervalDay(90)
settings index_granularity = 8192, merge_with_ttl_timeout = 72000
, ttl_only_drop_parts = 1, storage_policy = 'fast_storage';
Лучше ещё добавьте DDL таблиц и версию клика
Читать полностью…а как вы проверяете? Там может быть у вас 2 разных инсерта создают один и тот же блок для вставки во вью и он просто игнорируется
Читать полностью…Натолкнулся тут на интересный разворот в поддержке обратной совместимости и прям улыбнулся...
https://clickhouse.com/blog/clickhouse-release-24-03
We’ve had experimental support for the analyzer for a while now, but starting from version 24.3, this feature is beta and enabled by default.
If you don’t want to use it you can still disable it by configuring the following setting:SET allow_experimental_analyzer = 0;
In version 24.4 or 24.5, we plan to promote the analyzer to production and remove the old query analysis implementation.
Хотел подключится через remote() с клика версии 24.8 к клику 22.5.
Поймал ошибку DB::Exception: Unknown setting allow_experimental_analyzer. (UNKNOWN_SETTING)
Получается более новый click принудительно вкорячивает эту опцию в любой запрос к удаленному серверу?
Это поведение можно как-то исправить?
Или вариант один - настраивать связность в обратном направлении?
Спасибо, я собственно тоже в query log и пошел... в метрик таблицах ничего не нашел (
Читать полностью…По идее же такие запросы ничего не отдают и выполняются за пару миллисекунд
http_connection_timeout = 1Читать полностью…
http_send_timeout = 30
http_receive_timeout = 30
можно
http_connection_timeout
http_send_timeout
http_receive_timeout
эти 3 - скорее всего те, которые вы хотите, все доступные смотрите запросом
SELECT nameЧитать полностью…
FROM system.settings
WHERE name ILIKE '%timeo%'
Всем привет, подскажите пожалуйста, я читаю данные с с3 через s3 table function, но недавно у нас увеличилось количество логов и запросы стали падать с ошибкой Code: 1000. DB::Exception: Connection reset by peer. можно ли как-то поднять таймаут или что можно сделать?
Читать полностью…Всем привет, запросы из Spark при составлении DAG`a падают с ошибкой:
Code: 210. DB::NetException: I/O error: Broken pipe, while writing to socket
SELECT * FROM (
SELECT
column_1,
column_2
FROM table_name
WHERE column_2 = 2
) SPARK_GEN_SUBQ_8 WHERE 1=0
кстати Database Engine=Replicated уже не экспериментальный, там можно вообще не указывать полный путь, и там и будут по дефолту эти UUID-ы
Читать полностью…подводные камни можно создать себе самостоятельно, ну например при предпочитаемом мною виде, если таблицу переименовать, путь то останется прежний в ЗК после переименования, и будет слегка путаница
Читать полностью…Согласно доке должно быть можно, но не пробовал.
Клик использует librdkafka, пару лет назад, или более, там поддержали group.instance.id.
Опции librdkafka чтобы через Engine=Kafka объявить, добавляйте символ _
типа как то так:
CREATE TABLE (....) Engine=Kafka SETTINGS ... _group.instance.id = 'ваш статический ID', ...
Нет, целиком не надо, в этом и прикол задачи. Благодарю! =)
Читать полностью…Добрый день! Товарищи, подскажите, пожалуйста, заблюрить данные по конкретной колонке реально для конкретного пользователя? Или всё ограничивается прямым запретом к селекту этой колонки?
Читать полностью…таблица источника и назначения совпадают полностью по полям
Читать полностью…Иногда такой эффект может возникать из-за дедупликации.
К примеру, если в таблицу вставляется
(id, value)
а в MV только value, т.е. что-то менее уникальное,
то две последовательные вставки разных данных в таблицу могут привести к тому, что в MV будут вставляться одинаковые данные. И их дедуплицируют.
Не похоже на ваш случай?
смотрим, что данные есть в исходной таблице, а в назначения нет. как-то с двумя блоками для вставки не сталкивались
Читать полностью…Добрый день, подскажите никто не сталкивался с проблемой потери данных MV? MV примерно одного вида. Пытались делать вставки в буферки, убирали репликацию, создавали MV с минимальным кол-вом полей, но тщетно
create materialized view default.mv_cat on cluster 'animals'Читать полностью…
to default.cat_v2 (cat_id UInt64,
eat String,
create_dt DateTime,
)
as
select cat_id
, String
, dt
from default.cat;