Пакетная обработка большого объема транзакций

Служба Azure Kubernetes (AKS)
Служебная шина Azure
Виртуальные машины Azure

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

Примечание.

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

Архитектура

Diagram of an architecture implemented by using AKS and Service Bus.

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

Workflow

В кругах на схеме указаны номера шагов, приведенных в следующем списке.

  1. В архитектуре используются разделы и очереди Служебной шина для организации входных данных пакетной обработки и передачи их для обработки.
  2. Azure Load Balancer, подсистема балансировки нагрузки уровня 4 (TCP, UDP), распределяет входящий трафик между работоспособными экземплярами служб, определенных в наборе балансировки нагрузки. Балансировка нагрузки и управление обработкой с оптимизацией подключений.
  3. Рабочие узлы кластера AKS ожидают передачи входных данных от конечных точек очереди Служебной шины.
  4. Узлы Java используют Java Message Service для подключения к Служебной шине и интерфейсы Java, такие как Java Database Connectivity, для подключения к другим источникам данных. При необходимости они используют другие Java API.
  5. Восстанавливаемые транзакции выполняются вместе с бизнес-кодом для каждого шага пакетной обработки.
  6. В инфраструктуре пакета используется ускорение сети Azure.
  7. Кэш Azure для Redis, Azure Cosmos DB и Azure Stream Analytics при необходимости предоставляют рабочее хранилище.
  8. На уровне постоянных данных используется Фабрика данных Azure для интеграции данных, а также Управляемый экземпляр SQL Azure и критически важный для бизнеса уровень производительности для обеспечения высокой доступности. Постоянное хранилище слабо связано для простоты переключения на другие технологии баз данных, а также для оптимизации организации хранения (например, с применением сегментов или секций).
  9. Решения для работы с данными (переходные и постоянные) используют геоизбыточное хранилище (GRS) службы хранилища Azure для защиты от неустранимых ошибок.

Компоненты

Архитектура использует следующие компоненты:

  • Виртуальная сеть Azure предоставляет защищенную частную сеть в облаке. Она позволяет виртуальным машинам подключаться друг к другу, Интернету и локальным сетям.
  • Azure ExpressRoute предоставляет частные подключения между локальной инфраструктурой и центрами обработки данных Azure.
  • Бастион Azure предоставляет закрытый и полностью управляемый протокол RDP и доступ SSH к виртуальным машинам.
  • Виртуальные машины Azure обеспечивают гибкую виртуализацию без необходимости предоставлять и обслуживать аппаратное оборудование для виртуальных машин. Операционной системой может быть Windows или Linux.
  • Виртуальная машина, созданная с помощью ускорения сети, использует виртуализацию с одним корневым диском ввода-вывода (SR-IOV), повышая тем самым производительность своей сети. Дополнительные сведения см. в статьях Создание виртуальной машины Windows с функцией ускорения сети с помощью Azure PowerShell и Обзор виртуализации с одним корневым диском ввода-вывода (SR-IOV).
  • Сетевой интерфейс Azure подключает виртуальную машину к Интернету, Azure и локальным ресурсам. Как показано в этой архитектуре, каждой дочерней виртуальной машине можно назначить собственный сетевой интерфейс и IP-адрес. Дополнительные сведения о сетевых интерфейсах см. в статье Создание, изменение или удаление сетевых интерфейсов.
  • Управляемые диски Azure — это высокопроизводительное устойчивое блочное хранилище для виртуальных машин. Есть четыре варианта хранилища дисков для облака: SSD (цен. категория "Ультра"), SSD (цен. категория "Премиум"), SSD (цен. категория "Стандартный") и HDD (цен. категория "Стандартный").
  • Служба Azure Kubernetes (AKS) — это полностью управляемая служба Kubernetes для развертывания и администрирования контейнерных приложений.
  • Служебная шина предоставляет надежную облачную службу MaaS (обмен сообщениями как услуга) и обеспечивает простую гибридную интеграцию.
  • Службы балансировки нагрузки Azure выполняют масштабирование для обеспечения высокой доступности и производительности. В этой архитектуре используется служба Load Balancer. Она предоставляет возможности балансировки нагрузки уровня 4 (TCP, UDP) с низкой задержкой для распределения трафика между виртуальными машинами и многоуровневыми гибридными приложениями.
  • Кэш Azure для Redis — это высокоскоростная и полностью управляемая служба кэша в памяти для обмена данными и состояниями между вычислительными ресурсами.
  • Azure Cosmos DB — это быстрая база данных NoSQL с открытыми API для использования в любом масштабе.
  • Azure Stream Analytics предоставляет аналитику в реальном времени для быстро движущихся потоков данных из приложений и устройств.
  • Azure Databricks — это быстрая и удобная служба аналитики больших данных на базе Apache SparkTM с возможностью совместной работы.
  • Azure SQL — это семейство облачных баз данных SQL, которое предоставляет единый интерфейс для всего портфеля решений SQL, а также широкий выбор вариантов развертывания, от пограничных решений до облака.
  • Управляемый экземпляр SQL Azure, входящий в состав портфеля служб Azure SQL, — управляемый, безопасный и всегда актуальный экземпляр SQL в облаке.
  • Фабрика данных — это полностью управляемое и бессерверное решение для интеграции данных, предназначенное для подготовки и преобразования данных в большом масштабе.
  • Фабрика данных поддерживает формат файла данных Parquet. Дополнительные сведения см. в статье Формат Parquet в Фабрике данных Azure.
  • Log Analytics — это инструмент на портале Azure, используемый для изменения и выполнения запросов в журналах Azure Monitor. Дополнительные сведения см. в статье Обзор Log Analytics в Azure Monitor.
  • Геоизбыточное хранилище службы хранилища Azure синхронно копирует данные три раза в одном физическом расположении в основном регионе, а затем асинхронно копирует данные в единое физическое расположение в дополнительном регионе. Дополнительные сведения см. в статье Избыточность хранилища Azure.
  • Хранилище BLOB-объектов Azure — это высоко масштабируемое и защищенное хранилище объектов на основе REST для облачных рабочих нагрузок, архивов, озер данных, высокопроизводительных вычислений и машинного обучения.
  • Файлы Azure предоставляет простые, безопасные и бессерверные общие папки корпоративного класса в облаке. К общим ресурсам можно получить доступ по стандартным отраслевым протоколам SMB и NFS.

Подробности сценария

В Azure можно реализовать пакетную обработку транзакций, например проводку платежей в учетных записях, используя архитектуру на основе Службы Microsoft Azure Kubernetes (AKS) и Служебной шины Azure. Этот тип архитектуры обеспечивает скорость обработки транзакций, масштабирование и надежность, необходимые для пакетной обработки больших объемов данных.

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

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

Решение идеально подходит для финансовых, образовательных и научных отраслей. Эта архитектура предназначена для обработки пакетов транзакций больших объемов, особенно независимых транзакций, которые можно обрабатывать параллельно. Поэтому подходящим сценарием будет пакетная обработка в рамках переноса мейнфрейма. Возможные варианты применения:

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

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

К этому решению применимы следующие рекомендации на основе Azure Well-Architected Framework:

Доступность

  • Служба аварийного восстановления Azure Site Recovery защищает от основных сбоев. Она надежна, экономична и легко развертывается.
  • Группы доступности для виртуальных машин обеспечивают наличие достаточного количества виртуальных машин, которое удовлетворяет требованиям критически важных пакетных процессов.
  • Служебная шина, AKS и Управляемый экземпляр SQL Azure обеспечивают высокий уровень доступности и возможности восстановления в географических регионах.

Операционный

  • Шаблоны Azure Resource Manager (шаблоны ARM) предоставляют язык конфигурации для описания ресурсов в шаблонах, которые можно использовать для развертывания по сценарию. Эти шаблоны также предоставляют возможности мониторинга и оповещения.

Уровень производительности

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

Масштабируемость

  • Служебная шина, AKS и другие функции Azure PaaS динамически масштабируются по мере необходимости.

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

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

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

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

Функции автомасштабирования кластеров AKS, а также другие функции платформы Azure как услуги (PaaS), обеспечивающие масштабирование по запросу, помогают свести расходы к минимуму.

Ниже приведены рекомендации по ценам для конкретных компонентов.

  • На большинстве предприятий уже реализована служба Microsoft Active Directory. Если нет, Microsoft Entra ID P1 или P2 является низкой стоимостью.
  • Цена виртуальной машины Windows или виртуальной машины Linux зависит от объема вычислений.
  • Стоимость дисков для управляемого хранилища на базе SSD цен. категории "Премиум" или "Ультра" см. на странице Цены Управляемых дисков.
  • База данных SQL Azure не требует первоначальных затрат; оплачиваются только ресурсы по мере использования.
  • Для ExpressRoute взимается ежемесячная плата за использование портов, а также плата за передачу исходящих данных.
  • Затраты на службу хранилища Azure зависят от параметров избыточности данных и от тома.
  • На стоимость Файлов Azure влияет много факторов: объем и избыточность данных, объем транзакций и количество используемых серверов синхронизации файлов.
  • Сведения о ценах на управляемые диски SSD см. на странице Цены Управляемых дисков.
  • В отношении Site Recovery плата взимается за каждый защищенный экземпляр.
  • Эти службы бесплатны с подпиской Azure, но вы оплачиваете использование и трафик:

Следующие шаги