企业文化

使用无服务器数据归档降低存档成本 体系结构博客

服务器无状态数据归档的成本降低

作者 Rostislav Markov 和 Davd Ramrez日期 2023年7月7日分类 Amazon API Gateway Amazon Athena Amazon DynamoDB Amazon Simple Storage Service (S3) 架构 AWS 数据库迁移服务 AWS DataSync AWS Glue AWS Lambda AWS Snowball永久链接 分享

关键要点

合规性需求 在金融服务和保险市场的核心业务系统退役后,数据需要在多年后仍可访问。传统方案缺陷 许多公司依赖第三方服务或昂贵的软件进行数据归档。推荐的成本高效方案 使用AWS的无服务器数据归档解决方案,可以将成本降低至第三方替代方案的五分之一。AWS服务构建 通过AWS Simple Storage Service (S3)、AWS Glue等服务构建现代化的数据归档与检索解决方案。

对于金融服务和保险市场,出于合规原因,退役的核心业务系统需要在多年后依然能够访问相关数据。传统上,金融服务和保险公司会将数据归档外包给第三方服务提供商,后者管理应用程序的副本,或者购买供应商软件以查询和可视化归档数据。

在此博客中,我们介绍了一种更具成本效益的选择,即在AWS上采用无服务器的数据归档。在我们的经验中,你可以在 Amazon Simple Storage Service (Amazon S3) 上构建属于自己的云原生解决方案,成本仅为第三方替代方案的五分之一。如果你正在退役遗留的核心业务系统,可以考虑无服务器数据归档,以节省成本并保持合规。

无服务器数据归档和检索

现代归档解决方案遵循现代应用的原则

无服务器优先开发,以减少管理开销。云原生,利用AWS服务的原生功能,如备份和灾难恢复,避免自定义构建。基于消费的定价,因数据归档的使用频率不稳定。交付速度,因为实现和归档操作需要迅速完成以满足合规要求。灵活的数据保留政策可以以自动化的方式执行。

AWS的存储和分析服务提供了构建现代无服务器归档和检索解决方案所需的基础构件。

数据归档可以建立在Amazon S3和 AWS Glue

步骤描述1Amazon S3存储层可以启用不同的数据保留政策和检索服务级别协议(SLA)。你可以使用 AWS 数据库迁移服务 将数据迁移到Amazon S3;如果不是,则考虑其他数据传输服务,如 AWS DataSync 或 AWS Snowball。2AWS Glue爬虫自动推断Amazon S3中的数据库和表模式,并将相关元数据存储在 AWS Glue 数据目录 中。3Amazon CloudWatch 监控AWS Glue爬虫的执行情况,并在发生故障时发送通知。

图1提供了该解决方案的概述。

一旦归档数据被归档, Amazon Athena 可以用于使用标准SQL进行无服务器的数据查询操作。

步骤描述1Amazon API Gateway 接受数据检索请求,通过REST、HTTPS或WebSocket简化与其他系统的集成。2AWS Lambda 从Amazon S3中读取参数数据/模板,以构建SQL查询。你也可以将查询模板存储为键值项在NoSQL存储中,例如 Amazon DynamoDB。3Lambda函数使用构建的SQL查询触发Athena。4Athena利用AWS Glue 数据目录检索Amazon S3归档数据的表元数据,并返回SQL查询结果。

如何构建无服务器数据归档

在早期的构建或购买评估中,我们比较了供应商产品与使用Amazon S3、AWS Glue以及用于数据检索和可视化的用户前端构建的自定义解决方案。

针对一个保险核心系统政策管理系统,在10年期的总拥有成本为25万美元,相较于第三方替代方案的超过110万美元。自定义解决方案的实施成本优势源于使用AWS服务的开发效益。较低的运行成本得益于归档使用频率的降低以及按需计费。

数据归档解决方案使用AWS服务实施图2:

步骤描述1Amazon S3用于以Parquet格式持久化归档数据经过优化以进行分析并压缩以减少存储空间,该数据是从遗留的保险核心系统中加载的。归档数据源为AS400/DB2,通过 Informatica Cloud 转移至Amazon S3。2AWS Glue爬虫从Amazon S3的对象中推断数据库模式,并为退役应用数据创建AWS Glue中的表。3Lambda函数使用Python根据为每个领域例如客户、政策、索赔和收据配置的保留政策删除数据记录。每日作业ControlM启动保留过程。

图2 针对保险核心系统的无服务器数据归档和检索的示例实现

飞鸟加速器npv下载官网

检索操作通过Lambda中的Python函数进行公式化和执行。以下AWS资源实现了检索逻辑:

使用无服务器数据归档降低存档成本 体系结构博客步骤描述1Athena用于对已退役应用的AWS Glue表运行SQL查询。2Lambda函数使用Python构建并执行数据检索查询。这些函数使用Jinja模板引擎和Athena查询结果呈现HTML片段,返回填充有请求的归档数据的选定模板。使用 Jinja模板引擎 提高了交付速度,并减少了前端和后端在建模检索操作时的繁重工作量约30,这是由于应用层之间的解耦。结果,工程师只需构建与链接的Jinja模板相结合的Athena查询。3Amazon S3存储用于查询参数的模板配置和查询JSON文件。4Amazon API Gateway作为API调用的单一入口。

用于数据检索和可视化的用户前端实现为使用 React JavaScript库 的web应用静态内容存放在Amazon S3上,并通过Amazon CloudFront用于Web内容传递。

该归档解决方案使得80个用例得以实现,60个查询,且将存储从来源的三TB减少到Amazon S3上的35GB。实现的成功依赖于以下关键因素:

全方位的业务赞助索赔、精算、合规等定义对法院、监管机构等的响应服务级别协议(SLA)最小可行和强制性的方法早期原型可视化快速失败

结论

传统上,金融服务和保险公司依赖于供应商产品进行数据归档。在本文中,我们探讨了如何在Amazon S3上构建可扩展的解决方案,并讨论了关键的实施考量。我们展示了AWS服务使金融服务与保险公司能够以较低的成本构建无服务器归档解决方案,同时实现并保持合规。

了解更多关于本文所涵盖的AWS服务

管理您的存储生命周期使用Amazon Athena查询Amazon S3存储清单

Rostislav Markov

Rostislav是AWS专业服务的首席架构师。作为AWS行业的技术领导者,他与AWS客户和合作伙伴共同致力于云转型项目。在工作之外,他喜欢与家人一起户外活动、打网球和滑雪。

Davd Ramrez

Davd Ramrez拥有超过20年的软件架构和架构领导经验,曾在Capgemini、Getronics和Liberty Insurance工作。他热衷于建立和发展技术团队,并与家人在西班牙马德里生活。