mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-23 16:12:01 +00:00
fix docs
This commit is contained in:
parent
5ed3269324
commit
71e61d8299
@ -255,7 +255,7 @@ CREATE TABLE table_name
|
|||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
Indices from the example can be used by ClickHouse to reduce amount of data read from disk in following queries.
|
Indices from the example can be used by ClickHouse to reduce amount of data to read from disk in following queries.
|
||||||
```sql
|
```sql
|
||||||
SELECT count() FROM table WHERE s < 'z'
|
SELECT count() FROM table WHERE s < 'z'
|
||||||
SELECT count() FROM table WHERE u64 * i32 == 10 AND u64 * length(s) >= 1234
|
SELECT count() FROM table WHERE u64 * i32 == 10 AND u64 * length(s) >= 1234
|
||||||
@ -266,7 +266,7 @@ SELECT count() FROM table WHERE u64 * i32 == 10 AND u64 * length(s) >= 1234
|
|||||||
* `minmax` Stores extremes of specified expression (if expression is `tuple`, then it stores extremes for each element of `tuple`), uses stored info for skipping blocks of data like primary key.
|
* `minmax` Stores extremes of specified expression (if expression is `tuple`, then it stores extremes for each element of `tuple`), uses stored info for skipping blocks of data like primary key.
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
INDEX b (u64 * length(s)) TYPE minmax GRANULARITY 4
|
INDEX sample_index (u64 * length(s)) TYPE minmax GRANULARITY 4
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -85,16 +85,16 @@ to the sorting key (only columns added by the `ADD COLUMN` command in the same `
|
|||||||
|
|
||||||
### Manipulations With Data Skipping Indices
|
### Manipulations With Data Skipping Indices
|
||||||
|
|
||||||
It only works for tables in the [`MergeTree`](../operations/table_engines/mergetree.md) family (including
|
It only works for tables in the [`*MergeTree`](../operations/table_engines/mergetree.md) family (including
|
||||||
[replicated](../operations/table_engines/replication.md) tables). The following operations
|
[replicated](../operations/table_engines/replication.md) tables). The following operations
|
||||||
are available:
|
are available:
|
||||||
|
|
||||||
* `ALTER ADD INDEX name expression TYPE type GRANULARITY value AFTER name [AFTER name2]` - Adds index description to tables metadata.
|
* `ALTER ADD INDEX name expression TYPE type GRANULARITY value AFTER name [AFTER name2]` - Adds index description to tables metadata.
|
||||||
|
|
||||||
* `ALTER DROP INDEX name` - Removes index description from tables metadata and index files from disk.
|
* `ALTER DROP INDEX name` - Removes index description from tables metadata and deletes index files from disk.
|
||||||
|
|
||||||
These commands are lightweight in sense that they only change metadata or remove files.
|
These commands are lightweight in sense that they only change metadata or remove files.
|
||||||
Also these operations are replicated.
|
Also they are replicated (syncing indices metadata through ZooKeeper).
|
||||||
|
|
||||||
### Manipulations With Partitions and Parts
|
### Manipulations With Partitions and Parts
|
||||||
|
|
||||||
|
@ -230,7 +230,7 @@ SELECT count() FROM table WHERE CounterID = 34 OR URL LIKE '%upyachka%'
|
|||||||
|
|
||||||
Для таблиц семейства `*MergeTree` можно задать дополнительные индексы в секции столбцов.
|
Для таблиц семейства `*MergeTree` можно задать дополнительные индексы в секции столбцов.
|
||||||
|
|
||||||
Индекс аггрегирует для заданного выражения некоторые данные, а потом при `SELECT` запросе использует их после первичного ключа для пропуска боков данных (пропускаемый блок состоих из гранул данных в количестве равном гранулярности данного индекса), на которых секция `WHERE` не может быть выполнена, тем самым уменьшая объем данных читаемых с диска.
|
Индексы аггрегируют для заданного выражения некоторые данные, а потом при `SELECT` запросе используют для пропуска боков данных (пропускаемый блок состоих из гранул данных в количестве равном гранулярности данного индекса), на которых секция `WHERE` не может быть выполнена, тем самым уменьшая объем данных читаемых с диска.
|
||||||
|
|
||||||
Пример
|
Пример
|
||||||
```sql
|
```sql
|
||||||
@ -246,7 +246,7 @@ CREATE TABLE table_name
|
|||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
Эти индексы смогут использоваться для оптимизации запросов
|
Эти индексы смогут использоваться для оптимизации следующих запросов
|
||||||
```sql
|
```sql
|
||||||
SELECT count() FROM table WHERE s < 'z'
|
SELECT count() FROM table WHERE s < 'z'
|
||||||
SELECT count() FROM table WHERE u64 * i32 == 10 AND u64 * length(s) >= 1234
|
SELECT count() FROM table WHERE u64 * i32 == 10 AND u64 * length(s) >= 1234
|
||||||
@ -254,11 +254,11 @@ SELECT count() FROM table WHERE u64 * i32 == 10 AND u64 * length(s) >= 1234
|
|||||||
|
|
||||||
#### Доступные индексы
|
#### Доступные индексы
|
||||||
|
|
||||||
* `minmax` Хранит минимум и максимум выражения (если выражение - `tuple`, то для каждого элемента `tuple`), используя их пропуска кусков аналогично первичному ключу.
|
* `minmax` Хранит минимум и максимум выражения (если выражение - `tuple`, то для каждого элемента `tuple`), используя их для пропуска кусков аналогично первичному ключу.
|
||||||
|
|
||||||
Пример
|
Пример
|
||||||
```sql
|
```sql
|
||||||
INDEX b (u64 * length(s)) TYPE minmax GRANULARITY 4
|
INDEX b (u64 * length(str), i32 + f64 * 100, date, str) TYPE minmax GRANULARITY 4
|
||||||
```
|
```
|
||||||
|
|
||||||
## Конкурентный доступ к данным
|
## Конкурентный доступ к данным
|
||||||
|
@ -88,9 +88,9 @@ ALTER DROP INDEX name
|
|||||||
```
|
```
|
||||||
Поддерживается только таблицами семейства `*MergeTree`.
|
Поддерживается только таблицами семейства `*MergeTree`.
|
||||||
|
|
||||||
Команда `ALTER ADD INDEX` добавляет описание индексов в метаданные, а `ALTER DROP INDEX` удаляет индекс из метаданных и стирает файлы индекса с диска, поэтому работают они мгновенно.
|
Команда `ALTER ADD INDEX` добавляет описание индексов в метаданные, а `ALTER DROP INDEX` удаляет индекс из метаданных и стирает файлы индекса с диска, поэтому они легковесные и работают мгновенно.
|
||||||
|
|
||||||
Если индекс есть в метаданных, то он начнет считаться в последующих слияниях и записях в таблицу, а не сразу после выполнения операции `ALTER`.
|
Если индекс появился в метаданных, то он начнет считаться в последующих слияниях и записях в таблицу, а не сразу после выполнения операции `ALTER`.
|
||||||
|
|
||||||
Запрос на изменение индексов реплицируется, сохраняя новые метаданные в ZooKeeper и применяя изменения на всех репликах.
|
Запрос на изменение индексов реплицируется, сохраняя новые метаданные в ZooKeeper и применяя изменения на всех репликах.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user