你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

大容量批处理事务处理

Azure Kubernetes 服务 (AKS)
Azure 服务总线
Azure 虚拟机

体系结构使用 AKS 实现处理大量事务的应用程序的计算群集。 应用程序从服务总线主题或队列接收消息中的事务。 这些主题和队列可以位于不同地理区域的 Azure 数据中心,多个 AKS 群集可以从中读取输入。

注意

此体系结构适用于在 IBM 大型机上使用面向消息的中间件的 IBM MQ 系列实现的批处理事务处理。

建筑

使用 AKS 和服务总线实现的体系结构关系图。

下载此体系结构的 Visio 文件

Workflow

关系图中的编号圆对应于以下列表中的编号步骤。

  1. 体系结构使用服务总线主题和队列来组织批处理输入,并将其传递到下游进行处理。
  2. Azure 负载均衡器(第 4 层(TCP、UDP)负载均衡器,在负载均衡集中定义的服务正常实例之间分配传入流量。 负载均衡和管理连接优化处理。
  3. AKS 群集工作器节点侦听服务总线队列终结点以获取输入。
  4. Java 节点使用 Java 消息服务连接到服务总线,Java 数据库连接等 Java 接口连接到其他数据源。 它们根据需要使用其他 Java API。
  5. 可恢复事务随每个批处理步骤的业务代码一起运行。
  6. 批处理基础结构使用 Azure 加速网络来加快速度。
  7. Azure Redis 缓存、Azure Cosmos DB 和 Azure 流分析根据需要提供工作存储。
  8. 永久性数据层使用 Azure 数据工厂进行数据集成,使用 Azure SQL 托管实例(业务关键性能层)实现高可用性。 永久存储是松散耦合的,以便轻松切换到其他数据库技术,并用于优化存储组织(例如使用分片或分区)。
  9. 数据解决方案(过渡和永久性)使用 Azure 存储异地冗余存储(GRS)选项来防范灾难性故障。

组件

  • Azure Bastion 是一种平台即服务(PaaS),提供对虚拟机(VM)的专用和完全托管的远程桌面协议(RDP)和安全外壳(SSH)访问。 在此体系结构中,Azure Bastion 允许安全管理对 VM 的访问,而无需将其公开到公共 Internet。

  • Azure Blob 存储 是一种云对象存储服务,可为云原生工作负荷、存档、数据湖、高性能计算和机器学习提供可缩放且安全的基于 REST 的对象存储。 在此体系结构中,Blob 存储为批处理输入、输出和中间数据文件提供可缩放存储。

  • Azure Cache for Redis 是一种完全托管的内存中缓存服务,用于在计算资源之间共享数据和状态。 在此体系结构中,Azure Redis 缓存提供高速临时存储,用于批处理状态和中间结果。

  • Azure Cosmos DB 是一个全球分布式多模型 NoSQL 数据库,具有任何规模的开放 API。 在此体系结构中,Azure Cosmos DB 提供可缩放的 NoSQL 存储,用于批处理元数据和工作数据。

  • Azure Databricks 是基于 Apache Spark 的分析平台,提供大数据分析服务。 在此体系结构中,Azure Databricks 可用于批处理结果的高级分析和机器学习。

  • Azure ExpressRoute 是一种连接服务,可在 Azure 数据中心与本地基础结构之间提供专用连接。 在此体系结构中,ExpressRoute 为需要访问本地数据源的批处理应用程序启用高带宽、低延迟的连接。

  • Azure 文件 存储是一项云文件存储服务,在云中提供简单、安全且无服务器的企业级文件共享。 使用行业标准服务器消息块(SMB)和网络文件系统(NFS)协议访问共享。 在此体系结构中,Azure 文件存储为需要基于文件的数据访问的批处理应用程序提供共享文件存储。

  • Azure Kubernetes 服务(AKS) 是用于部署和管理容器化应用程序的托管 Kubernetes 服务。 在此体系结构中,AKS 提供容器业务流程平台,用于大规模运行批处理应用程序。

  • 负载均衡器 是一项负载均衡服务,它提供低延迟第 4 层(TCP、UDP)负载均衡功能,以平衡 VM 之间的流量,以及跨多层混合应用之间的流量。 在此体系结构中,负载均衡器在正常的批处理实例之间分配传入流量,以优化性能。

  • Azure 托管磁盘 是 VM 的高性能、高度持久块存储卷。 云有四个磁盘存储选项:Azure 超级磁盘存储、Azure 高级 SSD、Azure 标准 SSD 和 Azure 标准 HDD。 在此体系结构中,Azure 托管磁盘为批处理应用程序和临时数据提供持久性存储。

  • Azure 网络接口 是将 VM 连接到 Internet 和 Azure 和本地资源的组件。 可以为每个子 VM 提供自己的网络接口和 IP 地址。 在此体系结构中,网络接口支持批处理 VM 与服务总线消息传送系统之间的连接。 有关网络接口的详细信息,请参阅 创建、更改或删除网络接口

  • Azure SQL 是一系列 SQL 云数据库,可为整个 SQL 项目组合提供统一的体验,以及从边缘到云的各种部署选项。 在此体系结构中,Azure SQL 为批处理应用程序提供关系数据库服务。

  • Azure 存储 是一种云存储服务,提供多个存储解决方案,包括 blob、文件、队列和表存储。 Azure 存储的 GRS 选项在主要区域中的单个物理位置内同步复制数据三次,然后将其异步复制到次要区域中的单个物理位置。 有关详细信息,请参阅 Azure 存储冗余。 在此体系结构中,使用 GRS 的 Azure 存储为批处理数据提供高度持久存储,并防止灾难性故障。

  • Azure 虚拟机 是一项云计算服务,可提供虚拟化的灵活性,而无需提供和维护托管它的硬件。 操作系统选项包括 Windows 和 Linux。 在此体系结构中,虚拟机为批处理应用程序和支持服务提供计算基础结构。

    使用加速网络创建的 VM 使用单根输入/输出虚拟化(SR-IOV),从而提高其网络性能。 有关详细信息,请参阅使用 Azure PowerShell 和 SR-IOV 概述创建具有加速网络的 Windows VM。 在此体系结构中,加速网络增强了处理大量批处理事务的 VM 的网络性能。

  • Azure 虚拟网络 是一种云网络服务,在云中提供安全的专用网络。 它可以将 VM 相互连接、Internet 和本地网络。 在此体系结构中,虚拟网络为批处理基础结构提供安全的网络隔离,并支持 AKS 群集和其他 Azure 服务之间的通信。

  • 数据工厂 是一种基于云的数据集成服务,完全托管且无服务器,可用于大规模准备和转换所有数据。 数据工厂支持 Parquet 格式。 此支持为批处理作启用高效的列式数据处理。 在此体系结构中,数据工厂协调用于批处理输入和输出的数据集成工作流。

  • Log Analytics 是 Azure 门户中的一种工具,可用于在 Azure Monitor 日志上编辑和运行日志查询。 在此体系结构中,Log Analytics 为批处理作提供集中式日志记录和监视功能。

  • 服务总线 是一种云消息传送服务,提供可靠的云消息传递即服务(MaaS)和简单的混合集成。 在此体系结构中,服务总线将事务消息传送到 AKS 群集,并确保批处理工作负荷的可靠消息处理。

  • SQL 托管实例 是一种托管数据库服务,它提供安全且始终 up-to云中的 SQL 实例。 在此体系结构中,SQL 托管实例为永久性数据存储提供具有业务关键性能层的高可用性数据库服务。

  • 流分析 是一项服务,提供实时分析,用于从应用程序和设备快速移动数据流。 在此体系结构中,流分析处理来自批处理作的流数据进行实时监视和分析。

方案详细信息

在 Azure 上,可以使用基于 Microsoft Azure Kubernetes 服务(AKS)和 Azure 服务总线的体系结构实现批量事务处理,例如将付款发布到帐户。 这种类型的体系结构提供大容量批处理所需的事务处理速度、缩放和可靠性。

通常,消息将保持排队,直到其事务完成,允许在发生故障时进行恢复。 此外,还可以将主题和队列复制到其他区域,以共享工作负荷并继续处理,即使某个区域发生故障也是如此。

潜在的用例

该解决方案非常适合金融、教育和科学产业。 此体系结构适用于批量处理事务,尤其是可以并行处理的独立事务。 因此,它可能是迁移大型机批处理时使用的候选项。 可能的应用程序包括:

  • 处理财务交易,如工资单、订单和付款。
  • 处理由科学仪器收集的实验数据。
  • 其他大型机批处理。

考虑

这些注意事项实现 Azure Well-Architected 框架的支柱,这是一组指导原则,可用于提高工作负荷的质量。 有关详细信息,请参阅 azure Well-Architected FrameworkMicrosoft。

可靠性

可靠性可确保应用程序能够履行对客户的承诺。 有关详细信息,请参阅 可靠性的设计评审清单。

  • Azure Site Recovery 灾难恢复服务可防止发生重大中断。 它可靠、经济高效且易于部署。
  • VM 的可用性集可确保有足够的 VM 来满足任务关键批处理需求。
  • 服务总线、AKS 和 Azure SQL 托管实例跨地理区域提供高可用性和可恢复性。

安全性

安全性提供针对故意攻击和滥用宝贵数据和系统的保证。 有关详细信息,请参阅 安全的设计评审清单。

  • 服务总线批处理体系结构中的所有组件都适用于 Azure 安全组件,例如Microsoft Entra ID、虚拟网络和加密。

成本优化

成本优化是研究减少不必要的开支和提高运营效率的方法。 有关详细信息,请参阅 成本优化的设计评审清单。

若要估算此解决方案的实现成本,请使用 定价计算器

AKS 群集的自动缩放功能以及其他提供按需缩放的 Azure 平台即服务(PaaS)功能将成本保持在最低水平。

下面是特定组件的定价注意事项:

卓越运营

卓越运营涵盖部署应用程序并使其在生产环境中运行的运营流程。 有关详细信息,请参阅 卓越运营的设计评审清单。

性能效率

性能效率是工作负荷的缩放能力,以满足用户以高效方式满足它的需求。 有关详细信息,请参阅 性能效率的设计评审清单。

  • 该体系结构旨在适应独立事务的并行处理。
  • 服务总线、AKS 和其他 Azure PaaS 功能为事务处理、计算和数据存储提供高性能。
  • 服务总线、AKS 和其他 Azure PaaS 功能根据需要动态缩放。

后续步骤