Открыть сервис

Azure Synapse Link

Azure Synapse Link — это облачная технология, разработанная корпорацией Microsoft, предназначенная для организации непрерывной двунаправленной репликации данных между операционными базами данных (например, Azure Cosmos DB, Azure SQL Database, Microsoft SQL Server) и аналитической платформой Azure Synapse Analytics. Основная цель технологии — обеспечить возможность выполнения аналитических запросов и построения отчётов в реальном времени без необходимости создания сложных конвейеров извлечения, преобразования и загрузки (ETL) и без оказания негативного влияния на производительность операционных систем.

История и развитие

Технология Azure Synapse Link была впервые анонсирована корпорацией Microsoft в мае 2020 года в рамках конференции Microsoft Build. Первоначально она была доступна только для Azure Cosmos DB, что позволяло выполнять аналитику в реальном времени на транзакционных данных, хранящихся в этой базе данных. В последующие годы Microsoft расширила функциональность, добавив поддержку других источников данных.

В 2021 году была представлена поддержка Azure SQL Database и SQL Server 2022, что позволило использовать Synapse Link для репликации данных из реляционных баз данных. В 2022 году Microsoft объявила о поддержке Azure Database for PostgreSQL и Azure Database for MySQL. Развитие технологии было направлено на упрощение архитектуры «озёр данных» (data lake) и снижение задержек при анализе данных.

Архитектура и принцип работы

Azure Synapse Link работает на основе механизма изменяемого потока данных (change feed) или журнала транзакций (transaction log), в зависимости от источника данных. Система автоматически отслеживает изменения (вставки, обновления, удаления) в операционной базе данных и реплицирует их в аналитическое хранилище Azure Synapse Analytics.

Основные компоненты

  1. Источник данных (Source): Операционная база данных, поддерживающая Synapse Link (например, Azure Cosmos DB, Azure SQL Database, SQL Server 2022 и выше).
  2. Azure Synapse Link: Сервис, который управляет процессом репликации. Он отвечает за обнаружение изменений, их захват и передачу.
  3. Целевое хранилище (Destination): Внутреннее аналитическое хранилище Azure Synapse Analytics, которое может быть представлено как:
  • Специализированный пул SQL (Dedicated SQL Pool): Реляционное хранилище для структурированных данных.
  • Бессерверный пул SQL (Serverless SQL Pool): Система для запросов к данным, хранящимся в формате Parquet в Azure Data Lake Storage Gen2.
  • Озеро данных (Data Lake): Данные могут быть сохранены в формате Parquet в Azure Data Lake Storage Gen2 для дальнейшего использования в Apache Spark или других инструментах.

Процесс репликации

  1. Захват изменений: Synapse Link подключается к источнику данных и считывает поток изменений. Для Azure SQL Database и SQL Server используется технология Change Data Capture (CDC), которая отслеживает изменения в журнале транзакций. Для Azure Cosmos DB используется встроенный Change Feed.
  2. Преобразование и передача: Изменения преобразуются в формат, оптимизированный для аналитики (обычно Parquet), и передаются в целевую среду.
  3. Синхронизация: Данные в аналитическом хранилище обновляются с минимальной задержкой (от нескольких секунд до нескольких минут), что позволяет выполнять запросы к актуальным данным.

Ключевые возможности и характеристики

Режим реального времени (Near Real-Time)

Azure Synapse Link обеспечивает практически мгновенную синхронизацию данных. Время задержки между моментом изменения в операционной базе данных и его доступностью в аналитическом хранилище составляет от 10 до 60 секунд, в зависимости от объёма данных и конфигурации.

Отсутствие влияния на производительность операционной системы

Технология не требует создания дополнительных индексов или изменения схемы данных в операционной базе. Репликация осуществляется асинхронно, используя внутренние механизмы базы данных (Change Feed или CDC), что не приводит к блокировкам или замедлению транзакционных операций.

Двунаправленная репликация (в некоторых сценариях)

Хотя основная функция Synapse Link — это репликация из операционной БД в аналитическую, в некоторых конфигурациях (например, с Azure Cosmos DB) возможна обратная запись результатов аналитики обратно в операционную базу данных. Это позволяет, например, обновлять агрегированные показатели в реальном времени.

Поддержка различных источников

Azure Synapse Link поддерживает следующие источники данных:

  • Azure Cosmos DB: Аналитика в реальном времени для документных и графовых баз данных.
  • Azure SQL Database: Реляционные базы данных в облаке.
  • SQL Server 2022 и выше: Локальные или виртуальные экземпляры SQL Server.
  • Azure Database for PostgreSQL: Базы данных PostgreSQL.
  • Azure Database for MySQL: Базы данных MySQL.

Применение

Azure Synapse Link используется в сценариях, где требуется оперативная аналитика на основе постоянно обновляющихся данных без сложной инфраструктуры ETL.

Примеры использования

  1. Аналитика в реальном времени для IoT: Данные с датчиков и устройств поступают в Azure Cosmos DB. Synapse Link реплицирует их в Azure Synapse, где они агрегируются и анализируются для выявления аномалий или прогнозирования отказов.
  2. Операционные отчёты: Компании, использующие Azure SQL Database для учёта заказов, могут строить отчёты о продажах, остатках на складе и клиентской активности с задержкой в несколько секунд, не нагружая транзакционную базу.
  3. Гибридные сценарии: Организации, имеющие локальные базы данных SQL Server, могут реплицировать их в облачную аналитическую платформу для централизованного анализа без необходимости миграции операционных систем.
  4. Машинное обучение: Данные, реплицированные через Synapse Link, могут быть использованы для обучения моделей машинного обучения в Azure Machine Learning или Apache Spark, работающих в Azure Synapse.

Преимущества и ограничения

Преимущества

  • Упрощение архитектуры: Отказ от сложных конвейеров ETL сокращает время разработки и эксплуатационные расходы.
  • Низкая задержка: Возможность получать аналитику на данных, актуальных на момент запроса.
  • Безопасность: Репликация происходит внутри облачной платформы Azure, что обеспечивает соответствие стандартам безопасности и конфиденциальности.
  • Масштабируемость: Технология автоматически масштабируется в зависимости от объёма изменений в источнике.

Ограничения

  • Зависимость от экосистемы Azure: Технология работает только в облачной среде Microsoft Azure и требует наличия соответствующих сервисов.
  • Ограниченная поддержка источников: На данный момент поддерживается только ограниченный набор баз данных (Azure Cosmos DB, Azure SQL, SQL Server 2022+, PostgreSQL, MySQL). Репликация из других популярных СУБД (например, Oracle, MongoDB) невозможна.
  • Сложность настройки для SQL Server: Для локального SQL Server 2022 требуется настройка Azure Arc и установка дополнительных компонентов.
  • Стоимость: Использование Synapse Link может привести к дополнительным затратам на хранение реплицированных данных в аналитическом хранилище и на передачу данных.

Сравнение с традиционными подходами

Традиционные подходы к аналитике данных, такие как ETL (Extract, Transform, Load) и ELT (Extract, Load, Transform), требуют создания специализированных конвейеров, которые периодически (например, раз в час или раз в сутки) загружают данные из операционных систем в аналитическое хранилище. Это приводит к задержкам и требует значительных усилий по разработке и поддержке.

Azure Synapse Link предлагает альтернативу — автоматизированную непрерывную репликацию, которая устраняет необходимость в ручном управлении конвейерами и обеспечивает доступ к данным в реальном времени. Это особенно актуально для сценариев, где критически важна оперативность данных, например, для мониторинга финансовых транзакций или управления производственными процессами.

Источники

  • Документация Microsoft Azure: «What is Azure Synapse Link?»
  • Документация Microsoft Azure: «Azure Synapse Link for Azure Cosmos DB»
  • Документация Microsoft Azure: «Azure Synapse Link for Azure SQL Database»
  • Документация Microsoft Azure: «Azure Synapse Link for SQL Server 2022»
  • Microsoft Learn: «Introduction to Azure Synapse Analytics»
  • Блог Microsoft Azure: «Announcing Azure Synapse Link for Azure Cosmos DB» (2020)
  • Блог Microsoft Azure: «Azure Synapse Link for SQL Server 2022 now generally available» (2022)

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →