Передача данных в эндпоинт-приемник YTsaurus
С помощью сервиса Yandex Data Transfer вы можете переносить данные в YTsaurus и реализовывать различные сценарии переноса, обработки и трансформации данных.
Для YTsaurus доступны два вида эндпоинтов-приемников:
YTSaurus Dynamic— запись данных в динамические таблицы ;YTSaurus Static— запись данных в статические таблицы .
Для реализации трансфера:
- Ознакомьтесь с возможными сценариями передачи данных.
- Настройте один из поддерживаемых источников данных.
- Настройте эндпоинт-приемник в Yandex Data Transfer.
- Cоздайте и запустите трансфер.
- Выполняйте необходимые действия по работе с базой данных и контролируйте трансфер.
Сценарии передачи данных в YTsaurus с помощью Yandex Data Transfer
Вы можете реализовывать сценарии загрузки данных из таблиц в управляемые базы данных Yandex Cloud для дальнейшего хранения в облаке, обработки и загрузки в витрины данных для визуализации.
Подробное описание возможных сценариев передачи данных в Yandex Data Transfer см. в разделе Практические руководства.
Настройка источника данных
Настройте один из поддерживаемых источников данных:
- Apache Kafka® (трансфер возможен только в приемник вида
YTSaurus Dynamic); - ClickHouse®;
- Greenplum®;
- MongoDB;
- MySQL®;
- PostgreSQL;
- Yandex Object Storage;
- Oracle;
- Managed Service for YDB.
Полный список поддерживаемых источников и приемников в Yandex Data Transfer см. в разделе Доступные трансферы.
Подготовка базы данных приемника
-
Для трансфера в статические таблицы выдайте права на создание и запись в таблицы (разрешение
writeна директорию с таблицами). Если перед трансфером выполняется очистка данных, выдайте разрешениеremove. Также для трансфера потребуется правоuseна аккаунт, ассоциированный с директорией, в которой будут находиться таблицы. -
Для трансфера в динамические таблицы, помимо прав
write,removeиuse, выдайте разрешение наmountтаблиц.
Настройка эндпоинта-приемника YTsaurus
При создании или изменении эндпоинта вы можете задать:
- Настройки подключения к кластеру Yandex Managed Service for YTsaurus. Эти параметры обязательные.
- Расширенные настройки.
Поддерживаемые схемы поставок данных и ограничения
| Схемы поставок данных | Уровень поддержки | Ограничения |
|---|---|---|
| Поставка данных в статические таблицы | Без трансформации данных (шардирования, ротации или разделения таблицы на подтаблицы). | |
| Параллельное копирование в статические таблицы | В разработке. | |
| Поставка данных в динамические таблицы через статические | Все промежуточные операции над частями таблиц производятся нетранзакционно и видны пользователю. Ограничения политики очистки Disabled и Drop 1. |
|
| Параллельное копирование в динамические таблицы через статические | Все промежуточные операции над частями таблиц производятся нетранзакционно и видны пользователю. Ограничения политики очистки Disabled и Drop 1. |
1 Ограничения политики очистки:
- При использовании политики
Disabledне гарантируется, что новые данные в существующих таблицах имеют приоритет над старыми при пересечении ключей. - При использовании политики
Dropочистка старых таблиц производится до момента добавления частей новых таблиц. Это будет исправлено.
Важно
Для динамических таблиц первичные ключи в данных обязательны. Динамические таблицы YTsaurus хранят данные в формате ключ:значение, где ключ и соответствующее ему значение также обязательно должны быть заданы. При отсутствии значения не ключевых колонок будет создана не ключевая колонка-заглушка __dummy. При отсутствии первичного ключа трансфер завершится с ошибкой.
Кластер Managed Service for YTsaurus
-
Идентификатор сервисного аккаунта — выберите или создайте сервисный аккаунт с ролью
managed-ytsaurus.editor, от имени которого сервис Data Transfer будет подключаться к кластеру. -
Идентификатор кластера — выберите кластер, к которому необходимо подключиться.
-
Группы безопасности — выберите:
- облачную сеть для размещения эндпоинта;
- группы безопасности для сетевого трафика.
Правила групп безопасности применяются к трансферу. Они позволяют открыть сетевой доступ с ВМ трансфера к кластеру. Подробнее см. в разделе Сеть в Yandex Data Transfer.
-
Путь — путь к папке, в которую будут записываться переносимые трансфером данные.
-
Политика очистки — выберите способ очистки данных в базе-приемнике перед переносом:
-
Drop— полное удаление таблиц, участвующих в трансфере (вариант по умолчанию).Используйте эту опцию, чтобы при любой активации трансфера в базу-приемник всегда передавалась самая последняя версия схемы таблиц из источника.
-
Disabled— не очищать.Выберите эту опцию, если будет производиться только репликация без копирования данных.
-
Расширенные настройки
Настройки для типа базы данных YTSaurus Dynamic
-
Настройки таблицы:
-
Медиум — выберите вид носителя
, на котором будут храниться данные:HDD (primary_medium=default)— множество HDD-дисков в кластере;SSD (primary_medium=ssd_blobs)— множество SSD-дисков в кластере;SSD для журналов (primary_medium=ssd_journals)— множество SSD-дисков для хранения журналов динамических таблиц;RAM (primary_medium=in_memory)— выделенное пространство в оперативной памяти узлов кластера.
-
Формат чанка — выберите формат хранения данных в чанке
:Поколоночный (optimize_for=scan)— используется для оптимизации сканирования;Построчный (optimize_for=lookup)— используется для оптимизации поиска.
-
Атомарные транзакции — включите, если нужно, чтобы для таблиц транзакции были полностью атомарными
(свойствоatomicity=full). -
TTL — укажите срок хранения данных в таблицах. По истечении этого срока данные будут удалены.
-
Пользовательские атрибуты — позволяет добавить пользовательские атрибуты для создаваемых таблиц в формате YSON
. Для добавления нового атрибута нажмите кнопку + Атрибут и введите его имя и значение.
-
-
Настройки процесса записи:
-
Не применять изменения схемы — выберите, чтобы не изменять схему данных на приемнике при изменении ее на источнике. По умолчанию при изменении схемы на источнике трансфер будет автоматически применять изменения схемы в приемнике: создавать новые таблицы, добавлять новые колонки, добавлять новые перечисляемые значения и перечисляемые типы. По умолчанию не применяются такие изменения, как удаление таблиц или колонок.
-
Отбрасывать большие значения — включите для игнорирования некритичных данных, не удовлетворяющих ограничениям. Если размер значения колонки нарушает ограничения YTsaurus
, это значение будет заменено наBigStringValueStub. -
Копирование через статическую таблицу — выберите для выполнения операций копирования через временные статические таблицы. Для политики очистки
Dropсуществующие данные в приемнике будут удалены после завершения копирования. В режиме без очистки будет выполнено слияние новых и существующих данных. -
Вычислительный пул YT — укажите вычислительный пул
, в котором будут запускаться операции над таблицами.
-
Настройки для типа базы данных YTSaurus Static
-
Настройки таблицы:
-
Формат чанка — выберите формат хранения данных в чанке
:Поколоночный (optimize_for=scan)— используется для оптимизации сканирования;Построчный (optimize_for=lookup)— используется для оптимизации поиска.
- Отсортировать статические таблицы — включите, если нужно, чтобы записи таблицы были отсортированы
по ключу. -
Пользовательские атрибуты — позволяет добавить пользовательские атрибуты для создаваемых таблиц в формате YSON
. Для добавления нового атрибута нажмите кнопку + Атрибут и введите его имя и значение.
-
-
Настройки процесса записи:
-
Отбрасывать большие значения — включите для игнорирования некритичных данных, не удовлетворяющих ограничениям. Если размер значения колонки нарушает ограничения YTsaurus
, это значение будет заменено наBigStringValueStub. -
Вычислительный пул YT — укажите вычислительный пул
, в котором будут запускаться операции над таблицами.
-
После настройки источника и приемника данных создайте и запустите трансфер.