数据湖架构 - 常规 SAP 指南

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

数据湖架构

数据湖架构提供了构建块,用于演示如何使用分析和机器学习服务,合并和整合来自不同来源的 SAP 和非 SAP 数据。AWS

利用数据湖,客户可以处理结构化数据和非结构化数据。它基于 “schema-on-read” 方法设计,这意味着数据可以以原始形式存储,并且仅在使用时应用架构或结构(即:创建财务报告)。结构在从数据来源读取数据时进行定义,此时会确定数据类型和长度。因此,存储与计算实现解耦,依托低成本存储方案来扩展至 PB 级规模,且成本仅为传统数据库成本的一小部分。

借助数据湖,组织可以执行各类分析任务,例如创建交互式控制面板、生成可视化见解、处理大规模数据、开展实时分析,以及在各类数据来源中实施机器学习算法。

数据湖架构

数据湖参考架构提供了三个不同的层,可将原始数据转化为有价值的见解:

原始层

原始层是数据湖中的初始层,基于 Amazon S3 而构建,来自源系统的数据会以原始格式直接进入该层,而不经过任何转换。该层的数据用于确定变更以及需整合到下一层的数据,这是因为原始层将包含同一数据的多个版本(变更、完全加载等)。

从 SAP 提取的数据(通过 SAP ODP OData 或其他机制)需要做好进一步处理的准备。提取的数据将被打包成多个文件(文件数由提取工具中的数据包大小或页面大小决定),因此,单次提取操作可能会生成多个文件。

扩充层

扩充层基于 Amazon S3 构建,包含源 SAP 系统中数据的真实呈现以及逻辑删除内容,并以内置 Apache Iceberg 格式存储在 Amazon S3 表类数据存储服务中。Iceberg 表文件格式支持在 Glue Data Catalog 中创建 Glue 或 Athena 表,可实现插入、更新和删除等数据库类型操作,其中文件操作(如记录删除等)采用 Iceberg 文件格式进行处理。此外,Iceberg 表还支持时间迁移概念,能够查询特定时间点的数据。

来自原始层的数据会基于表键按正确顺序插入或更新至扩充层,并以原始格式保留(不进行任何转换或修改)。每条记录均需补充特定属性,例如提取时间和记录编号,此操作可通过 AWS Glue 作业实现。

精选层

精选层用于存储数据以供使用。在此层上,将物理删除已从来源中删除的记录。任何计算结果(如平均值、日期间隔等)或数据操作(如格式更改、从其他表中查找等)均可存储在此层以供使用。使用AWS Glue 作业更新此层中的数据。基于这些数据表创建的 Amazon Athena 视图可通过 Amazon Quick Sight 或类似工具以供下游使用。

包含 SAP 和非 SAP 数据的数据湖AWS解决方案指南》提供了详细的架构、实施步骤以及用于快速跟踪 SAP 和非 SAP 数据数据湖实施的加速器。有关将数据从 SAP 提取到数据湖的各种可用方案,可参考前面的“数据集成”部分。