From 20da5e020ac9a751ff974d4077f41e6edbec9433 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Sun, 28 Feb 2021 22:27:22 +0300 Subject: [PATCH 01/29] DOCSUP-7086: Add s3 translation. --- .../engines/table-engines/integrations/s3.md | 14 +- .../engines/table-engines/integrations/s3.md | 158 ++++++++++++++++++ 2 files changed, 165 insertions(+), 7 deletions(-) create mode 100644 docs/ru/engines/table-engines/integrations/s3.md diff --git a/docs/en/engines/table-engines/integrations/s3.md b/docs/en/engines/table-engines/integrations/s3.md index 5858a0803e6..64c8698e370 100644 --- a/docs/en/engines/table-engines/integrations/s3.md +++ b/docs/en/engines/table-engines/integrations/s3.md @@ -26,19 +26,19 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, **1.** Set up the `s3_engine_table` table: ``` sql -CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE=S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip') +CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE=S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); ``` **2.** Fill file: ``` sql -INSERT INTO s3_engine_table VALUES ('one', 1), ('two', 2), ('three', 3) +INSERT INTO s3_engine_table VALUES ('one', 1), ('two', 2), ('three', 3); ``` **3.** Query the data: ``` sql -SELECT * FROM s3_engine_table LIMIT 2 +SELECT * FROM s3_engine_table LIMIT 2; ``` ``` text @@ -83,19 +83,19 @@ Constructions with `{}` are similar to the [remote](../../../sql-reference/table ``` sql -CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_{1..3}', 'CSV') +CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_{1..3}', 'CSV'); ``` 3. Another way: ``` sql -CREATE TABLE table_with_question_mark (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_?', 'CSV') +CREATE TABLE table_with_question_mark (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_?', 'CSV'); ``` 4. Table consists of all the files in both directories (all files should satisfy format and schema described in query): ``` sql -CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV') +CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV'); ``` !!! warning "Warning" @@ -106,7 +106,7 @@ CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https: Create table with files named `file-000.csv`, `file-001.csv`, … , `file-999.csv`: ``` sql -CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/big_prefix/file-{000..999}.csv', 'CSV') +CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/big_prefix/file-{000..999}.csv', 'CSV'); ``` ## Virtual Columns {#virtual-columns} diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md new file mode 100644 index 00000000000..b0ef6b17f3a --- /dev/null +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -0,0 +1,158 @@ +--- +toc_priority: 4 +toc_title: S3 +--- + +# S3 {#table_engines-s3} + +Движок S3 обеспечивает интеграцию с экосистемой [Amazon S3](https://aws.amazon.com/s3/). Он похож на движок [HDFS](hdfs.md), но обладает специфическими для S3 функциями. + +## Использование движка {#ispolzovanie-dvizhka} + +``` sql +ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, [compression]) +``` + +**Входные параметры** + +- `path` — URL бакета, включая путь к файлу. В режиме только для чтения поддерживаются следующие подстановочные знаки: `*`, `?`, `{abc,def}` и `{N..M}`, где `N`, `M` — числа, `’abc’`, `‘def’` — строки. +- `format` — [формат](../../../interfaces/formats.md#formats) файла. +- `structure` — структура таблицы. Указывается в формате `'column1_name column1_type, column2_name column2_type, ...'`. +- `compression` — опциональный параметр, необходимый, если требуется использовать определенный формат сжатия. Поддерживаемые значения: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. По умолчанию, it will autodetect compression by file extension. По умолчанию формат сжатия определяется автоматически исходя из расширения файла. + +**Примеры** + +**1.** Настройте таблицу `s3_engine_table`: + +``` sql +CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE=S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); +``` + +**2.** Заполните файл данными: + +``` sql +INSERT INTO s3_engine_table VALUES ('one', 1), ('two', 2), ('three', 3); +``` + +**3.** Прочитайте данные: + +Запрос: + +``` sql +SELECT * FROM s3_engine_table LIMIT 2; +``` + +Результат: + +``` text +┌─name─┬─value─┐ +│ one │ 1 │ +│ two │ 2 │ +└──────┴───────┘ +``` + +## Детали реализации {#detali-realizatsii} + +- поддерживается многопоточное чтение и запись. +- не поддерживается: + - использование операций `ALTER` и `SELECT...SAMPLE`; + - индексы; + - репликация. + +**Шаблоны в пути** + +Шаблоны могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (а не во время `CREATE`). + +- `*` — заменяет любое количество любых символов кроме `/`, включая отсутствие символов. +- `?` — заменяет любой одиночный символ. +- `{some_string,another_string,yet_another_one}` — заменяет любую из строк `'some_string', 'another_string', 'yet_another_one'`. +- `{N..M}` — заменяет любое число в интервале от `N` до `M` включительно (может содержать ведущие нули, например: `000..078`). + +Конструкция с `{}` аналогична табличной функции [remote](../../../sql-reference/table-functions/remote.md). + +**Пример** + +1. Предположим, что у нас есть несколько файлов в формате TSV со следующими URL-адресами в HDFS: + +- ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_1.csv’ +- ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_2.csv’ +- ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_3.csv’ +- ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_1.csv’ +- ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_2.csv’ +- ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_3.csv’ + +2. Существует несколько способов создать таблицу, объединяющую все шесть файлов: + +``` sql +CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_{1..3}', 'CSV'); +``` + +3. Еще один способ: + +``` sql +CREATE TABLE table_with_question_mark (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_?', 'CSV'); +``` + +4. Можно создать таблицу, содержащую все файлы из обоих директорий (все файлы должны соответствовать формату и схеме, описанным в запросе): + +``` sql +CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV'); +``` + +!!! warning "Предупреждение" + Если список файлов содержит диапазоны чисел с ведущими нулями, используйте конструкцию с фигурными скобками для каждой цифры отдельно или используйте `?`. + +**Пример** + +Создайте таблицу из файлов `file-000.csv`, `file-001.csv`, … , `file-999.csv`: + +``` sql +CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/big_prefix/file-{000..999}.csv', 'CSV'); +``` + +## Виртуальные столбцы {#virtualnye-stolbtsy} + +- `_path` — путь к файлу. +- `_file` — имя файла. + +**Смотрите также** + +- [Виртуальные столбцы](index.md#table_engines-virtual_columns) + +## Настройки, связанные с S3 {#settings} + +Следующие параметры могут быть указаны перед выполнением запроса или в конфигурационном файле: + +- `s3_max_single_part_upload_size` — значение по умолчанию `64Mb`. Максимальный размер объекта для одиночной загрузки в S3. +- `s3_min_upload_part_size` — значение по умолчанию `512Mb`. Минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). +- `s3_max_redirects` — значение по умолчанию `10`. Максимальное количество http-перенаправлений в запросе на хранилище S3. + +Соображения безопасности: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или, обязательно указывать `remote_host_filter` в конфигурации сервера. + +## Настройки конечных точек {#endpointsettings} + +В файле конфигурации для определенной конечной точки (которая соответствует точному префиксу URL-адреса) можно указать следующие параметры: + +- `endpoint` — обязательный параметр, указывает префикс конечной точки. +- `access_key_id` and `secret_access_key` — опциональный параметр. Содержит учетные данные для использования с данной конечной точкой. +- `use_environment_credentials` — опциональный параметр, значение по умолчанию `false`. +Если установлено значение `true`, клиент S3 будет использовать учетные сведения из переменных сред и метаданных Amazon EC2, для данной конечной точки. +- `header` — опциональный параметр. Может быть указан несколько раз. Добавляет указанный HTTP-заголовок к запросу к заданной конечной точке. +- `server_side_encryption_customer_key_base64` — опциональный параметр. При его использовании, будут установлены необходимые заголовки для доступа к объектам S3 с помощью шифрования SSE-C. + +Пример: + +``` + + + https://storage.yandexcloud.net/my-test-bucket-768/ + + + + + + + +``` + +[Оригинальная статья](https://clickhouse.tech/docs/ru/operations/table_engines/s3/) From bbdb66fb5828842e05ef2069ebd22ce4ac6cb836 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Sun, 28 Feb 2021 22:30:57 +0300 Subject: [PATCH 02/29] DOCSUP-7086: Add s3 translation. --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index b0ef6b17f3a..743d450f741 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -18,7 +18,7 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, - `path` — URL бакета, включая путь к файлу. В режиме только для чтения поддерживаются следующие подстановочные знаки: `*`, `?`, `{abc,def}` и `{N..M}`, где `N`, `M` — числа, `’abc’`, `‘def’` — строки. - `format` — [формат](../../../interfaces/formats.md#formats) файла. - `structure` — структура таблицы. Указывается в формате `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — опциональный параметр, необходимый, если требуется использовать определенный формат сжатия. Поддерживаемые значения: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. По умолчанию, it will autodetect compression by file extension. По умолчанию формат сжатия определяется автоматически исходя из расширения файла. +- `compression` — опциональный параметр, необходимый, если требуется использовать определенный формат сжатия. Поддерживаемые значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. По умолчанию формат сжатия определяется автоматически, исходя из расширения файла. **Примеры** From 34a8574920f77b7cb32887bcd8792de41222b808 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Sun, 28 Feb 2021 23:22:46 +0300 Subject: [PATCH 03/29] DOCSUP-7086: Add CH update translation. --- docs/en/operations/update.md | 7 +++---- .../ru/engines/table-engines/integrations/s3.md | 2 +- docs/ru/operations/update.md | 17 ++++++++++++++++- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/docs/en/operations/update.md b/docs/en/operations/update.md index 9fa9c44e130..df410e4c91e 100644 --- a/docs/en/operations/update.md +++ b/docs/en/operations/update.md @@ -15,7 +15,8 @@ $ sudo service clickhouse-server restart If you installed ClickHouse using something other than the recommended `deb` packages, use the appropriate update method. -ClickHouse does not support a distributed update. The operation should be performed consecutively on each separate server. Do not update all the servers on a cluster simultaneously, or the cluster will be unavailable for some time. +!!! warning "Warning" + ClickHouse does not support a distributed update. The operation should be performed consecutively on each separate server. Do not update all the servers on a cluster simultaneously, or the cluster will be unavailable for some time. The upgrade of older version of ClickHouse to specific version: @@ -29,6 +30,4 @@ $ sudo apt-get install clickhouse-server=xx.yy.a.b clickhouse-client=xx.yy.a.b c $ sudo service clickhouse-server restart ``` - - - +[Original article](https://clickhouse.tech/docs/en/operations/update/) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 743d450f741..b4bd7f6b526 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -61,7 +61,7 @@ SELECT * FROM s3_engine_table LIMIT 2; **Шаблоны в пути** -Шаблоны могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (а не во время `CREATE`). +Шаблоны могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (не во время `CREATE`). - `*` — заменяет любое количество любых символов кроме `/`, включая отсутствие символов. - `?` — заменяет любой одиночный символ. diff --git a/docs/ru/operations/update.md b/docs/ru/operations/update.md index c74b28b3fd7..b0a8c7ef2f1 100644 --- a/docs/ru/operations/update.md +++ b/docs/ru/operations/update.md @@ -15,4 +15,19 @@ $ sudo service clickhouse-server restart Если ClickHouse установлен не из рекомендуемых deb-пакетов, используйте соответствующий метод обновления. -ClickHouse не поддерживает распределенное обновление. Операция должна выполняться последовательно на каждом отдельном сервере. Не обновляйте все серверы в кластере одновременно, иначе кластер становится недоступным в течение некоторого времени. +!!! warning "Предупреждение" + ClickHouse не поддерживает распределенное обновление. Операция должна выполняться последовательно на каждом отдельном сервере. Не обновляйте все серверы в кластере одновременно, иначе кластер становится недоступным в течение некоторого времени. + +Обновление старой версии ClickHouse до определенной версии: + +Пример: + +`xx.yy.a.b` - это текущая стабильная версия. Последнюю стабильную версию можно найти [здесь](https://github.com/ClickHouse/ClickHouse/releases) + +```bash +$ sudo apt-get update +$ sudo apt-get install clickhouse-server=xx.yy.a.b clickhouse-client=xx.yy.a.b clickhouse-common-static=xx.yy.a.b +$ sudo service clickhouse-server restart +``` + +[Оригинальная статья](https://clickhouse.tech/docs/ru/operations/update/) From 77a3b103ad9959db935175a318ddad63bb3d4dbb Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Sun, 28 Feb 2021 23:49:56 +0300 Subject: [PATCH 04/29] DOCSUP-7086: Add CH update translation. --- docs/en/engines/table-engines/integrations/s3.md | 2 +- docs/ru/engines/table-engines/integrations/s3.md | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/en/engines/table-engines/integrations/s3.md b/docs/en/engines/table-engines/integrations/s3.md index 64c8698e370..bd15111e6b6 100644 --- a/docs/en/engines/table-engines/integrations/s3.md +++ b/docs/en/engines/table-engines/integrations/s3.md @@ -153,4 +153,4 @@ Example: ``` -[Original article](https://clickhouse.tech/docs/en/operations/table_engines/s3/) +[Original article](https://clickhouse.tech/docs/en/engines/table-engines/integrations/s3/) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index b4bd7f6b526..90b0ac43bb9 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -127,7 +127,7 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. - `s3_min_upload_part_size` — значение по умолчанию `512Mb`. Минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). - `s3_max_redirects` — значение по умолчанию `10`. Максимальное количество http-перенаправлений в запросе на хранилище S3. -Соображения безопасности: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или, обязательно указывать `remote_host_filter` в конфигурации сервера. +**Соображения безопасности**: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или, обязательно указывать `remote_host_filter` в конфигурации сервера. ## Настройки конечных точек {#endpointsettings} @@ -135,8 +135,7 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. - `endpoint` — обязательный параметр, указывает префикс конечной точки. - `access_key_id` and `secret_access_key` — опциональный параметр. Содержит учетные данные для использования с данной конечной точкой. -- `use_environment_credentials` — опциональный параметр, значение по умолчанию `false`. -Если установлено значение `true`, клиент S3 будет использовать учетные сведения из переменных сред и метаданных Amazon EC2, для данной конечной точки. +- `use_environment_credentials` — опциональный параметр, значение по умолчанию `false`. Если установлено значение `true`, клиент S3 будет использовать учетные сведения из переменных сред и метаданных Amazon EC2, для данной конечной точки. - `header` — опциональный параметр. Может быть указан несколько раз. Добавляет указанный HTTP-заголовок к запросу к заданной конечной точке. - `server_side_encryption_customer_key_base64` — опциональный параметр. При его использовании, будут установлены необходимые заголовки для доступа к объектам S3 с помощью шифрования SSE-C. @@ -155,4 +154,4 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. ``` -[Оригинальная статья](https://clickhouse.tech/docs/ru/operations/table_engines/s3/) +[Оригинальная статья](https://clickhouse.tech/docs/ru/engines/table-engines/integrations/s3/) From 99ec17bf84f9dba1ab64503aa4bf478408053a44 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Wed, 3 Mar 2021 00:16:00 +0300 Subject: [PATCH 05/29] DOCSUP-7086: Add CH update translation. --- docs/ru/operations/update.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/ru/operations/update.md b/docs/ru/operations/update.md index b0a8c7ef2f1..d0745fe0a7b 100644 --- a/docs/ru/operations/update.md +++ b/docs/ru/operations/update.md @@ -16,13 +16,11 @@ $ sudo service clickhouse-server restart Если ClickHouse установлен не из рекомендуемых deb-пакетов, используйте соответствующий метод обновления. !!! warning "Предупреждение" - ClickHouse не поддерживает распределенное обновление. Операция должна выполняться последовательно на каждом отдельном сервере. Не обновляйте все серверы в кластере одновременно, иначе кластер становится недоступным в течение некоторого времени. + ClickHouse не поддерживает распределенное обновление. Операция обновления должна выполняться последовательно на каждом отдельном сервере. Не обновляйте все серверы в кластере одновременно, иначе кластер станет недоступен в течение некоторого времени. -Обновление старой версии ClickHouse до определенной версии: +**Обновление ClickHouse до определенной версии**: -Пример: - -`xx.yy.a.b` - это текущая стабильная версия. Последнюю стабильную версию можно найти [здесь](https://github.com/ClickHouse/ClickHouse/releases) +Для обновления старой версии ClickHouse до определенной версии, выполните следующие команды на сервере: ```bash $ sudo apt-get update @@ -30,4 +28,6 @@ $ sudo apt-get install clickhouse-server=xx.yy.a.b clickhouse-client=xx.yy.a.b c $ sudo service clickhouse-server restart ``` +Где `xx.yy.a.b` — это номер текущей стабильной версии. Последнюю стабильную версию можно узнать [здесь](https://github.com/ClickHouse/ClickHouse/releases) + [Оригинальная статья](https://clickhouse.tech/docs/ru/operations/update/) From c07a74c7ec974859cc9191619a1aa7a848c6c9be Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Wed, 3 Mar 2021 00:29:58 +0300 Subject: [PATCH 06/29] DOCSUP-7086: Add link to S3. --- docs/ru/engines/table-engines/index.md | 1 + docs/ru/engines/table-engines/integrations/s3.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/index.md b/docs/ru/engines/table-engines/index.md index 740588c50a4..c12e3903057 100644 --- a/docs/ru/engines/table-engines/index.md +++ b/docs/ru/engines/table-engines/index.md @@ -52,6 +52,7 @@ toc_title: "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435" - [MySQL](integrations/mysql.md#mysql) - [ODBC](integrations/odbc.md#table-engine-odbc) - [JDBC](integrations/jdbc.md#table-engine-jdbc) +- [S3](integrations/s3.md#table_engines-s3) ### Специальные движки {#spetsialnye-dvizhki} diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 90b0ac43bb9..f20d42b318c 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -127,7 +127,7 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. - `s3_min_upload_part_size` — значение по умолчанию `512Mb`. Минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). - `s3_max_redirects` — значение по умолчанию `10`. Максимальное количество http-перенаправлений в запросе на хранилище S3. -**Соображения безопасности**: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или, обязательно указывать `remote_host_filter` в конфигурации сервера. +**Соображения безопасности**: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или обязательно указывать `remote_host_filter` в конфигурации сервера. ## Настройки конечных точек {#endpointsettings} From 19df244216b6f84c66627d0403f33c44b0f31b75 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:05:04 +0300 Subject: [PATCH 07/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index f20d42b318c..ab0768a34cd 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -18,7 +18,7 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, - `path` — URL бакета, включая путь к файлу. В режиме только для чтения поддерживаются следующие подстановочные знаки: `*`, `?`, `{abc,def}` и `{N..M}`, где `N`, `M` — числа, `’abc’`, `‘def’` — строки. - `format` — [формат](../../../interfaces/formats.md#formats) файла. - `structure` — структура таблицы. Указывается в формате `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — опциональный параметр, необходимый, если требуется использовать определенный формат сжатия. Поддерживаемые значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. По умолчанию формат сжатия определяется автоматически, исходя из расширения файла. +- `compression` — необязательный параметр. Необходим если требуется использовать определенный формат сжатия. Поддерживаемые значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. По умолчанию формат сжатия определяется автоматически исходя из расширения файла. **Примеры** From 0b830b22c6c3f9fa00f0696c58dcc6631755b1b8 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:05:24 +0300 Subject: [PATCH 08/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index ab0768a34cd..cf88837025c 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -25,7 +25,7 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, **1.** Настройте таблицу `s3_engine_table`: ``` sql -CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE=S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); +CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); ``` **2.** Заполните файл данными: From 0406a4f8d4f4ce0d91d63f7bc31eb17111277c6b Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:05:35 +0300 Subject: [PATCH 09/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index cf88837025c..cbe08dcf2b4 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -53,8 +53,8 @@ SELECT * FROM s3_engine_table LIMIT 2; ## Детали реализации {#detali-realizatsii} -- поддерживается многопоточное чтение и запись. -- не поддерживается: +- Поддерживается многопоточное чтение и запись. +- Не поддерживается: - использование операций `ALTER` и `SELECT...SAMPLE`; - индексы; - репликация. From 8998d2b0af0c5642911ccb73779a9facb53f0b7a Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:05:42 +0300 Subject: [PATCH 10/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index cbe08dcf2b4..58a6ed89d0d 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -61,7 +61,7 @@ SELECT * FROM s3_engine_table LIMIT 2; **Шаблоны в пути** -Шаблоны могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (не во время `CREATE`). +Символы подстановки могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (не во время `CREATE`). - `*` — заменяет любое количество любых символов кроме `/`, включая отсутствие символов. - `?` — заменяет любой одиночный символ. From e1e435493d826b01cf233d1fc5bb85451fdad07d Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:05:49 +0300 Subject: [PATCH 11/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 58a6ed89d0d..492c41f0361 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -70,7 +70,7 @@ SELECT * FROM s3_engine_table LIMIT 2; Конструкция с `{}` аналогична табличной функции [remote](../../../sql-reference/table-functions/remote.md). -**Пример** +**Примеры** 1. Предположим, что у нас есть несколько файлов в формате TSV со следующими URL-адресами в HDFS: From bd4a9cb9ee5c7128fb22ac8f7f51eb1c1a9dac95 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:11:14 +0300 Subject: [PATCH 12/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 492c41f0361..ea93df05ac2 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -59,7 +59,7 @@ SELECT * FROM s3_engine_table LIMIT 2; - индексы; - репликация. -**Шаблоны в пути** +**Символы подстановки в пути** Символы подстановки могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (не во время `CREATE`). From 289c1f4d2982e1a6424f0e0e06e3db972fd92df3 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:11:25 +0300 Subject: [PATCH 13/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index ea93df05ac2..0e383f6c443 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -133,11 +133,11 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. В файле конфигурации для определенной конечной точки (которая соответствует точному префиксу URL-адреса) можно указать следующие параметры: -- `endpoint` — обязательный параметр, указывает префикс конечной точки. -- `access_key_id` and `secret_access_key` — опциональный параметр. Содержит учетные данные для использования с данной конечной точкой. -- `use_environment_credentials` — опциональный параметр, значение по умолчанию `false`. Если установлено значение `true`, клиент S3 будет использовать учетные сведения из переменных сред и метаданных Amazon EC2, для данной конечной точки. -- `header` — опциональный параметр. Может быть указан несколько раз. Добавляет указанный HTTP-заголовок к запросу к заданной конечной точке. -- `server_side_encryption_customer_key_base64` — опциональный параметр. При его использовании, будут установлены необходимые заголовки для доступа к объектам S3 с помощью шифрования SSE-C. +- `endpoint` — указывает префикс конечной точки. Обязательный параметр. +- `access_key_id` and `secret_access_key` — содержит учетные данные для использования с данной конечной точкой. Опциональный параметр. +- `use_environment_credentials` — если установлено значение `true`, клиент S3 будет использовать учетные сведения из переменных сред и метаданных Amazon EC2 для данной конечной точки. Опциональный параметр. Значение по умолчанию `false`. +- `header` — добавляет указанный HTTP-заголовок к запросу к заданной конечной точке. Опциональный параметр, может быть указан несколько раз. +- `server_side_encryption_customer_key_base64` — устанавливает необходимые заголовки для доступа к объектам S3 с помощью шифрования SSE-C. Опциональный параметр. Пример: From e3694a9938185ff32d2ab69772dca3a71a86d45a Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:11:36 +0300 Subject: [PATCH 14/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 0e383f6c443..2f1a6d9eefb 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -123,9 +123,9 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. Следующие параметры могут быть указаны перед выполнением запроса или в конфигурационном файле: -- `s3_max_single_part_upload_size` — значение по умолчанию `64Mb`. Максимальный размер объекта для одиночной загрузки в S3. -- `s3_min_upload_part_size` — значение по умолчанию `512Mb`. Минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). -- `s3_max_redirects` — значение по умолчанию `10`. Максимальное количество http-перенаправлений в запросе на хранилище S3. +- `s3_max_single_part_upload_size` — максимальный размер объекта для одиночной загрузки в S3. Значение по умолчанию `64Mb`. +- `s3_min_upload_part_size` — минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). Значение по умолчанию `512Mb`. +- `s3_max_redirects` — максимальное количество http-перенаправлений в запросе на хранилище S3. Значение по умолчанию `10`. **Соображения безопасности**: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или обязательно указывать `remote_host_filter` в конфигурации сервера. From b4a81267c9f9c40119e5477d153ae7f0decdfb17 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:11:43 +0300 Subject: [PATCH 15/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 2f1a6d9eefb..763147bca5a 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -121,7 +121,7 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. ## Настройки, связанные с S3 {#settings} -Следующие параметры могут быть указаны перед выполнением запроса или в конфигурационном файле: +Перед выполнением запроса или в конфигурационном файле могут быть указаны следующие параметры: - `s3_max_single_part_upload_size` — максимальный размер объекта для одиночной загрузки в S3. Значение по умолчанию `64Mb`. - `s3_min_upload_part_size` — минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). Значение по умолчанию `512Mb`. From efe1ac28a66e41432e3b952520dd7465b397ac75 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:11:49 +0300 Subject: [PATCH 16/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 763147bca5a..114efaafe97 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -102,9 +102,7 @@ CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https: !!! warning "Предупреждение" Если список файлов содержит диапазоны чисел с ведущими нулями, используйте конструкцию с фигурными скобками для каждой цифры отдельно или используйте `?`. -**Пример** - -Создайте таблицу из файлов `file-000.csv`, `file-001.csv`, … , `file-999.csv`: +Создание таблицы из файлов `file-000.csv`, `file-001.csv`, … , `file-999.csv`: ``` sql CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/big_prefix/file-{000..999}.csv', 'CSV'); From ef02d5ee198884f4c5afeaba7cfd97a4d741a5b7 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:11:57 +0300 Subject: [PATCH 17/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 114efaafe97..12d607d5aad 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -93,7 +93,7 @@ CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://s CREATE TABLE table_with_question_mark (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_?', 'CSV'); ``` -4. Можно создать таблицу, содержащую все файлы из обоих директорий (все файлы должны соответствовать формату и схеме, описанным в запросе): +Можно создать таблицу, содержащую все файлы из обеих директорий (все файлы должны соответствовать формату и схеме, описанным в запросе): ``` sql CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV'); From 177cc441b29ddcf13965ba9b775439838847f763 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:12:04 +0300 Subject: [PATCH 18/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 12d607d5aad..c97718dc89b 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -87,7 +87,7 @@ SELECT * FROM s3_engine_table LIMIT 2; CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_{1..3}', 'CSV'); ``` -3. Еще один способ: +Второй способ: ``` sql CREATE TABLE table_with_question_mark (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_?', 'CSV'); From d5500656d0e1865fae7912cc1e5cc7f0413bdd47 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:12:08 +0300 Subject: [PATCH 19/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index c97718dc89b..bcc9f692def 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -81,7 +81,9 @@ SELECT * FROM s3_engine_table LIMIT 2; - ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_2.csv’ - ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_3.csv’ -2. Существует несколько способов создать таблицу, объединяющую все шесть файлов: +Существует несколько способов создать таблицу, объединяющую все шесть файлов. + +Первый способ: ``` sql CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_{1..3}', 'CSV'); From 193a635920415bfc0b85b7acfb067459a6e68ebb Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:12:14 +0300 Subject: [PATCH 20/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index bcc9f692def..5cff23b3c7c 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -72,7 +72,7 @@ SELECT * FROM s3_engine_table LIMIT 2; **Примеры** -1. Предположим, что у нас есть несколько файлов в формате TSV со следующими URL-адресами в HDFS: +Предположим, что у нас есть несколько файлов в формате TSV со следующими URL-адресами в HDFS: - ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_1.csv’ - ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_2.csv’ From b96fb47dfae48f3955769e59d68e03e3fed77db2 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Fri, 5 Mar 2021 17:12:20 +0300 Subject: [PATCH 21/29] Update docs/ru/engines/table-engines/integrations/s3.md Co-authored-by: olgarev <56617294+olgarev@users.noreply.github.com> --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 5cff23b3c7c..193a52a6dde 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -22,7 +22,7 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, **Примеры** -**1.** Настройте таблицу `s3_engine_table`: +**1.** Создайте таблицу `s3_engine_table`: ``` sql CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); From 13b4e7dc382294b0f41170febeb347c43ef7de31 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Fri, 5 Mar 2021 17:31:55 +0300 Subject: [PATCH 22/29] DOCSUP-7086: Fix En version by PR comments. --- .../engines/table-engines/integrations/s3.md | 36 +++++++++---------- docs/en/sql-reference/table-functions/s3.md | 2 ++ .../engines/table-engines/integrations/s3.md | 18 +++++----- 3 files changed, 29 insertions(+), 27 deletions(-) diff --git a/docs/en/engines/table-engines/integrations/s3.md b/docs/en/engines/table-engines/integrations/s3.md index bd15111e6b6..cd5cae1fa7b 100644 --- a/docs/en/engines/table-engines/integrations/s3.md +++ b/docs/en/engines/table-engines/integrations/s3.md @@ -19,23 +19,23 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, - `path` — Bucket url with path to file. Supports following wildcards in readonly mode: *, ?, {abc,def} and {N..M} where N, M — numbers, `’abc’, ‘def’ — strings. - `format` — The [format](../../../interfaces/formats.md#formats) of the file. - `structure` — Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — Parameter is optional. Supported values: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. By default, it will autodetect compression by file extension. +- `compression` — Supported values: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. Parameter is optional. By default, it will autodetect compression by file extension. -**Example:** +**Example** -**1.** Set up the `s3_engine_table` table: +1. Set up the `s3_engine_table` table: ``` sql CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE=S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); ``` -**2.** Fill file: +2. Fill file: ``` sql INSERT INTO s3_engine_table VALUES ('one', 1), ('two', 2), ('three', 3); ``` -**3.** Query the data: +3. Query the data: ``` sql SELECT * FROM s3_engine_table LIMIT 2; @@ -56,7 +56,7 @@ SELECT * FROM s3_engine_table LIMIT 2; - Indexes. - Replication. -**Globs in path** +## Globs in path {#globs} Multiple path components can have globs. For being processed file should exist and match to the whole path pattern. Listing of files determines during `SELECT` (not at `CREATE` moment). @@ -69,7 +69,7 @@ Constructions with `{}` are similar to the [remote](../../../sql-reference/table **Example** -1. Suppose we have several files in TSV format with the following URIs on HDFS: +Suppose we have several files in TSV format with the following URIs on HDFS: - ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_1.csv’ - ‘https://storage.yandexcloud.net/my-test-bucket-768/some_prefix/some_file_2.csv’ @@ -78,21 +78,21 @@ Constructions with `{}` are similar to the [remote](../../../sql-reference/table - ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_2.csv’ - ‘https://storage.yandexcloud.net/my-test-bucket-768/another_prefix/some_file_3.csv’ -2. There are several ways to make a table consisting of all six files: +There are several ways to make a table consisting of all six files: - +The first way: ``` sql CREATE TABLE table_with_range (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_{1..3}', 'CSV'); ``` -3. Another way: +Another way: ``` sql CREATE TABLE table_with_question_mark (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/some_file_?', 'CSV'); ``` -4. Table consists of all the files in both directories (all files should satisfy format and schema described in query): +Table consists of all the files in both directories (all files should satisfy format and schema described in query): ``` sql CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV'); @@ -122,9 +122,9 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. The following settings can be set before query execution or placed into configuration file. -- `s3_max_single_part_upload_size` — Default value is `64Mb`. The maximum size of object to upload using singlepart upload to S3. -- `s3_min_upload_part_size` — Default value is `512Mb`. The minimum size of part to upload during multipart upload to [S3 Multipart upload](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). -- `s3_max_redirects` — Default value is `10`. Max number of S3 redirects hops allowed. +- `s3_max_single_part_upload_size` — The maximum size of object to upload using singlepart upload to S3. Default value is `64Mb`. +- `s3_min_upload_part_size` — The minimum size of part to upload during multipart upload to [S3 Multipart upload](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). Default value is `512Mb`. +- `s3_max_redirects` — Max number of S3 redirects hops allowed. Default value is `10`. Security consideration: if malicious user can specify arbitrary S3 URLs, `s3_max_redirects` must be set to zero to avoid [SSRF](https://en.wikipedia.org/wiki/Server-side_request_forgery) attacks; or alternatively, `remote_host_filter` must be specified in server configuration. @@ -132,11 +132,11 @@ Security consideration: if malicious user can specify arbitrary S3 URLs, `s3_max The following settings can be specified in configuration file for given endpoint (which will be matched by exact prefix of a URL): -- `endpoint` — Mandatory. Specifies prefix of an endpoint. -- `access_key_id` and `secret_access_key` — Optional. Specifies credentials to use with given endpoint. -- `use_environment_credentials` — Optional, default value is `false`. If set to `true`, S3 client will try to obtain credentials from environment variables and Amazon EC2 metadata for given endpoint. +- `endpoint` — Specifies prefix of an endpoint. Mandatory. +- `access_key_id` and `secret_access_key` — Specifies credentials to use with given endpoint. Optional. +- `use_environment_credentials` — If set to `true`, S3 client will try to obtain credentials from environment variables and Amazon EC2 metadata for given endpoint. Optional, default value is `false`. - `header` — Optional, can be speficied multiple times. Adds specified HTTP header to a request to given endpoint. -- `server_side_encryption_customer_key_base64` — Optional. If specified, required headers for accessing S3 objects with SSE-C encryption will be set. +- `server_side_encryption_customer_key_base64` — If specified, required headers for accessing S3 objects with SSE-C encryption will be set. Optional. Example: diff --git a/docs/en/sql-reference/table-functions/s3.md b/docs/en/sql-reference/table-functions/s3.md index 76a0e042ea4..be2607c0368 100644 --- a/docs/en/sql-reference/table-functions/s3.md +++ b/docs/en/sql-reference/table-functions/s3.md @@ -7,6 +7,8 @@ toc_title: s3 Provides table-like interface to select/insert files in S3. This table function is similar to [hdfs](../../sql-reference/table-functions/hdfs.md). +## Using engine {#s3-using} + ``` sql s3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, [compression]) ``` diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 193a52a6dde..a2068ffe768 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -7,7 +7,7 @@ toc_title: S3 Движок S3 обеспечивает интеграцию с экосистемой [Amazon S3](https://aws.amazon.com/s3/). Он похож на движок [HDFS](hdfs.md), но обладает специфическими для S3 функциями. -## Использование движка {#ispolzovanie-dvizhka} +## Использование движка {#usage} ``` sql ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, [compression]) @@ -18,23 +18,23 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, - `path` — URL бакета, включая путь к файлу. В режиме только для чтения поддерживаются следующие подстановочные знаки: `*`, `?`, `{abc,def}` и `{N..M}`, где `N`, `M` — числа, `’abc’`, `‘def’` — строки. - `format` — [формат](../../../interfaces/formats.md#formats) файла. - `structure` — структура таблицы. Указывается в формате `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — необязательный параметр. Необходим если требуется использовать определенный формат сжатия. Поддерживаемые значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. По умолчанию формат сжатия определяется автоматически исходя из расширения файла. +- `compression` — необходим если требуется использовать определенный формат сжатия. Поддерживаемые значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. Необязательный параметр. По умолчанию формат сжатия определяется автоматически исходя из расширения файла. **Примеры** -**1.** Создайте таблицу `s3_engine_table`: +1. Создайте таблицу `s3_engine_table`: ``` sql CREATE TABLE s3_engine_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip'); ``` -**2.** Заполните файл данными: +2. Заполните файл данными: ``` sql INSERT INTO s3_engine_table VALUES ('one', 1), ('two', 2), ('three', 3); ``` -**3.** Прочитайте данные: +3. Прочитайте данные: Запрос: @@ -51,7 +51,7 @@ SELECT * FROM s3_engine_table LIMIT 2; └──────┴───────┘ ``` -## Детали реализации {#detali-realizatsii} +## Детали реализации {#implementation-details} - Поддерживается многопоточное чтение и запись. - Не поддерживается: @@ -59,7 +59,7 @@ SELECT * FROM s3_engine_table LIMIT 2; - индексы; - репликация. -**Символы подстановки в пути** +## Символы подстановки в пути {#globs} Символы подстановки могут содержаться в нескольких компонентах пути. Обрабатываются только существующие файлы, название которых целиком удовлетворяет шаблону (не только суффиксом или префиксом). Список файлов определяется во время выполнения запроса `SELECT` (не во время `CREATE`). @@ -110,7 +110,7 @@ CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https: CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/big_prefix/file-{000..999}.csv', 'CSV'); ``` -## Виртуальные столбцы {#virtualnye-stolbtsy} +## Виртуальные столбцы {#virtual-columns} - `_path` — путь к файлу. - `_file` — имя файла. @@ -127,7 +127,7 @@ CREATE TABLE big_table (name String, value UInt32) ENGINE = S3('https://storage. - `s3_min_upload_part_size` — минимальный размер части файла для [составной загрузки](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). Значение по умолчанию `512Mb`. - `s3_max_redirects` — максимальное количество http-перенаправлений в запросе на хранилище S3. Значение по умолчанию `10`. -**Соображения безопасности**: чтобы избежать CSRF атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или обязательно указывать `remote_host_filter` в конфигурации сервера. +**Соображения безопасности**: чтобы избежать [SSRF](https://en.wikipedia.org/wiki/Server-side_request_forgery) атак, когда злоумышленник может указать произвольные URL-адреса S3, следует установить `s3_max_redirects` значение `0`; или обязательно указывать `remote_host_filter` в конфигурации сервера. ## Настройки конечных точек {#endpointsettings} From 41b61db1871aba614d83856b42ff50f11473d583 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Fri, 5 Mar 2021 17:37:26 +0300 Subject: [PATCH 23/29] DOCSUP-7086: Fix En version by PR comments. --- docs/ru/operations/update.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/ru/operations/update.md b/docs/ru/operations/update.md index d0745fe0a7b..4f0ce476245 100644 --- a/docs/ru/operations/update.md +++ b/docs/ru/operations/update.md @@ -3,7 +3,7 @@ toc_priority: 47 toc_title: "\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u0020\u0043\u006c\u0069\u0063\u006b\u0048\u006f\u0075\u0073\u0065" --- -# Обновление ClickHouse {#obnovlenie-clickhouse} +# Обновление ClickHouse {#clickhouse-upgrade} Если ClickHouse установлен с помощью deb-пакетов, выполните следующие команды на сервере: @@ -18,9 +18,11 @@ $ sudo service clickhouse-server restart !!! warning "Предупреждение" ClickHouse не поддерживает распределенное обновление. Операция обновления должна выполняться последовательно на каждом отдельном сервере. Не обновляйте все серверы в кластере одновременно, иначе кластер станет недоступен в течение некоторого времени. -**Обновление ClickHouse до определенной версии**: +Обновление ClickHouse до определенной версии: -Для обновления старой версии ClickHouse до определенной версии, выполните следующие команды на сервере: +Пример: + +`xx.yy.a.b` — это номер текущей стабильной версии. Последнюю стабильную версию можно узнать [здесь](https://github.com/ClickHouse/ClickHouse/releases) ```bash $ sudo apt-get update @@ -28,6 +30,4 @@ $ sudo apt-get install clickhouse-server=xx.yy.a.b clickhouse-client=xx.yy.a.b c $ sudo service clickhouse-server restart ``` -Где `xx.yy.a.b` — это номер текущей стабильной версии. Последнюю стабильную версию можно узнать [здесь](https://github.com/ClickHouse/ClickHouse/releases) - [Оригинальная статья](https://clickhouse.tech/docs/ru/operations/update/) From 39f52dfead645509d4fbf5ee87af8bec025241f4 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Wed, 24 Mar 2021 21:56:04 +0300 Subject: [PATCH 24/29] Update docs/ru/engines/table-engines/index.md Co-authored-by: Anna <42538400+adevyatova@users.noreply.github.com> --- docs/ru/engines/table-engines/index.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/ru/engines/table-engines/index.md b/docs/ru/engines/table-engines/index.md index 695a5703319..e67b83af6e4 100644 --- a/docs/ru/engines/table-engines/index.md +++ b/docs/ru/engines/table-engines/index.md @@ -52,7 +52,7 @@ toc_title: "Введение" - [MySQL](integrations/mysql.md#mysql) - [ODBC](integrations/odbc.md#table-engine-odbc) - [JDBC](integrations/jdbc.md#table-engine-jdbc) -- [S3](integrations/s3.md#table_engines-s3) +- [S3](integrations/s3.md#table-engine-s3) ### Специальные движки {#spetsialnye-dvizhki} @@ -80,4 +80,3 @@ toc_title: "Введение" Чтобы получить данные из виртуального столбца, необходимо указать его название в запросе `SELECT`. `SELECT *` не отображает данные из виртуальных столбцов. При создании таблицы со столбцом, имя которого совпадает с именем одного из виртуальных столбцов таблицы, виртуальный столбец становится недоступным. Не делайте так. Чтобы помочь избежать конфликтов, имена виртуальных столбцов обычно предваряются подчеркиванием. - From 49aeac267806bd895c1ff568c5cfebccd8504dd8 Mon Sep 17 00:00:00 2001 From: romanzhukov Date: Thu, 25 Mar 2021 17:24:42 +0300 Subject: [PATCH 25/29] DOCSUP-7086: Fix last ticket comments. --- docs/en/engines/table-engines/integrations/s3.md | 2 +- docs/en/sql-reference/table-functions/s3.md | 4 +--- docs/ru/engines/table-engines/integrations/s3.md | 14 +++++++------- docs/ru/sql-reference/table-functions/s3.md | 2 +- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/docs/en/engines/table-engines/integrations/s3.md b/docs/en/engines/table-engines/integrations/s3.md index ea7f6859319..4980f717a8f 100644 --- a/docs/en/engines/table-engines/integrations/s3.md +++ b/docs/en/engines/table-engines/integrations/s3.md @@ -19,7 +19,7 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, - `path` — Bucket url with path to file. Supports following wildcards in readonly mode: `*`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. For more information see [below](#wildcards-in-path). - `format` — The [format](../../../interfaces/formats.md#formats) of the file. - `structure` — Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — Compression type. Supported values: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. Parameter is optional. By default, it will autodetect compression by file extension. +- `compression` — Compression type. Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. Parameter is optional. By default, it will autodetect compression by file extension. **Example** diff --git a/docs/en/sql-reference/table-functions/s3.md b/docs/en/sql-reference/table-functions/s3.md index c0460c22c71..285ec862aab 100644 --- a/docs/en/sql-reference/table-functions/s3.md +++ b/docs/en/sql-reference/table-functions/s3.md @@ -9,8 +9,6 @@ Provides table-like interface to select/insert files in [Amazon S3](https://aws. **Syntax** -## Using engine {#s3-using} - ``` sql s3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, [compression]) ``` @@ -20,7 +18,7 @@ s3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, [compres - `path` — Bucket url with path to file. Supports following wildcards in readonly mode: `*`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. For more information see [here](../../engines/table-engines/integrations/s3.md#wildcards-in-path). - `format` — The [format](../../interfaces/formats.md#formats) of the file. - `structure` — Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — Parameter is optional. Supported values: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. By default, it will autodetect compression by file extension. +- `compression` — Parameter is optional. Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. By default, it will autodetect compression by file extension. **Returned value** diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 5012bf49eaf..bfd176b3450 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -19,7 +19,7 @@ ENGINE = S3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, - `path` — URL-адрес бакета с указанием пути к файлу. Поддерживает следующие подстановочные знаки в режиме "только чтение": `*`, `?`, `{abc,def}` и `{N..M}` где `N`, `M` — числа, `'abc'`, `'def'` — строки. Подробнее смотри [ниже](#wildcards-in-path). - `format` — [формат](../../../interfaces/formats.md#formats) файла. - `structure` — структура таблицы в формате `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — тип сжатия. Возможные значения: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. Необязательный параметр. Если не указано, то тип сжатия определяется автоматически по расширению файла. +- `compression` — тип сжатия. Возможные значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. Необязательный параметр. Если не указано, то тип сжатия определяется автоматически по расширению файла. **Пример** @@ -73,17 +73,17 @@ SELECT * FROM s3_engine_table LIMIT 2; Соображение безопасности: если злонамеренный пользователь попробует указать произвольные URL-адреса S3, параметр `s3_max_redirects` должен быть установлен в ноль, чтобы избежать атак [SSRF] (https://en.wikipedia.org/wiki/Server-side_request_forgery). Как альтернатива, в конфигурации сервера должен быть указан `remote_host_filter`. -## Настройки конечных точек {#endpoint-settings} +## Настройки точки приема запроса {#endpoint-settings} -Для конечной точки (которая соответствует точному префиксу URL-адреса) в конфигурационном файле могут быть заданы следующие настройки: +Для точки приема запроса (которая соответствует точному префиксу URL-адреса) в конфигурационном файле могут быть заданы следующие настройки: Обязательная настройка: -- `endpoint` — указывает префикс конечной точки. +- `endpoint` — указывает префикс точки приема запроса. Необязательные настройки: -- `access_key_id` и `secret_access_key` — указывают учетные данные для использования с данной конечной точкой. -- `use_environment_credentials` — если `true`, S3-клиент будет пытаться получить учетные данные из переменных среды и метаданных Amazon EC2 для данной конечной точки. Значение по умолчанию - `false`. -- `header` — добавляет указанный HTTP-заголовок к запросу на заданную конечную точку. Может быть определен несколько раз. +- `access_key_id` и `secret_access_key` — указывают учетные данные для использования с данной точкой приема запроса. +- `use_environment_credentials` — если `true`, S3-клиент будет пытаться получить учетные данные из переменных среды и метаданных Amazon EC2 для данной точки приема запроса. Значение по умолчанию - `false`. +- `header` — добавляет указанный HTTP-заголовок к запросу на заданную точку приема запроса. Может быть определен несколько раз. - `server_side_encryption_customer_key_base64` — устанавливает необходимые заголовки для доступа к объектам S3 с шифрованием SSE-C. Создание таблицы из файлов `file-000.csv`, `file-001.csv`, … , `file-999.csv`: diff --git a/docs/ru/sql-reference/table-functions/s3.md b/docs/ru/sql-reference/table-functions/s3.md index 1d3fc8cfdb7..e062e59c67c 100644 --- a/docs/ru/sql-reference/table-functions/s3.md +++ b/docs/ru/sql-reference/table-functions/s3.md @@ -18,7 +18,7 @@ s3(path, [aws_access_key_id, aws_secret_access_key,] format, structure, [compres - `path` — URL-адрес бакета с указанием пути к файлу. Поддерживает следующие подстановочные знаки в режиме "только чтение": `*, ?, {abc,def} и {N..M}` где `N, M` — числа, `'abc', 'def'` — строки. Подробнее смотри [здесь](../../engines/table-engines/integrations/s3.md#wildcards-in-path). - `format` — [формат](../../interfaces/formats.md#formats) файла. - `structure` — cтруктура таблицы. Формат `'column1_name column1_type, column2_name column2_type, ...'`. -- `compression` — автоматически обнаруживает сжатие по расширению файла. Возможные значения: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. Необязательный параметр. +- `compression` — автоматически обнаруживает сжатие по расширению файла. Возможные значения: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. Необязательный параметр. **Возвращаемые значения** From 040137927d4942824cc1bf1336ba9c503ac0e5be Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Tue, 30 Mar 2021 16:08:19 +0300 Subject: [PATCH 26/29] remove warning (en) --- docs/en/engines/table-engines/integrations/s3.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/en/engines/table-engines/integrations/s3.md b/docs/en/engines/table-engines/integrations/s3.md index 4980f717a8f..da655adf05d 100644 --- a/docs/en/engines/table-engines/integrations/s3.md +++ b/docs/en/engines/table-engines/integrations/s3.md @@ -104,8 +104,7 @@ Table consists of all the files in both directories (all files should satisfy fo CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV'); ``` -!!! warning "Warning" - If the listing of files contains number ranges with leading zeros, use the construction with braces for each digit separately or use `?`. +If the listing of files contains number ranges with leading zeros, use the construction with braces for each digit separately or use `?`. **Example** From 31baa411403fef4cab5ef2dc2721ab443d48a702 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Tue, 30 Mar 2021 16:09:08 +0300 Subject: [PATCH 27/29] remove warning (ru) --- docs/ru/engines/table-engines/integrations/s3.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index bfd176b3450..3a63c3785a2 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -133,8 +133,7 @@ CREATE TABLE table_with_asterisk (name String, value UInt32) ENGINE = S3('https://storage.yandexcloud.net/my-test-bucket-768/{some,another}_prefix/*', 'CSV'); ``` -!!! warning "Warning" - Если список файлов содержит диапазоны чисел с ведущими нулями, используйте конструкцию с фигурными скобками для каждой цифры отдельно или используйте `?`. +Если список файлов содержит диапазоны чисел с ведущими нулями, используйте конструкцию с фигурными скобками для каждой цифры отдельно или используйте `?`. 4. Создание таблицы из файлов с именами `file-000.csv`, `file-001.csv`, … , `file-999.csv`: From 4e0c31d1959db39a03a8af42034139accd22a48f Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Tue, 30 Mar 2021 16:35:02 +0300 Subject: [PATCH 28/29] Update s3.md --- docs/ru/engines/table-engines/integrations/s3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ru/engines/table-engines/integrations/s3.md b/docs/ru/engines/table-engines/integrations/s3.md index 3a63c3785a2..216db98077c 100644 --- a/docs/ru/engines/table-engines/integrations/s3.md +++ b/docs/ru/engines/table-engines/integrations/s3.md @@ -86,7 +86,7 @@ SELECT * FROM s3_engine_table LIMIT 2; - `header` — добавляет указанный HTTP-заголовок к запросу на заданную точку приема запроса. Может быть определен несколько раз. - `server_side_encryption_customer_key_base64` — устанавливает необходимые заголовки для доступа к объектам S3 с шифрованием SSE-C. -Создание таблицы из файлов `file-000.csv`, `file-001.csv`, … , `file-999.csv`: +**Пример** ``` xml From afd6b99912f47960620fdc01af365d8f5d07bfb7 Mon Sep 17 00:00:00 2001 From: Roman Bug Date: Thu, 15 Apr 2021 15:51:00 +0300 Subject: [PATCH 29/29] Update optimize.md --- docs/en/sql-reference/statements/optimize.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/sql-reference/statements/optimize.md b/docs/en/sql-reference/statements/optimize.md index 49a7404d76e..c03881d2a5f 100644 --- a/docs/en/sql-reference/statements/optimize.md +++ b/docs/en/sql-reference/statements/optimize.md @@ -21,7 +21,7 @@ When `OPTIMIZE` is used with the [ReplicatedMergeTree](../../engines/table-engin - If you specify `DEDUPLICATE`, then completely identical rows (unless by-clause is specified) will be deduplicated (all columns are compared), it makes sense only for the MergeTree engine. -### BY expression {#by-expression} +## BY expression {#by-expression} If you want to perform deduplication on custom set of columns rather than on all, you can specify list of columns explicitly or use any combination of [`*`](../../sql-reference/statements/select/index.md#asterisk), [`COLUMNS`](../../sql-reference/statements/select/index.md#columns-expression) or [`EXCEPT`](../../sql-reference/statements/select/index.md#except-modifier) expressions. The explictly written or implicitly expanded list of columns must include all columns specified in row ordering expression (both primary and sorting keys) and partitioning expression (partitioning key).