Поделиться через


Репликация и синхронизация данных мейнфрейма с Azure

Azure Data Factory
Azure Databricks

В этом примере архитектуры описан план реализации для репликации и синхронизации данных во время модернизации в Azure. В нем описываются технические аспекты, такие как хранилища данных, инструменты и сервисы.

Архитектура

Схема архитектуры, показывающая, как синхронизировать локальные данные и данные баз данных Azure во время модернизации основного компьютера.

На схеме показан поток данных из источников Db2 через конвейеры Фабрики данных Azure в хранилище данных, аналитику и службы бизнес-аналитики в Azure. Схема состоит из двух областей: одна для локальных компонентов, а другая для компонентов Azure. Локальная область состоит из двух прямоугольников. Один прямоугольник изображений баз данных, таких как Db2 zOS и Db2 LUW. Стрелка указывает от этих баз данных ко второму прямоугольнику, в котором перечислены инструменты интеграции. Стрелки указывают от каждого средства интеграции к компоненту в разделе Azure. Локальная среда выполнения интеграции указывает на поле с меткой «Динамический конвейер». Это поле содержит один родительский конвейер и три дочерних конвейера. Стрелка указывает от этих конвейеров к окну с надписью «Хранение данных, аналитика и бизнес-аналитика». Это поле содержит службы Azure, такие как База данных SQL Azure, Azure Cosmos DB и Хранилище BLOB-объектов Azure. Пунктирные двусторонние стрелки соединяют путь динамического конвейера с Azure Data Lake Storage 2-го поколения и Azure Databricks. Стрелки указывают на локальные службы интеграции SQL Server и инструменты сторонних производителей на поле с надписью "Хранение данных, аналитика и бизнес-аналитика" в разделе Azure. Средство интеграции локального шлюза данных указывает на конвейер данных в фабрике данных структуры. Стрелка указывает от этого конвейера к полку "Хранение данных, аналитика и бизнес-аналитика".

Скачайте файл Visio для этой архитектуры.

Рабочий процесс

Следующий рабочий процесс соответствует предыдущей схеме:

Системы мейнфреймов и систем среднего уровня регулярно обновляют локальные базы данных приложений. Чтобы обеспечить согласованность, это решение синхронизирует последние данные с базами данных Azure. Процесс синхронизации включает в себя следующие шаги.

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

    Конвейеры группируют действия, выполняющие задачи. Чтобы извлечь данные, Фабрика данных Azure динамически создает один конвейер для каждой локальной таблицы. Затем вы можете использовать массовую параллельную реализацию при репликации данных в Azure. Вы также можете настроить решение в соответствии со своими требованиями:

    • Полная репликация: Вы реплицируете всю базу данных и вносите необходимые изменения в типы данных и поля в целевой базе данных Azure.

    • Частичная, дельта- или добавочная репликация: Столбцы с водяными знаками в исходных таблицах используются для синхронизации обновленных строк с базами данных Azure. Эти столбцы содержат либо непрерывно увеличивающийся ключ, либо метку времени, указывающую на последнее обновление таблицы.

    Фабрика данных Azure также использует конвейеры для следующих задач преобразования:

    • Преобразование типов данных
    • Манипулирование данными
    • Форматирование данных
    • Деривация столбца
    • Преобразование данных в плоскую структуру
    • Сортировка данных
    • Фильтрация данных
  2. Данные приложения хранятся в локальных базах данных, таких как Db2 zOS, Db2 for i и Db2 LUW.

  3. Локальная среда выполнения интеграции (IR) предоставляет среду, которую фабрика данных Azure использует для выполнения и диспетчеризации действий.

  4. Azure Data Lake Storage 2-го поколения и хранилище BLOB-объектов Azure подготавливают данные. Этот шаг иногда требуется для преобразования и объединения данных из нескольких источников.

  5. Для подготовки данных Фабрика данных Azure использует Azure Databricks, пользовательские действия и потоки данных конвейера для быстрого и эффективного преобразования данных.

  6. Фабрика данных Azure загружает данные в следующие реляционные и нереляционные базы данных Azure:

    • Azure SQL
    • База данных Azure для PostgreSQL
    • Azure Cosmos DB (облачная база данных)
    • Azure Data Lake Storage
    • База данных Azure для MySQL
  7. Службы SQL Server Integration Services (SSIS) извлекают, преобразуют и загружают данные.

  8. Локальный шлюз данных — это локально установленное клиентское приложение Windows, которое выступает в качестве моста между локальными источниками данных и службами Azure.

  9. Конвейер данных в Microsoft Fabric — это логическая группировка действий, выполняющих прием данных из Db2 в хранилище и базы данных Azure.

  10. Если решение требует репликации в режиме, близком к реальному времени, можно использовать инструменты сторонних производителей.

Компоненты

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

Интеграторы данных

  • Фабрике данных Azure — это гибридная служба интеграции данных. Это полностью управляемое бессерверное решение можно использовать для создания, планирования и оркестрации рабочих процессов извлечения, преобразования и загрузки (ETL), а также рабочих процессов извлечения, загрузки и преобразования (ELT).

  • Azure Synapse Analytics — это корпоративная служба аналитики, которая ускоряет анализ между хранилищами данных и системами больших данных. Azure Synapse Analytics сочетает в себе лучшие из следующих технологий и служб:

    • Технологии SQL для корпоративных хранилищ данных

    • Технологии Spark для больших данных

    • Azure Data Explorer для анализа журналов и временных рядов

    • Azure Pipelines для интеграции данных и рабочих процессов ETL и ELT

    • Глубокая интеграция с другими службами Azure, такими как Power BI, Azure Cosmos DB и Azure Machine Learning

  • SSIS — это платформа для создания решений по интеграции и преобразованию данных корпоративного уровня. Службы SSIS можно использовать для управления, репликации, очистки и анализа данных.

  • Azure Databricks — это платформа для анализа данных. Он основан на распределенной системе обработки с открытым исходным кодом Apache Spark и оптимизирован для облачной платформы Azure. В рабочем процессе аналитики Azure Databricks считывает данные из нескольких источников и использует Spark для предоставления аналитических сведений.

Хранилище данных

  • База данных SQL Azure входит в семейство Azure SQL и создана для облака. Этот сервис предоставляет преимущества полностью управляемой и постоянно обновляемой платформы как услуги (PaaS). База данных SQL также предоставляет автоматизированные функции на основе искусственного интеллекта, которые оптимизируют производительность и надежность. Варианты бессерверных вычислений и гипермасштабируемого хранилища автоматически масштабируют ресурсы по требованию.

  • Управляемый экземпляр SQL Azure входит в портфель служб Azure SQL. Этот интеллектуальный и масштабируемый облачный сервис баз данных сочетает в себе широчайшую совместимость с ядром SQL Server со всеми преимуществами полностью управляемого и постоянно обновляемого PaaS. Используйте Управляемый экземпляр SQL для модернизации существующих приложений в большом масштабе.

  • SQL Server на виртуальных машинах Azure позволяет переносить рабочие нагрузки SQL Server в облако с полной совместимостью кода. Являясь частью семейства SQL Azure, SQL Server на виртуальных машинах Azure обеспечивает сочетание производительности, безопасности и аналитики SQL Server с гибкостью и гибридным подключением Azure. Используйте SQL Server на виртуальных машинах Azure для переноса существующих приложений или создания новых. Вы также можете получить доступ к последним обновлениям и выпускам SQL Server, включая SQL Server 2019.

  • База данных Azure для PostgreSQL — это полностью управляемая служба реляционных баз данных, основанная на выпуске сообщества ядра СУБД PostgreSQL с открытым исходным кодом. Используйте эту службу, чтобы сосредоточиться на инновациях в приложениях, а не на управлении базами данных. Вы также можете быстро и легко масштабировать рабочую нагрузку.

  • Azure Cosmos DB — это глобально распределенная база данных с несколькими моделями . Используйте Azure Cosmos DB, чтобы убедиться, что ваши решения могут эластично и независимо масштабировать пропускную способность и хранилище в любом количестве географических регионов. Этот полностью управляемый сервис баз данных NoSQL гарантирует однозначные задержки в миллисекундах на уровне девяносто девятого процентиля в любой точке мира.

  • Data Lake Storage — это репозиторий хранилища, который содержит большой объем данных в исходном, необработанном формате. Хранилища озера данных оптимизированы для масштабирования до терабайтов и петабайт данных. Данные обычно поступают из нескольких разнородных источников и могут быть структурированными, полуструктурированными или неструктурированными. Data Lake Storage 2-го поколения сочетает в себе возможности Data Lake Storage 1-го поколения с хранилищем BLOB-объектов. Это решение для озера данных нового поколения обеспечивает семантику файловой системы, безопасность и масштабируемость на уровне файлов. Оно также предоставляет многоуровневое хранилище, высокий уровень доступности и возможности аварийного восстановления хранилища BLOB-объектов.

  • Microsoft Fabric — это платформа аналитики, готовая к работе с предприятием. Он объединяет перемещение данных, обработку данных, прием, преобразование, маршрутизацию событий в режиме реального времени и сборку отчетов. Он поддерживает эти возможности с помощью интегрированных служб, таких как Fabric Data Engineer, Fabric Data Factory, Fabric Data Science, Fabric Real-Time Intelligence, Fabric Data Warehouse и Fabric Databases.

  • База данных Azure для MySQL — это полностью управляемая служба реляционных баз данных, основанная на выпуске сообщества ядра СУБД MySQL с открытым кодом.

Другие инструменты

Сведения о сценарии

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

В частности, это решение охватывает:

  • Извлечение: подключение к исходной базе данных и извлечение данных из нее.

  • Преобразование:

    • Промежуточное хранение: временное хранение данных в исходном формате и подготовка их к преобразованию.

    • Подготовка: преобразование данных и управление ими с помощью правил сопоставления, соответствующих требованиям целевой базы данных.

  • Загрузка: Вставка данных в целевую базу данных.

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

Это решение может выиграть от сценариев репликации и синхронизации данных:

  • Архитектуры разделения ответственности за командные запросы, использующие Azure для обслуживания всех каналов запроса.

  • Среды, в которых локальные приложения тестируются параллельно, а также повторно размещенные или переработанные приложения.

  • Локальные системы с тесно связанными приложениями, требующими поэтапного исправления или модернизации.

Рекомендации

Следующие рекомендации можно применить к большинству сценариев. Следуйте этим рекомендациям, если они не противоречат особым требованиям для вашего случая.

При использовании фабрики данных Azure для извлечения данных выполните действия по настройке производительности действия копирования.

Соображения

Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая представляет собой набор руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.

Надежность

Надежность помогает гарантировать, что ваше приложение может выполнять обязательства, которые вы выполняете для клиентов. Для получения дополнительной информации см. Контрольный список проверки конструкции на надежность.

  • Управление инфраструктурой, включая доступность, автоматизировано в базах данных Azure.

  • Сведения о службе Майкрософт для защиты от отработки отказа DRDA см. в разделе Объединение пулов и отработка отказа.

  • Вы можете объединить в кластер локальный шлюз данных и IR, чтобы обеспечить более высокие гарантии доступности.

Безопасность

Безопасность обеспечивает гарантии от преднамеренного нападения и неправильного использования ценных данных и систем. Дополнительные сведения см. в контрольном списке проектных проверок по безопасности.

  • Используйте группы безопасности сети , чтобы ограничить доступ только к необходимым функциям для каждой службы.

  • Используйте частные конечные точки для служб PaaS. Используйте межсетевые экраны служб, которые доступны и недоступны через Интернет, чтобы повысить безопасность ваших служб.

  • Используйте управляемые удостоверения для потоков данных между компонентами.

  • Сведения о типах клиентских подключений, поддерживаемых Microsoft Service for DRDA, см. в статье Планирование и архитектура решений с помощью Microsoft Service for DRDA. Клиентские подключения влияют на характер транзакций, объединение в пул, отработку отказа, проверку подлинности и шифрование в сети.

Оптимизация затрат

Оптимизация затрат фокусируется на способах сокращения ненужных расходов и повышения эффективности работы. Дополнительные сведения см. в контрольном списке проектной экспертизы для оптимизации затрат.

  • Модели ценообразования различаются в зависимости от компонентных служб. Ознакомьтесь с моделями ценообразования на доступные службы компонентов, чтобы убедиться, что они соответствуют вашему бюджету.

  • Чтобы оценить затраты на реализацию этого решения, используйте Калькулятор цен Azure.

Операционное превосходство

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

Эффективность производительности

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

  • Рассмотрите Azure ExpressRoute в качестве масштабируемого варианта, если реализация использует значительную пропускную способность для начальной репликации или текущей репликации измененных данных.

  • Выберите правильную конфигурацию ИК-дисплея для вашего сценария.

Дальнейшие шаги