Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Data Transfer
  • Доступные трансферы
  • Начало работы
    • Все инструкции
    • Подготовка к трансферу
      • Управление эндпоинтами
      • Миграция эндпоинтов в другую зону доступности
        • Источник
        • Приемник
    • Управление трансфером
    • Работа с базами данных во время трансфера
    • Мониторинг состояния трансфера
  • Решение проблем
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • Обучающие курсы

В этой статье:

  • Сценарии передачи данных из Elasticsearch
  • Подготовка базы данных источника
  • Настройка эндпоинта-источника Elasticsearch
  • Пользовательская инсталляция
  • Дополнительные настройки
  • Настройка приемника данных
  • Решение проблем, возникающих при переносе данных
  • Прерывание трансфера с ошибкой
  • Дублирование документов на приемнике
  1. Пошаговые инструкции
  2. Настройка эндпоинтов
  3. Elasticsearch
  4. Источник

Передача данных из эндпоинта-источника Elasticsearch

Статья создана
Yandex Cloud
Обновлена 10 апреля 2025 г.
  • Сценарии передачи данных из Elasticsearch
  • Подготовка базы данных источника
  • Настройка эндпоинта-источника Elasticsearch
    • Пользовательская инсталляция
    • Дополнительные настройки
  • Настройка приемника данных
  • Решение проблем, возникающих при переносе данных
    • Прерывание трансфера с ошибкой
    • Дублирование документов на приемнике

С помощью сервиса Yandex Data Transfer вы можете переносить данные поиска и аналитики из базы Elasticsearch и реализовывать различные сценарии переноса, обработки и трансформации данных. Для реализации трансфера:

  1. Ознакомьтесь с возможными сценариями передачи данных.
  2. Подготовьте базу данных Elasticsearch к трансферу.
  3. Настройте эндпоинт-источник в Yandex Data Transfer.
  4. Настройте один из поддерживаемых приемников данных.
  5. Создайте и запустите трансфер.
  6. Выполняйте необходимые действия по работе с базой и контролируйте трансфер.
  7. При возникновении проблем, воспользуйтесь готовыми решениями по их устранению.

Сценарии передачи данных из ElasticsearchСценарии передачи данных из Elasticsearch

Миграция — перенос данных из одного хранилища в другое. Часто это перенос базы из устаревших локальных баз в управляемые облачные.

  • Миграция со сменой типа хранилища из Elasticsearch в OpenSearch

Подробное описание возможных сценариев передачи данных в Yandex Data Transfer см. в разделе Практические руководства.

Подготовка базы данных источникаПодготовка базы данных источника

Elasticsearch

Если вы не планируете использовать для подключения к внешнему кластеру сервис Cloud Interconnect или VPN, разрешите подключения к такому кластеру из интернета с IP-адресов, используемых сервисом Data Transfer.

Подробнее о настройке сети для работы с внешними ресурсами см. в концепции.

Настройка эндпоинта-источника ElasticsearchНастройка эндпоинта-источника Elasticsearch

При создании или изменении эндпоинта вы можете задать:

  • Настройки подключения к пользовательской инсталляции, в т. ч. на базе виртуальных машин Yandex Compute Cloud. Эти параметры обязательные.
  • Дополнительные параметры.

Пользовательская инсталляцияПользовательская инсталляция

Подключение к узлам с явным указанием сетевых адресов и портов.

Консоль управления
  • Узлы с данными — нажмите на значок , чтобы добавить новый узел с данными. Для каждого узла укажите:

    • Хост — IP-адрес или FQDN хоста с ролью DATA, к которому необходимо подключиться.

    • Порт — номер порта, который сервис Data Transfer будет использовать для подключения к хосту с ролью DATA.

  • SSL — выберите, если используется безопасное соединение SSL.

  • Сертификат CA — загрузите файл сертификата или добавьте его содержимое в текстовом виде, если требуется шифрование передаваемых данных, например, для соответствия требованиям PCI DSS.

    Важно

    Если не добавить сертификат, трансфер может завершиться ошибкой.

  • Идентификатор подсети — выберите или создайте подсеть в нужной зоне доступности.

    Если значение в этом поле задано для обоих эндпоинтов, то обе подсети должны быть размещены в одной зоне доступности.

  • Пользователь — укажите имя пользователя, под которым сервис Data Transfer будет подключаться к кластеру.

  • Пароль — укажите пароль пользователя для доступа к кластеру.

  • Группы безопасности — выберите облачную сеть для размещения эндпоинта и группы безопасности для сетевого трафика.

    Это позволит применить к ВМ и кластерам в выбранной сети указанные правила групп безопасности без изменения настроек этих ВМ и кластеров. Подробнее см. в разделе Сеть в Yandex Data Transfer.

Дополнительные настройкиДополнительные настройки

Консоль управления
  • Перенести индекс с сопоставлением типов — выберите эту опцию, чтобы перенести типы данных с источника на приемник до начала трансфера. Если опция отключена, а схема индекса на приемнике не задана, то типы данных на приемнике будут определяться автоматически в процессе трансфера.

Важно

Если в индекс источника входят типы данных, которые не поддерживаются на приемнике, то включение этой опции может привести к ошибке при запуске трансфера. В этом случае отключите опцию и создайте схему индекса на приемнике вручную.

Настройка приемника данныхНастройка приемника данных

Настройте эндпоинт-приемник:

  • OpenSearch;
  • ClickHouse®;
  • Greenplum®;
  • Yandex Managed Service for YDB;
  • Yandex Object Storage;
  • Apache Kafka®;
  • YDS;

Полный список поддерживаемых источников и приемников в Yandex Data Transfer см. в разделе Доступные трансферы.

После настройки источника и приемника данных создайте и запустите трансфер.

Решение проблем, возникающих при переносе данныхРешение проблем, возникающих при переносе данных

  • Прерывание трансфера с ошибкой
  • Дублирование документов на приемнике

См. полный список рекомендаций в разделе Решение проблем.

Прерывание трансфера с ошибкойПрерывание трансфера с ошибкой

Тексты ошибок:

object field starting or ending with a [.] makes object resolution ambiguous <описание_поля>

Index -1 out of bounds for length 0

Трансфер прерывается из-за того, что ключи в передаваемых документах невалидны для приемника Elasticsearch. К невалидным относятся пустые ключи, а также ключи:

  • состоящие из пробелов;
  • состоящие из точек;
  • с точкой в начале или конце;
  • с точками, стоящими друг за другом;
  • с точками, разделенными пробелами.

Решение:

В дополнительных настройках эндпоинта-приемника включите опцию Исправить некорректные ключи в документах и активируйте трансфер повторно.

Дублирование документов на приемникеДублирование документов на приемнике

На приемнике возникают дубли документов при повторной передаче данных.

Все документы, передаваемые из одной таблицы источника, попадают в один индекс с именем <schemaName.tableName> на приемнике. При этом по умолчанию приемник автоматически генерирует идентификаторы документов (_id). В результате одинаковые документы получают разные идентификаторы и дублируются.

Дублирование не происходит, если в таблице источника или в правилах конвертации эндпоинта заданы первичные ключи. В этом случае идентификаторы документов генерируются на этапе трансфера с использованием значений первичных ключей.

Генерация происходит следующим образом:

  1. Если значение ключа содержит ., она экранируется \: some.key --> some\.key.
  2. Значения всех первичных ключей преобразуются в строку: <some_key1>.<some_key2>.<...>.
  3. Полученная строка преобразуется функцией url.QueryEscape.
  4. Если длина итоговой строки не превышает 512 символов, то она используется в качестве _id. Если длина больше 512 символов, то она хешируется алгоритмом SHA-1, и в качестве _id используется полученный хеш.

В результате документы с одинаковыми первичными ключами получат одинаковый идентификатор при повторной передаче данных, и последний переданный документ перезапишет существующий.

Решение:

  1. Установите первичный ключ для одного или нескольких столбцов на источнике или в правилах конвертации эндпоинта.
  2. Запустите трансфер.

Была ли статья полезна?

Предыдущая
Приемник
Следующая
Приемник
Проект Яндекса
© 2025 ООО «Яндекс.Облако»