From 9d0fde0fc24b717e1e3db8f638b6d61068ae4fa9 Mon Sep 17 00:00:00 2001 From: BayoNet Date: Thu, 13 Jun 2019 06:14:04 +0300 Subject: [PATCH] DOCAPI-3822: Zookeeper settings. Review of EN docs. RU translation. (#5427) --- docs/en/faq/general.md | 4 +-- .../en/operations/server_settings/settings.md | 17 +++++----- docs/ru/faq/general.md | 15 +++++++-- .../ru/operations/server_settings/settings.md | 33 ++++++++----------- .../dicts/external_dicts_dict_sources.md | 2 ++ 5 files changed, 38 insertions(+), 33 deletions(-) diff --git a/docs/en/faq/general.md b/docs/en/faq/general.md index 49af0e55588..4cd9189c256 100644 --- a/docs/en/faq/general.md +++ b/docs/en/faq/general.md @@ -11,9 +11,9 @@ Distributed sorting is one of the main causes of reduced performance when runnin Most MapReduce implementations allow you to execute arbitrary code on a cluster. But a declarative query language is better suited to OLAP in order to run experiments quickly. For example, Hadoop has Hive and Pig. Also consider Cloudera Impala or Shark (outdated) for Spark, as well as Spark SQL, Presto, and Apache Drill. Performance when running such tasks is highly sub-optimal compared to specialized systems, but relatively high latency makes it unrealistic to use these systems as the backend for a web interface. -## What to do if I have a problem with encodings when using Oracle through ODBC? {#oracle-odbc-encodings} +## What If I Have a Problem with Encodings When Using Oracle Through ODBC? {#oracle-odbc-encodings} -If you use Oracle through ODBC driver as a source of external dictionaries, you need to set up correctly value for the `NLS_LANG` variable in the `/etc/default/clickhouse`. For more details see the [Oracle NLS_LANG FAQ](https://www.oracle.com/technetwork/products/globalization/nls-lang-099431.html). +If you use Oracle through the ODBC driver as a source of external dictionaries, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`. For more information, see the [Oracle NLS_LANG FAQ](https://www.oracle.com/technetwork/products/globalization/nls-lang-099431.html). **Example** diff --git a/docs/en/operations/server_settings/settings.md b/docs/en/operations/server_settings/settings.md index 11f5fd14f6f..94c4d72195b 100644 --- a/docs/en/operations/server_settings/settings.md +++ b/docs/en/operations/server_settings/settings.md @@ -666,13 +666,13 @@ Path to the file that contains: ## zookeeper {#server-settings_zookeeper} -Contains settings that allow ClickHouse to interact with [ZooKeeper](http://zookeeper.apache.org/) cluster. +Contains settings that allow ClickHouse to interact with a [ZooKeeper](http://zookeeper.apache.org/) cluster. -ClickHouse uses ZooKeeper for storing metadata of replicas when using replicated tables. If replicated tables are not used, this parameter section can be omitted. +ClickHouse uses ZooKeeper for storing metadata of replicas when using replicated tables. If replicated tables are not used, this section of parameters can be omitted. -This parameter section contains the following parameters: +This section contains the following parameters: -- `node` — ZooKeeper endpoint. You can set a few endpoints. +- `node` — ZooKeeper endpoint. You can set multiple endpoints. For example: @@ -683,12 +683,11 @@ This parameter section contains the following parameters: ``` - The `index` attribute is not used in ClickHouse. The only reason for this attribute is to allow some other programs to use the same configuraton. + The `index` attribute specifies the node order when trying to connect to the ZooKeeper cluster. -- `session_timeout_ms` — Maximum timeout for client session in milliseconds (default: 30000). -- `operation_timeout_ms` — Maximum timeout for operation in milliseconds (default: 10000). -- `root` — ZNode, that is used as root for znodes used by ClickHouse server. Optional. -- `identity` — User and password, required by ZooKeeper to give access to requested znodes. Optional. +- `session_timeout` — Maximum timeout for the client session in milliseconds. +- `root` — The [znode](http://zookeeper.apache.org/doc/r3.5.5/zookeeperOver.html#Nodes+and+ephemeral+nodes) that is used as the root for znodes used by the ClickHouse server. Optional. +- `identity` — User and password, that can be required by ZooKeeper to give access to requested znodes. Optional. **Example configuration** diff --git a/docs/ru/faq/general.md b/docs/ru/faq/general.md index 8cecad1aaf8..cc388b4ef5d 100644 --- a/docs/ru/faq/general.md +++ b/docs/ru/faq/general.md @@ -2,7 +2,7 @@ ## Почему бы не использовать системы типа MapReduce? -Системами типа MapReduce будем называть системы распределённых вычислений, в которых операция reduce сделана на основе распределённой сортировки. Наиболее распространённым opensource решением данного класса является [Apache Hadoop](http://hadoop.apache.org), а в Яндексе используется внутрення разработка — YT. +Системами типа MapReduce будем называть системы распределённых вычислений, в которых операция reduce сделана на основе распределённой сортировки. Наиболее распространённым opensource решением данного класса является [Apache Hadoop](http://hadoop.apache.org). Яндекс использует собственное решение — YT. Такие системы не подходят для онлайн запросов в силу слишком большой latency. То есть, не могут быть использованы в качестве бэкенда для веб-интерфейса. Такие системы не подходят для обновления данных в реальном времени. @@ -10,4 +10,15 @@ Распределённая сортировка является основной причиной тормозов при выполнении несложных map-reduce задач. Большинство реализаций MapReduce позволяют выполнять произвольный код на кластере. Но для OLAP задач лучше подходит декларативный язык запросов, который позволяет быстро проводить исследования. Для примера, для Hadoop существует Hive и Pig. Также смотрите Cloudera Impala, Shark (устаревший) для Spark, а также Spark SQL, Presto, Apache Drill. Впрочем, производительность при выполнении таких задач является сильно неоптимальной по сравнению со специализированными системами, а сравнительно высокая latency не позволяет использовать эти системы в качестве бэкенда для веб-интерфейса. -[Оригинальная статья](https://clickhouse.yandex/docs/ru/faq/general/) + +## Что делать, если у меня проблема с кодировками при использовании Oracle через ODBC? {#oracle-odbc-encodings} + +Если вы используете Oracle через драйвер ODBC в качестве источника внешних словарей, необходимо задать правильное значение для переменной окружения `NLS_LANG` в `/etc/default/clickhouse`. Подробнее читайте в [Oracle NLS_LANG FAQ](https://www.oracle.com/technetwork/products/globalization/nls-lang-099431.html). + +**Пример** + +``` +NLS_LANG=RUSSIAN_RUSSIA.UTF8 +``` + +[Оригинальная статья ](https://clickhouse.yandex/docs/en/faq/general/) diff --git a/docs/ru/operations/server_settings/settings.md b/docs/ru/operations/server_settings/settings.md index f0d928f46be..8f1bbcb7488 100644 --- a/docs/ru/operations/server_settings/settings.md +++ b/docs/ru/operations/server_settings/settings.md @@ -664,22 +664,17 @@ TCP порт для защищённого обмена данными с кли users.xml ``` +## zookeeper {#server-settings_zookeeper} -## zookeeper +Содержит параметры, позволяющие ClickHouse взаимодействовать с кластером [ZooKeeper](http://zookeeper.apache.org/). -Конфигурация серверов ZooKeeper. +ClickHouse использует ZooKeeper для хранения метаданных о репликах при использовании реплицированных таблиц. Если реплицированные таблицы не используются, этот раздел параметров может отсутствовать. -Содержит параметры для взаимодействия ClickHouse с кластером [ZooKeeper](http://zookeeper.apache.org/). +Раздел содержит следующие параметры: -ClickHouse использует ZooKeeper для хранения метаданных о репликах при использовании реплицированных таблиц. +- `node` — адрес ноды (сервера) ZooKeeper. Можно сконфигурировать несколько нод. -Параметр можно не указывать, если реплицированные таблицы не используются. - -Содержит следующие параметры: - -- `node` — нода ZooKeeper. Может содержать несколько узлов. - - Пример: + Например: ```xml @@ -688,14 +683,13 @@ ClickHouse использует ZooKeeper для хранения метадан ``` - Аттрибут `index` не используется в ClickHouse. Он присутствует в примере в связи с тем, что на серверах могут быть установлены другие программы, которые могут считывать тот же конфигурационный файл. + Атрибут `index` задает порядок опроса нод при попытках подключиться к кластеру ZooKeeper. -- `session_timeout_ms` — максимальный таймаут для сессии в миллисекундах (default: 30000). -- `operation_timeout_ms` — максимальный таймаут для операции в миллисекундах (default: 10000). -- `root` — корневая znode, которая используется сервером ClickHouse для всех остальных znode. Опционально. -- `identity` — пара `usename:password` для авторизации в кластере ZooKeeper. Опционально. +- `session_timeout` — максимальный таймаут клиентской сессии в миллисекундах. +- `root` — [znode](http://zookeeper.apache.org/doc/r3.5.5/zookeeperOver.html#Nodes+and+ephemeral+nodes), который используется как корневой для всех znode, которые использует сервер ClickHouse. Необязательный. +- `identity` — пользователь и пароль, которые может потребовать ZooKeeper для доступа к запрошенным znode. Необязательный. -**Пример** +**Пример конфигурации** ```xml @@ -708,7 +702,6 @@ ClickHouse использует ZooKeeper для хранения метадан 2181 30000 - 10000 /path/to/zookeeper/node @@ -716,9 +709,9 @@ ClickHouse использует ZooKeeper для хранения метадан ``` -**См. также:** +**Смотрите также** -- [Репликация](../../operations/table_engines/replication.md). +- [Репликация](../../operations/table_engines/replication.md) - [ZooKeeper Programmer's Guide](http://zookeeper.apache.org/doc/current/zookeeperProgrammers.html) ## use_minimalistic_part_header_in_zookeeper {#server-settings-use_minimalistic_part_header_in_zookeeper} diff --git a/docs/ru/query_language/dicts/external_dicts_dict_sources.md b/docs/ru/query_language/dicts/external_dicts_dict_sources.md index c9e419eb09c..1c0d214053c 100644 --- a/docs/ru/query_language/dicts/external_dicts_dict_sources.md +++ b/docs/ru/query_language/dicts/external_dicts_dict_sources.md @@ -121,6 +121,8 @@ ClickHouse получает от ODBC-драйвера информацию о квотировании и квотирует настройки в запросах к драйверу, поэтому имя таблицы нужно указывать в соответствии с регистром имени таблицы в базе данных. +Если у вас есть проблемы с кодировками при использовании Oracle, ознакомьтесь с соответствущим разделом [FAQ](../../faq/general.md#oracle-odbc-encodings). + ### Выявленная уязвимость в функционировании ODBC словарей !!! attention