Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Приложение ETL: различия между версиями

Материал из Платформа Эра. Документации
Нет описания правки
Нет описания правки
Строка 87: Строка 87:
Запустите приложение ETL (для пользователя должна присутствовать роль ''etl_admin'') и создайте два провайдера данных.
Запустите приложение ETL (для пользователя должна присутствовать роль ''etl_admin'') и создайте два провайдера данных.


# Domain A. Собственный экземпляр работы приложения ETL. Укажите адрес сервера, домен и токен.
# Домен A. Собственный экземпляр работы приложения ETL. Укажите адрес сервера, домен и токен.
# Domain B. Удаленный экземпляр платформы B. Укажите адрес сервера, домен и токен.
# Домен B. Удаленный экземпляр платформы B. Укажите адрес сервера, домен и токен.
[[Файл:Настройка канала интеграции для ETL.png|мини|Настройка канала интеграции для ETL]]
[[Файл:Настройка канала интеграции для ETL.png|мини|Настройка канала интеграции для ETL]]
Токен, необходимый для доступа к провайдеру, необходимо скопировать из приложения «Настройки», раздел «Каналы интеграции». Рекомендуем использовать токен product_layer. Скопируйте значение из поля «Локальный токен». Повторите действие для второго провайдера, указав токен удалённой Платформы B.
Токен, необходимый для доступа к провайдеру, необходимо скопировать из приложения «Настройки», раздел «Каналы интеграции». Рекомендуем использовать токен product_layer. Скопируйте значение из поля «Локальный токен». Повторите действие для второго провайдера, указав токен удалённого Домена B.


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


Создайте правило извлечения, трансформации и загрузки данных. В данном примере мы синхронизируем в обе стороны данные справочника приложения smart/Accounts.
Создайте правило извлечения, трансформации и загрузки данных. В данном примере мы синхронизируем в обе стороны данные справочника приложения smart/Accounts.

Версия от 20:07, 29 января 2026

Общая информация

ETL (Extract, Transform, Load) — это приложения для обработки данных, которое используется для извлечения, преобразования и загрузки данных от одного провайдера (домена) к другому провайдеру (домену). При этом домены могут принадлежать одному или разным экземплярам платформы.

ETL поддерживает:

  • Гибкие правила синхронизации с маппингом полей;
  • Различные режимы работы: ручной, по таймеру, в реальном времени;
  • Двунаправленную синхронизацию;
  • Фильтрацию данных на уровне источника и назначения;
  • Обработку ошибок и контроль состояния.

Общий принцип работы приложения ETL внутри Платформы с Доменом A, которое взаимодействует с другим экземпляров платформы с Доменом B.

Для работы ETL используются провайдеры и правила.

Провайдер:

{
  "domain": "domainA.era.company.ru",
  "enabled": true,
  "id": "86420117-2abb-4f92-9013-a5f832644df9",
  "kind": "erawebsocket",
  "name": "DomainA@era.company.ru",
  "serverAddress": "https://era.company.ru",
  "state": "connected",
  "statusText": "29.01.2026 20:02:21",
  "token": "72ffb7137841adb3fc04a41017ac8194"
}

Правило:

{
  "destinationProvider_id": "86420117-2abb-4f92-9013-a5f832644df9",
  "id": "c12248cf-46ee-4c66-8e51-87ebeb013fae",
  "interval": null,
  "items": [
    {
      "cancelDestinationChanges": false,
      "destination": {
        "className": "smart/Contacts"
      },
      "direction": "duplex",
      "name": "Контакты",
      "source": {
        "className": "smart/Contacts"
      }
    },
    {
      "cancelDestinationChanges": false,
      "destination": {
        "className": "smart/Accounts"
      },
      "direction": "duplex",
      "name": "Контрагенты",
      "source": {
        "className": "smart/Accounts"
      }
    },
    {
      "cancelDestinationChanges": false,
      "destination": {
        "className": "smart/Articles"
      },
      "direction": "duplex",
      "name": "Статьи",
      "source": {
        "className": "smart/Articles"
      }
    },
    {
      "cancelDestinationChanges": false,
      "destination": {
        "className": "smart/Requests"
      },
      "direction": "duplex",
      "name": "Тикеты",
      "source": {
        "className": "smart/Requests"
      }
    }
  ],
  "mode": "realtime",
  "name": "Двусторонняя связь",
  "sourceProvider_id": "a7a6fca5-db25-44d8-8f1e-26c2ebf5905e"
}

Порядок настройки

Файл:Настройка взаимодействия.png
Настройка взаимодействия

Запустите приложение ETL (для пользователя должна присутствовать роль etl_admin) и создайте два провайдера данных.

  1. Домен A. Собственный экземпляр работы приложения ETL. Укажите адрес сервера, домен и токен.
  2. Домен B. Удаленный экземпляр платформы B. Укажите адрес сервера, домен и токен.
Настройка канала интеграции для ETL

Токен, необходимый для доступа к провайдеру, необходимо скопировать из приложения «Настройки», раздел «Каналы интеграции». Рекомендуем использовать токен product_layer. Скопируйте значение из поля «Локальный токен». Повторите действие для второго провайдера, указав токен удалённого Домена B.

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

Создайте правило извлечения, трансформации и загрузки данных. В данном примере мы синхронизируем в обе стороны данные справочника приложения smart/Accounts.

Добавьте запись на любом из экземпляров платформы. В разделе «Мониторинг правил» проконтролируйте выполнения синхронизации в режиме реального времени при помощи WebSocket-протокола.

Провайдеры
Мониторинг

Возможно использовать более сложные правила для переноса данных из различных классов, будь то системные, продуктовые или пользовательские классы платформы.