Skip to content

0.3.0 (2025-12-18)

В версии Data.SyncMaster 0.3.0 добавлена ​​поддержка Iceberg, Spark-on-K8s и Spark-on-Yarn.

Note

В настоящее время Spark-on-K8s и Spark-on-Yarn не поддерживают FTP, FTPS, SFTP, Samba и WebDAV..

Критичные изменения

  • Команду контейнера рабочих процессов следует изменить с --queues 123-myqueue на worker --queues 123-myqueue (#295).

  • Приложение может быть сконфигурировагно посредством файла config.yml (#289).

По-прежнему можно использовать переменные окружения. Но это не рекомендуется по соображениям безопасности, поскольку переменные окружения docker/k8s могут быть прочитаны другими пользователями.

Другие заметные изменения:
- Переменная окружения SYNCMASTER__ENTRYPOINT__SUPERUSERS переименована в SYNCMASTER__SUPERUSERS. - Формат логирования настраивается явно через config.yml вместо того, чтобы иметь несколько предопределенных конфигурационных файлов.

  • Настройки промежуточного ПО server.session перемещены в блок auth (#304). Также переименованы некоторые поля в блоке настроек auth.keycloak.

До и после:

До:

auth:
  provider: ...
  keycloak:
    server_url: ...
     redirect_url: ...

server:
  session:
    enabled: true
    secret_key: ...

После:

auth:
  provider:
  keycloak:
    api_url: ...
    ui_callback_url: ...
  cookie:
    secret_key: ...

Функции

В настоящее время Iceberg Connection поддерживает только Iceberg REST Catalog с хранилищем S3.

  • Разрешено использование образа воркера(рабочего процесса) SyncMaster как spark.kubernetes.container.image. (#295)

  • Разрешено передавать конфигурации сессии Spark по умолчанию через настройки рабочего процесса. (#291):

Пример config.yml

config.yml
worker:
  spark_session_default_config:
  spark.master: local
  spark.driver.host: 127.0.0.1
  spark.driver.bindAddress: 0.0.0.0
  spark.sql.pyspark.jvmStacktrace.enabled: true
  spark.ui.enabled: false
  • Добавлен OAuth2GatewayProvider (#283).

Это позволяет использовать Data.SyncMaster под OAuth2 Gateway. Реализация аналогична DummyAuthProvider.

  • Разрешено отключение SessionMiddleware, поскольку оно требуется только для KeycloakAuthProvider.

  • Добавлены поддержки хуков в классы обработчиков (TransferController, Handler) (#279).

  • Имя трансфера и группы передается обработчикам (#308).

Улучшения

  • Параметр region для подключения к S3 сделан обязательным, чтобы предотвратить возможные ошибки.
  • Скрыто database_name на страницах подключения Clickhouse и MySQL.
  • Фронтенд: добавлены плейсхолдеры к параметрам подключения, таким как хост, порт и т. д.
  • Синхронизированы проверки фронтенда и бэкенда для некоторых шаблонов полей, например, имя таблицы должно быть в формате schema.table.
  • Улучшены описания полей схемы OpenAPI.

Исправление ошибок

Исправлена ​​ошибка, из-за которой некоторые параметры формата файлов игнорировались рабочим процессом SyncMaster:

  • XML: root_tag, row_tag
  • Excel start_cell, include_header
  • CSV include_header, line_sep
  • JSON, JSONLine: line_sep