[SEO 副标题]
本指南演示了如何在 AWS 上构建针对保险行业的现代无服务器数据湖。它使您能够从不同的核心系统和第三方收集数据,设置自助数据访问,并为推动明智决策的商业智能(BI)和机器学习(ML)功能奠定基础。本指南通过数据湖架构模式帮助您有效利用数据,该模式让您能够快速开始使用云,从而缩短从数据中提取价值所需的时间。
请注意:[免责声明]
架构图
[架构图描述]
第 1 步
业务分析师使用存储在 Amazon Simple Storage Service(Amazon S3)存储桶中的低代码配置文件定义数据管道操作。数据来源将源数据文件(例如策略和声明)上传到 Collect S3 存储桶。
第 2 步
ObjectCreated 事件调用 AWS Lambda 函数,该函数从传入的源数据中读取元数据、记录所有操作并启动 AWS Step Functions 工作流。
第 3 步
Step Functions 调用 AWS Glue 作业,将数据映射到预定义的数据字典。然后,这些作业将对清理和消耗层执行转换和数据质量检查。
第 4 步
Amazon DynamoDB 包含查找和多重查找转换使用的查找值;提取、转换、加载(ETL)元数据(例如作业审计日志、数据世系输出日志和数据质量结果)都在此处写入。
第 5 步
AWS Glue 作业将清理和整理的数据作为压缩的分区 Apache Parquet 文件存储在 Amazon S3 中。AWS Glue 作业还会创建和更新 AWS Glue Data Catalog 数据库和表。
第 6 步
AWS Glue 作业将源数据文件验证失败存储在 Amazon S3 隔离文件夹和 Data Catalog 表中,这些表可以填充异常队列控制面板,允许人工查看并采取适当的措施。
第 7 步
Amazon Athena 使用 Data Catalog 数据库和表运行 SQL 查询。
第 8 步
Amazon QuickSight 控制面板和报告近乎实时或按计划从数据湖中提取数据。
第 9 步
AWS CodePipeline 管理基础设施、应用程序和管道配置的整个 DevSecOps 周期。
Well-Architected 支柱
当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
-
卓越运营
Lambda 函数、Step Functions 状态机和 AWS Glue 作业输出日志会整理 Amazon CloudWatch Logs 中的诊断和状态信息。存储在 DynamoDB 中的数据世系、作业审计数据和数据质量结果支持将指标和审计数据发布到运营控制面板。使用 CodePipeline 自动部署数据湖环境以及以一致方式跨堆栈对基础设施和 ETL 资源进行标记,有助于在 AWS Cloud Development Kit(AWS CDK)中进行集中自定义设置。CloudWatch 中针对 Step Functions、Lambda 和 AWS Glue 的诊断日志和指标提供近乎实时的透明度,有助于有效监控数据管道作业进度和性能。
-
安全性
屏蔽对 S3 存储桶的公共访问,要求对传输中数据进行加密,以及使用 AWS Key Management Service(AWS KMS)进行服务器端加密可保护静态数据。对所有 S3 存储桶的访问都记录在专用的访问日志存储桶中,以便审查和维护权限。AWS Glue 作业中的内置数据掩蔽和哈希转换可保护敏感数据,而定期自动执行数据管道可减少手动错误或未经授权的访问风险。
-
可靠性
Amazon S3(可跨多个可用区存储数据)和 DynamoDB(可自动跨三个可用区复制数据)固有的持久性和可用性增强了可靠性。Amazon S3 版本控制可保留、检索和恢复对象的每个版本,DynamoDB 删除保护则可以保护生产环境。此外,CodePipeline 和基础设施即代码可轻松跨多个区域和账户复制资源。
-
性能效率
经过优化的 AWS Glue 作业可最大限度地减少数据处理单元(DPU)所消耗的时间,而用于清理和消耗层的高效 Amazon S3 存储可加快数据扫描和查询速度。DynamoDB 可高效存储数据世系、数据质量结果、作业审计数据、查找转换数据和标记化源数据,并提供可扩展性和低延迟性能。Athena 和 AWS Glue 的无服务器特性可在不移动数据的情况下实现高效的数据访问。
-
成本优化
Amazon S3 生命周期策略会自动将数据传输到 Amazon S3 Glacier 存储,DynamoDB 表则可以根据需要使用按需容量模式和不频繁访问存储类。DynamoDB 生存时间(TTL)会自动删除过期项目,AWS Glue DPU 则会自动扩缩和弹性设置容量以调整计算资源的大小。Amazon S3、AWS Glue 和 DynamoDB 等完全托管的无服务器服务仅对已消耗的资源收费,无需基础设施维护开销,因而可以优化成本。
-
可持续性
用于在清理和消耗 S3 存储桶中存储数据的高效 Parquet 文件格式可降低查询数据的能源影响。与本地或预配置的数据库服务器相比,DynamoDB 的无服务器设计和按需容量模式可最大限度地减少碳足迹。使用 AWS Graviton 处理器的 Lambda 函数比传统计算机工作负载更节能。完全托管的无服务器服务有助于确保数据湖仅在需要时消耗资源,从而最大限度地减少对环境的影响。
相关内容
免责声明
示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。
本指南中提及第三方服务或组织并不意味着 Amazon 或 AWS 与第三方之间存在认可、赞助或从属关系。AWS 的指导是一个技术起点,您可以在部署架构时自定义与第三方服务的集成。