From 484aa83f499f647712c978bb02eb56022279c0cf Mon Sep 17 00:00:00 2001 From: ogorbacheva Date: Mon, 15 Apr 2019 16:19:37 +0300 Subject: [PATCH] Doc fix: Added 'system.part_log' (#4980) --- .../en/operations/server_settings/settings.md | 25 ++----- docs/en/operations/system_tables.md | 30 ++++++++- .../ru/operations/server_settings/settings.md | 25 ++----- docs/ru/operations/system_tables.md | 65 +++++++++++++------ 4 files changed, 87 insertions(+), 58 deletions(-) diff --git a/docs/en/operations/server_settings/settings.md b/docs/en/operations/server_settings/settings.md index e610dcbdc14..cbd70b178c5 100644 --- a/docs/en/operations/server_settings/settings.md +++ b/docs/en/operations/server_settings/settings.md @@ -489,31 +489,18 @@ Keys for server/client settings: ``` -## part_log +## part_log {#server_settings-part-log} Logging events that are associated with [MergeTree](../../operations/table_engines/mergetree.md). For instance, adding or merging data. You can use the log to simulate merge algorithms and compare their characteristics. You can visualize the merge process. -Queries are logged in the ClickHouse table, not in a separate file. - -Columns in the log: - -- event_time – Date of the event. -- duration_ms – Duration of the event. -- event_type – Type of event. 1 – new data part; 2 – merge result; 3 – data part downloaded from replica; 4 – data part deleted. -- database_name – The name of the database. -- table_name – Name of the table. -- part_name – Name of the data part. -- partition_id – The identifier of the partition. -- size_in_bytes – Size of the data part in bytes. -- merged_from – An array of names of data parts that make up the merge (also used when downloading a merged part). -- merge_time_ms – Time spent on the merge. +Queries are logged in the [system.part_log](../system_tables.md#system_tables-part-log) table, not in a separate file. You can configure the name of this table in the `table` parameter (see below). Use the following parameters to configure logging: -- database – Name of the database. -- table – Name of the table. -- partition_by – Sets a [custom partitioning key](../../operations/table_engines/custom_partitioning_key.md). -- flush_interval_milliseconds – Interval for flushing data from the buffer in memory to the table. +- `database` – Name of the database. +- `table` – Name of the system table. +- `partition_by` – Sets a [custom partitioning key](../../operations/table_engines/custom_partitioning_key.md). +- `flush_interval_milliseconds` – Interval for flushing data from the buffer in memory to the table. **Example** diff --git a/docs/en/operations/system_tables.md b/docs/en/operations/system_tables.md index a8a9e2e80af..faa32216ca3 100644 --- a/docs/en/operations/system_tables.md +++ b/docs/en/operations/system_tables.md @@ -98,7 +98,8 @@ Columns: Contains information about parameters [graphite_rollup](server_settings/settings.md#server_settings-graphite_rollup) which use in tables with [\*GraphiteMergeTree](table_engines/graphitemergetree.md) engines. -Столбцы: +Columns: + - `config_name` (String) - `graphite_rollup` parameter name. - `regexp` (String) - A pattern for the metric name. - `function` (String) - The name of the aggregating function. @@ -201,6 +202,33 @@ Formats: - engine (String) – Name of the table engine without parameters. +## system.part_log {#system_tables-part-log} + +The `system.part_log` table is created only if the [part_log](server_settings/settings.md#server_settings-part-log) server setting is specified. + +This table contains information about the events that occurred with the [data parts](table_engines/custom_partitioning_key.md) in the [MergeTree](table_engines/mergetree.md) family tables. For instance, adding or merging data. + +The `system.part_log` table contains the following columns: + +- `event_type` (Enum) — Type of the event that occurred with the data part. Can have one of the following values: `NEW_PART` — inserting, `MERGE_PARTS` — merging, `DOWNLOAD_PART` — downloading, `REMOVE_PART` — removing or detaching using [DETACH PARTITION](../query_language/alter.md#alter_detach-partition), `MUTATE_PART` — updating. +- `event_date` (Date) — Event date. +- `event_time` (DateTime) — Event time. +- `duration_ms` (UInt64) — Duration. +- `database` (String) — Name of the database the data part is in. +- `table` (String) — Name of the table the data part is in. +- `part_name` (String) — Name of the data part. +- `partition_id` (String) — ID of the partition that the data part was inserted to. The column takes the 'all' value if the partitioning is by `tuple()`. +- `rows` (UInt64) — The number of rows in the data part. +- `size_in_bytes` (UInt64) — Size of the data part in bytes. +- `merged_from` (Array(String)) — An array of names of the parts which the current part was made up from (after the merge). +- `bytes_uncompressed` (UInt64) — Size of uncompressed bytes. +- `read_rows` (UInt64) — The number of rows was read during the merge. +- `read_bytes` (UInt64) — The number of bytes was read during the merge. +- `error` (UInt16) — The code number of the occurred error. +- `exception` (String) — Text message of the occurred error. + +The `system.part_log` table is created after the first inserting data to the `MergeTree` table. + ## system.processes This system table is used for implementing the `SHOW PROCESSLIST` query. diff --git a/docs/ru/operations/server_settings/settings.md b/docs/ru/operations/server_settings/settings.md index c583b7ea42a..e25bb90a253 100644 --- a/docs/ru/operations/server_settings/settings.md +++ b/docs/ru/operations/server_settings/settings.md @@ -488,31 +488,18 @@ ClickHouse проверит условия `min_part_size` и `min_part_size_rat ``` -## part_log +## part_log {#server_settings-part-log} Логгирование событий, связанных с данными типа [MergeTree](../../operations/table_engines/mergetree.md). Например, события добавления или мержа данных. Лог можно использовать для симуляции алгоритмов слияния, чтобы сравнивать их характеристики. Также, можно визуализировать процесс слияния. -Запросы логгируются не в отдельный файл, а в таблицу ClickHouse. - -Столбцы лога: - -- event_time - Дата события. -- duration_ms - Время события. -- event_type - Тип события. 1 - кусок новый, 2 - результат мержа, 3 - кусок скачан с реплики, 4 - кусок удаляется. -- database_name - Имя базы даных. -- table_name - Имя таблицы. -- part_name - Имя куска данных. -- partition_id - Идентификатор партиции. -- size_in_bytes - Размер куска данных в байтах. -- merged_from - Массив имён кусков, из которых он образован при мерже (так же заполняется в случае скачивания уже смерженного куска). -- merge_time_ms - Время, потраченное на мерж. +Запросы логгируются не в отдельный файл, а в таблицу [system.part_log](../system_tables.md#system_tables-part-log). Вы можете изменить название этой таблицы в параметре `table` (см. ниже). При настройке логгирования используются следующие параметры: -- database - Имя базы данных. -- table - Имя таблицы. -- partition_by - Устанавливает [произвольный ключ партиционирования](../../operations/table_engines/custom_partitioning_key.md). -- flush_interval_milliseconds - Период сброса данных из буфера в памяти в таблицу. +- `database` — имя базы данных; +- `table` — имя таблицы; +- `partition_by` — устанавливает [произвольный ключ партиционирования](../../operations/table_engines/custom_partitioning_key.md); +- `flush_interval_milliseconds` — период сброса данных из буфера в памяти в таблицу. **Пример** diff --git a/docs/ru/operations/system_tables.md b/docs/ru/operations/system_tables.md index 4b50bedfdf8..4400c989b44 100644 --- a/docs/ru/operations/system_tables.md +++ b/docs/ru/operations/system_tables.md @@ -154,25 +154,52 @@ default_expression String - выражение для значения по ум - `YYYYMM` для автоматической схемы партиционирования по месяцам. - `any_string` при партиционировании вручную. -- name (String) - Имя куска. -- active (UInt8) - Признак активности. Если кусок активен, то он используется таблице, в противном случает он будет удален. Неактивные куски остаются после слияний. -- marks (UInt64) - Количество засечек. Чтобы получить примерное количество строк в куске, умножьте ``marks`` на гранулированность индекса (обычно 8192). -- marks_size (UInt64) - Размер файла с засечками. -- rows (UInt64) - Количество строк. -- bytes (UInt64) - Количество байт в сжатом виде. -- modification_time (DateTime) - Время модификации директории с куском. Обычно соответствует времени создания куска. -- remove_time (DateTime) - Время, когда кусок стал неактивным. -- refcount (UInt32) - Количество мест, в котором кусок используется. Значение больше 2 говорит о том, что кусок участвует в запросах или в слияниях. -- min_date (Date) - Минимальное значение ключа даты в куске. -- max_date (Date) - Максимальное значение ключа даты в куске. -- min_block_number (UInt64) - Минимальный номер куска из которых состоит текущий после слияния. -- max_block_number (UInt64) - Максимальный номер куска из которых состоит текущий после слияния. -- level (UInt32) - Глубина дерева слияний. Если слияний не было, то ``level=0``. -- primary_key_bytes_in_memory (UInt64) - Объем памяти (в байтах), занимаемой значениями первичных ключей. -- primary_key_bytes_in_memory_allocated (UInt64) - Выделенный с резервом объем памяти (в байтах) для размещения первичных ключей. -- database (String) - Имя базы данных. -- table (String) - Имя таблицы. -- engine (String) - Имя движка таблицы, без параметров. +- `name` (String) - имя куска; +- `active` (UInt8) - признак активности. Если кусок активен, то он используется таблицей, в противном случает он будет удален. Неактивные куски остаются после слияний; +- `marks` (UInt64) - количество засечек. Чтобы получить примерное количество строк в куске, умножьте `marks` на гранулированность индекса (обычно 8192); +- `marks_size` (UInt64) - размер файла с засечками; +- `rows` (UInt64) - количество строк; +- `bytes` (UInt64) - количество байт в сжатом виде; +- `modification_time` (DateTime) - время модификации директории с куском. Обычно соответствует времени создания куска; +- `remove_time` (DateTime) - время, когда кусок стал неактивным; +- `refcount` (UInt32) - количество мест, в котором кусок используется. Значение больше 2 говорит о том, что кусок участвует в запросах или в слияниях; +- `min_date` (Date) - минимальное значение ключа даты в куске; +- `max_date` (Date) - максимальное значение ключа даты в куске; +- `min_block_number` (UInt64) - минимальное число кусков, из которых состоит текущий после слияния; +- `max_block_number` (UInt64) - максимальное число кусков, из которых состоит текущий после слияния; +- `level` (UInt32) - глубина дерева слияний. Если слияний не было, то `level=0`; +- `primary_key_bytes_in_memory` (UInt64) - объем памяти (в байтах), занимаемой значениями первичных ключей; +- `primary_key_bytes_in_memory_allocated` (UInt64) - выделенный с резервом объем памяти (в байтах) для размещения первичных ключей; +- `database (String)` - имя базы данных; +- `table (String)` - имя таблицы; +- `engine (String)` - имя движка таблицы, без параметров. + +## system.part_log {#system_tables-part-log} + +Системная таблица `system.part_log` создается только в том случае, если задана серверная настройка [part_log](server_settings/settings.md#server_settings-part-log). + +Содержит информацию о всех событиях, произошедших с [кусками данных](table_engines/custom_partitioning_key.md) таблиц семейства [MergeTree](table_engines/mergetree.md) (например, события добавления, удаления или слияния данных). + +Столбцы: + +- `event_type` (Enum) — тип события. Столбец может содержать одно из следующих значений: `NEW_PART` — вставка нового куска; `MERGE_PARTS` — слияние кусков; `DOWNLOAD_PART` — загрузка с реплики; `REMOVE_PART` — удаление или отсоединение из таблицы с помощью [DETACH PARTITION](../query_language/alter.md#alter_detach-partition); `MUTATE_PART` — изменение куска. +- `event_date` (Date) — дата события; +- `event_time` (DateTime) — время события; +- `duration_ms` (UInt64) — длительность; +- `database` (String) — имя базы данных, в которой находится кусок; +- `table` (String) — имя таблицы, в которой находится кусок; +- `part_name` (String) — имя куска; +- `partition_id` (String) — идентификатор партиции, в которую был добавлен кусок. В столбце будет значение 'all', если таблица партициируется по выражению `tuple()`; +- `rows` (UInt64) — число строк в куске; +- `size_in_bytes` (UInt64) — размер куска данных в байтах; +- `merged_from` (Array(String)) — массив имён кусков, из которых образован текущий кусок в результате слияния (также столбец заполняется в случае скачивания уже смерженного куска); +- `bytes_uncompressed` (UInt64) — количество прочитанных разжатых байт; +- `read_rows` (UInt64) — сколько было прочитано строк при слиянии кусков; +- `read_bytes` (UInt64) — сколько было прочитано байт при слиянии кусков; +- `error` (UInt16) — код ошибки, возникшей при текущем событии; +- `exception` (String) — текст ошибки. + +Системная таблица `system.part_log` будет создана после первой вставки данных в таблицу `MergeTree`. ## system.processes