使用 Qlik 将大型机和中型机数据复制到 Azure
此解决方案使用 Qlik 的本地实例将本地数据源实时复制到 Azure。
注释
将 “Qlik” 发音为 “click”。
Apache® 和 Apache Kafka® 是 Apache Software Foundation 在美国和/或其他国家/地区的商标或注册商标。 使用这些标记并不暗示获得 Apache Software Foundation 的认可。
建筑
下载此体系结构的 Visio 文件。
工作流程
主机代理: 本地系统上的主机代理从 Db2、信息管理系统 (IMS) 和虚拟存储访问方法 (VSAM) 数据存储中捕获更改日志信息,并将其传递到 Qlik 复制服务器。
复制服务器: Qlik 复制服务器软件将更改日志信息传递到 Kafka 和 Azure 事件中心。 在此示例中,Qlik 位于本地,但您可以将其部署在 Azure 中的虚拟机上。
推流: Kafka 和事件中心提供消息代理来接收和存储更改日志信息。
Kafka 连接: Kafka Connect API 从 Kafka 接收数据以更新 Azure 数据存储,例如 Azure Data Lake Storage、Azure Databricks 和 Azure Synapse Analytics。
Data Lake Storage: Data Lake Storage 是更改日志数据的暂存区域。
Azure Databricks: Azure Databricks 处理更改日志数据并更新 Azure 上的相应文件。
Azure 数据服务: Azure 提供以下高效的数据存储服务。
关系数据库服务:
- Azure 虚拟机中的 SQL Server
- Azure SQL 数据库
- Azure SQL 托管实例
- 适用于 PostgreSQL 的 Azure 数据库
- 适用于 MySQL 的 Azure 数据库
- Azure Cosmos DB(Azure 宇宙数据库)
选择数据存储服务时,需要考虑许多因素。 考虑工作负载类型、跨数据库查询、两阶段提交要求、访问文件系统的能力、数据量、所需的吞吐量和延迟。
Azure Cosmos DB: Azure Cosmos DB 是一种 NoSQL 数据库,可在任何规模下提供快速响应、自动可伸缩性和有保证的速度。
Azure Synapse Analytics: Azure Synapse Analytics 是一种分析服务,它结合了数据集成、企业数据仓库和大数据分析。 使用它可以通过大规模使用无服务器或专用资源来查询数据。
Microsoft 结构: Microsoft Fabric 是面向企业的一体化分析解决方案。 它涵盖了从数据移动到数据科学、实时分析和商业智能的所有内容。 它提供一整套服务,包括数据湖、数据工程和数据集成。
组件
此体系结构由多个 Azure 云服务组成,并分为四类资源:网络和标识、应用程序、存储和监视。 以下部分介绍每个资源的服务及其角色。
网络和标识
在设计应用程序架构时,必须优先考虑网络和身份组件,以帮助确保通过公共 Internet 或私有连接进行交互期间的安全性、性能和可管理性。
Azure ExpressRoute 通过连接提供商的专用连接将本地网络扩展到 Microsoft 提供的云服务中。 使用 ExpressRoute 建立与 Azure 和 Microsoft 365 等云服务的连接。
Azure VPN 网关 是一种特定类型的虚拟网络网关,它通过公共 Internet 在 Azure 虚拟网络和本地位置之间发送加密流量。
Microsoft Entra ID 是一种身份和访问管理服务,可以与本地 Active Directory 同步。
应用程序
Azure 提供的托管服务支持更安全、可缩放和更高效的应用程序部署。 此体系结构使用应用程序层服务,可帮助您优化应用程序体系结构。
事件中心 是一个大数据流式处理平台和事件摄取服务,可以存储 Db2、IMS 和 VSAM 更改数据消息。 它每秒可以接收和处理数百万条消息。 您可以使用实时分析提供程序或自定义适配器转换和存储事件中心数据。
Apache Kafka 是一个开源分布式事件流平台,用于高性能数据管道、流分析、数据集成和任务关键型应用程序。 它可以轻松地与 Qlik 数据集成集成以存储 Db2 更改数据。
Data Lake Storage 提供了一个数据湖,用于存储已处理的本地更改日志数据。
Azure Databricks 是基于 Apache Spark 构建的基于云的数据工程工具。 它可以处理和转换大量数据。 您可以使用机器学习模型来浏览数据。 作业可以用 R、Python、Java、Scala 和 Spark SQL 编写。
存储和数据库
此架构解决了可扩展且更安全的云存储以及托管数据库问题,以实现灵活和智能的数据管理。
Azure 存储 是一组可大规模缩放且更安全的云服务,适用于数据、应用和工作负载。 其中包括 Azure 文件存储、Azure 表存储和 Azure 队列存储。 Azure 文件存储是迁移大型机工作负载的有效工具。
Azure SQL 是一系列 SQL 云数据库,为应用程序迁移、现代化和开发提供了灵活的选项。 该系列包括:
Azure Cosmos DB 是一项完全托管的 NoSQL 数据库服务,具有适用于 MongoDB 和 Cassandra 的开源 API。 可以使用它将大型机非表格数据迁移到 Azure。
Azure Database for PostgreSQL 是一种完全托管、智能且可缩放的 PostgreSQL,它与 Azure 服务建立本机连接。
Azure Database for MySQL 是一个完全托管的可缩放 MySQL 数据库。
监测
监控工具提供全面的数据分析和对应用程序性能的宝贵见解。
Azure Monitor 是一个全面的解决方案,用于从云和本地环境收集、分析和处理遥测数据。 其中包括:
Application Insights,用于分析和呈现遥测数据。
Azure Monitor 日志,用于从受监视的资源收集和组织日志和性能数据。 可以将来自 Azure 平台日志、虚拟机代理和应用程序性能等源的数据合并到一个工作区中进行分析。 查询语言支持分析您的记录。
Log Analytics,可以查询 Azure Monitor 日志。 强大的查询语言允许您联接来自多个表的数据、聚合大型数据集,并使用最少的代码执行复杂的作。
替代方案
上图显示了本地安装的 Qlik。 此方法是推荐的最佳实践,以使 Qlik 靠近本地数据源。 另一种方法是将 Qlik 安装在 Azure 虚拟机上的云中。
Qlik Data Integration 可以将数据直接交付到 Azure Databricks,而无需通过 Kafka 或事件中心。
Qlik Data Integration 无法将数据直接复制到 Azure Cosmos DB,但您可以使用事件溯源架构将 Azure Cosmos DB 与事件中心集成。
方案详细信息
许多组织使用大型机和中型机系统来运行要求苛刻的关键工作负载。 大多数应用程序使用共享数据库,通常跨多个系统。 在这种环境中,现代化到云意味着必须将本地数据提供给基于云的应用程序。 因此,数据复制成为一种重要的现代化策略。
Qlik Data Integration 平台包括 Qlik Replicate,它执行数据复制。 它使用变更数据捕获将本地数据存储实时复制到 Azure。 更改数据可以来自 Db2、IMS 和 VSAM 更改日志。 这种复制技术消除了不方便的批量批量加载。 此解决方案使用 Qlik 的本地实例将本地数据源实时复制到 Azure。
可能的用例
此解决方案可能适用于:
需要将数据更改从大型机或中型机系统复制到 Azure 数据库的混合环境。
从 Db2 到 Azure SQL 数据库的在线数据库迁移,停机时间短。
将数据从各种本地数据存储复制到 Azure 以进行整合和分析。
注意事项
这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改进工作负荷质量的指导原则。 有关详细信息,请参阅 Well-Architected Framework。
可靠性
可靠性有助于确保应用程序能够履行对客户的承诺。 有关详细信息,请参阅可靠性设计评审核对清单。
Qlik Data Integration 可以在 high-availability 集群中配置。
Azure 数据库服务支持区域冗余,并且可以设计为在维护时段或发生中断时故障转移到辅助节点。
安全
安全性提供针对故意攻击和滥用宝贵数据和系统的保证。 有关详细信息,请参阅可靠性设计审查检查表。
ExpressRoute 提供从本地到 Azure 的专用高效连接,但你可以改用 站点到站点 VPN 。
可以使用 Microsoft Entra ID 对 Azure 资源进行身份验证,并通过基于角色的访问控制来管理权限。
Azure 数据库服务支持各种安全选项,例如:
静态数据加密。
动态数据掩码。
始终加密的数据库。
有关详细信息,请参阅 Azure 安全文档。
成本优化
成本优化侧重于减少不必要的开支和提高运营效率的方法。 有关详细信息,请参阅成本优化设计评审核对清单。
使用 Azure 定价计算器 估算实施的成本。
卓越运营
卓越运营涵盖了部署应用程序并使其在生产环境中保持运行的运营流程。 有关详细信息,请参阅设计卓越运营的审查清单。
可以结合使用 Application Insights 和 Log Analytics 功能来监视 Azure 资源的运行状况。 您可以设置警报,以便主动管理问题。
性能效率
性能效率是指工作负荷能够高效地缩放以满足用户需求。 有关详细信息,请参阅性能效率设计评审核对清单。
Azure Databricks、Data Lake Storage 和其他 Azure 数据库服务具有自动缩放功能。 有关详细信息,请参阅 自动缩放。
供稿人
Microsoft维护本文。 以下参与者撰写了本文。
主要作者:
- Nithish Aruldoss | 工程架构师
- Ashish Khandelwal | 首席工程体系结构经理
要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。
后续步骤
- Qlik 数据集成平台
- 推出新的 Azure 分析计划(PDF 数据表)
- 什么是 ExpressRoute?
- 事件中心:支持本机 Apache Kafka 的实时数据流平台
- 存储简介
- 什么是 Azure SQL 数据库?
- Azure Cosmos DB
- 使用 OpenTelemetry 的 Application Insights 简介
- Azure Monitor 日志概览
- Azure Monitor 中的日志查询
- 联系我们 (选择创建电子邮件)
相关资源
- 实现大型机和中型机数据现代化
- 在 Azure 上重新设计大型机批处理应用程序
- 在 Azure 中复制和同步大型机数据
- 在 Azure 上
大型机文件复制和同步