* CLICKHOUSEDOCS-442: Translated docs for DDL query for creating external dictinaries. * CLICKHOUSEDOCS-442: Fixes. * Update docs/ru/query_language/show.md * CLICKHOUSEDOCS-442: Fixed failing build. Co-authored-by: Ivan Blinkov <github@blinkov.ru>
3.6 KiB
Внешние словари
Существует возможность подключать собственные словари из различных источников данных. Источником данных для словаря может быть локальный текстовый/исполняемый файл, HTTP(s) ресурс или другая СУБД. Подробнее смотрите в разделе "Источники внешних словарей".
ClickHouse:
- Полностью или частично хранит словари в оперативной памяти.
- Периодически обновляет их и динамически подгружает отсутствующие значения.
- Позволяет создавать внешние словари с помощью xml-файлов или DDL-запросов.
Конфигурация внешних словарей может находится в одном или нескольких xml-файлах. Путь к конфигурации указывается в параметре dictionaries_config.
Словари могут загружаться при старте сервера или при первом использовании, в зависимости от настройки dictionaries_lazy_load.
Конфигурационный файл словарей имеет вид:
<yandex>
<comment>Необязательный элемент с любым содержимым. Игнорируется сервером ClickHouse.</comment>
<!--Необязательный элемент, имя файла с подстановками-->
<include_from>/etc/metrika.xml</include_from>
<dictionary>
<!-- Конфигурация словаря -->
</dictionary>
...
<dictionary>
<!-- Конфигурация словаря -->
</dictionary>
</yandex>
В одном файле можно сконфигурировать произвольное количество словарей.
Если вы создаёте внешние словари DDL-запросами, то не задавайте конфигурацию словаря в конфигурации сервера.
!!! attention "Внимание"
Можно преобразовывать значения по небольшому словарю, описав его в запросе SELECT
(см. функцию transform). Эта функциональность не связана с внешними словарями.