Установка из Docker-образа#
CedrusData может быть запущен с помощью Docker-образа, который содержит базовую конфигурацию с несколькими каталогами.
Быстрый старт#
Убедитесь, что у вас установлен Docker Server.
Убедитесь, что команда
docker
не требуетsudo
.Убедитесь, что порт
8080
не занят другими процессами.Скачайте и запустите контейнер:
docker run -d --name cedrus-server -p 8080:8080 cr.yandex/crpjtvqf29mpabhmrf1s/cedrusdata:458-1
Подключитесь к узлу через JDBC, используя произвольное непустое имя пользователя.
jdbc:trino://localhost:8080
Откройтe web-консоль http://localhost:8080.
Примечание
Контейнер CedrusData может быть запущен как локально, так и с помощью платформ оркестрации. Для запуска CedrusData с помощью Kubernetes см. Trino on Kubernetes with Helm.
Запуск запросов с помощью Trino CLI#
Образ содержит command-line утилиту Trino CLI, которую вы можете использовать для запуска SQL-запросов.
Утилита доступна по имени trino
. Например:
$ docker exec -it cr.yandex/crpjtvqf29mpabhmrf1s/cedrusdata:458-1 trino
trino> select count(*) from tpch.sf1.nation;
_col0
-------
25
(1 row)
Query 20181105_001601_00002_e6r6y, FINISHED, 1 node
Splits: 21 total, 21 done (100.00%)
0:06 [25 rows, 0B] [4 rows/s, 0B/s]
Структура Docker-контейнера#
Образ содержит следующие важные файлы и директории:
/usr/lib/trino/
- бинарные файлы CedrusData./data/trino/
- операционные файлы CedrusData (например, логи)./usr/bin/trino
- command-line клиент Trino./etc/trino/
- файлы конфигурации CedrusData.
Конфигурация CedrusData#
Образ содержит набор файлов конфигурации, расположенных в директории /etc/trino
.
Чтобы задать собственную конфигурацию, необходимо осуществить mount собственно директории с файлами конфигурациями к пути /etc/trino
. Например:
$ docker run --name cedrus-server -d -p 8080:8080 --volume $PWD/etc:/etc/trino cr.yandex/crpjtvqf29mpabhmrf1s/cedrusdata:458-1
Аналогичным образом вы можете заменять отдельные директории или файлы конфигурации. Например, можно заменить только директорию с конфигурацией каталогов /etc/trino/catalog
.
CedrusData также позволяет задать способ управления каталогами через переменную окружения CATALOG_MANAGEMENT
.
Допустимые значения: static
, cedrusdata_dynamic
, dynamic
.
Установка плагинов#
Для добавления плагина в контейнер достаточно осуществить mount директории с файлами плагина в директорию /usr/bin/trino/plugin/<имя_плагина>
. Например:
$ docker run --name cedrus-server -d -p 8080:8080 --volume $PWD/my_plugin:/usr/bin/trino/plugin/my_plugin cr.yandex/crpjtvqf29mpabhmrf1s/cedrusdata:458-1
Следующие шаги#
При использовании конфигурации по умолчанию, будет запущен coordinator-узел, который может обрабатывать SQL-запросы.
При промышленном использовании, вероятнее всего вы будете использовать иную конфигурацию:
Один или несколько coordinator-узлов, которые планируют SQL-запросы, но не выполняют их.
Один или несколько worker-узлов, которые выполняют SQL-запросы.
Для конфигурации узлов для промышленного использования, ознакомьтесь с разделом Резвертывание.