数据湖生命周期 - Amazon Connect 数据湖最佳实操

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

数据湖生命周期

数据湖的构建通常包含五个阶段:

  • 设置存储

  • 移动数据

  • 准备和编录数据

  • 配置安全策略

  • 提供可供使用的数据

下图是 Amazon Connect 联络中心数据湖的概要架构示意图,其中集成了 AWS 分析和人工智能/机器学习 (AI/ML) 服务。以下部分将介绍该图所示的场景和 AWS 服务。

使用 AWS 分析和人工智能/机器学习服务的 Amazon Connect 联络中心数据湖的示意图

使用 AWS 分析和人工智能/机器学习服务的 Amazon Connect 联络中心数据湖

存储

Amazon S3 是一项对象存储服务,提供行业领先的可扩展性、数据可用性、安全性和性能。S3 可提供 99.999999999% 的持久性和 99.99% 的可用性,具有强大的一致性和全球可用的无限制数据存储。您可以使用跨区域复制 (CRR) 跨多个区域的 S3 桶复制数据,以满足监管合规性和低延迟需求。S3 会自动扩展吞吐量以提高性能和运营效率。

S3 桶和对象是私有的,默认情况下将启用全球所有区域的 S3 屏蔽公共访问权限。您可以使用存储桶策略、AWS Identity and Access Management(IAM) 策略和访问控制列表 (ACLs) 对 S3 资源设置集中访问控制。您可以使用适用于 S3 的 Access Analyzer 评估和识别任何具有公共访问权限的桶。凭借对象前缀和标记,您可以按对象级别粒度管理访问控制、存储分层和复制规则。

AWS CloudTrail 会将每次 API 调用记录到 S3 服务器访问日志记录中。S3 清单会审计并报告数据的复制和加密状态。

S3 Intelligent-Tiering 可在访问模式更改时在频繁访问层和不频繁访问层之间移动数据,从而实现自动成本节约,同时不会影响性能或产生运营开销。对于极少访问且需要长期留存的对象,S3 Glacier Deep Archive 可节省最高 95% 的存储成本。

使用列式格式(如 Apache Parquet优化行列式 (ORC))存储数据,可以加快查询速度并降低 Amazon Athena 的处理成本。压缩选项(如 Snappy 和 Parquet)可降低容量需求和存储成本。

借助 S3 SelectS3 Glacier Select,您可以使用结构化查询语言 (SQL) 表达式查询对象元数据,而无需将对象移动到其他数据存储中。

S3 批量操作可自动对 S3 对象执行批量操作,例如更新对象元数据和属性、执行存储管理任务、修改访问控制以及从 S3 Glacier 恢复存档对象。

S3 接入点可简化并汇总不同团队和应用程序对 S3 上的共享数据的访问权限。每个接入点都与单个桶的唯一 DNS 名称相关联。您可以创建服务控制策略 (SCPs) 来限制访问亚马逊虚拟私有云 (Amazon VPC) 的接入点并将数据隔离在您的私有网络中。

S3 Transfer Acceleration 可在客户端环境和 S3 桶之间实现远距离的文件传输。

随着数据湖的增长,S3 Storage Lens 存储分析功能可提供整个组织范围内的对象存储使用情况和活动趋势可见性,同时给出切实可行的建议,以降低成本和运营开销。

提取

AWS 提供全套数据传输服务,可将您的现有数据移动到集中式数据湖中。Amazon Storage GatewayAWS Direct Connect 可以满足混合云存储需求。要进行在线数据传输,可以考虑使用 AWS DataSync 和 A mazon Kinesis。使用 AWS Snow 系列可进行离线数据传输。

  • AWS Storage Gateway 可将本地环境扩展到 AWS 存储,方法是将磁带库替换为云存储,从而提供支持云存储的文件共享,或者创建低延迟缓存以从本地环境访问 AWS 中的数据。

  • AWS Direct Connect 可在本地环境和 AWS 之间建立私有连接,以降低网络成本、增加吞吐量并提供稳定的网络体验。

  • AWS DataSync 可以将数百万个文件传输到 S3、A mazon Elastic Fil e System (Amazon EFS) 或亚马逊 FSx Windows 文件服务器,同时优化网络利用率。

  • Amazon Kinesis 可提供一种安全的方式来捕获流数据并将其加载到 S3。Amazon Data Firehos e 是一项完全托管的服务,用于将实时流数据直接传送到 S3。Firehose 会自动扩展以匹配流数据的数量和吞吐量,无需持续管理。在将数据存储到 S3 之前,您可以使用压缩、加密、数据批处理或 Firehose 中的AWS Lambda函数来转换流数据。Firehose 加密支持使用 () 进行的 S3 服务器端加密。AWS Key Management ServiceAWS KMS或者,您也可以使用自定义密钥对数据进行加密。Firehose 可以连接多个传入的记录并将其作为单个 S3 对象交付,以降低成本并优化吞吐量。

    AWS Snow 系列提供了一种离线数据传输机制。AWS Snowball Edge 可提供便携且坚固耐用的边缘计算设备,用于数据收集、处理和迁移。对于 EB 级的数据传输,可以使用 AWS Snowmobile 将海量数据迁移到云端。

    DistCp提供分布式复制功能,用于在 Hadoop 生态系统中移动数据。S3 DisctCp 是 DistCp 针对在 Hadoop 分布式文件系统 (HDFS) 和 S3 之间移动数据进行了优化的扩展。本博客提供了有关如何使用 S3 在 HDFS 和 S3 之间移动数据的信息。DistCp

编录

数据湖架构的一个常见挑战是缺乏对存储在数据湖中的原始数据内容的监督。组织需要治理能力、语义一致性和访问控制,以避免出现创建未经整理的数据沼泽的错误。

AWS Lake Formation 可通过 AWS Glue 管理数据摄取,方法是自动对数据进行分类并将定义、架构和元数据存储在中央数据目录中。Lake Formation 具有内置的机器学习功能,可删除重复数据和查找匹配记录,从而提高数据质量。为了加快分析速度,Lake Formation 会将数据转换为 Apache Parquet 和 ORC,然后再将其存储在 S3 数据湖中。您可以定义访问策略(包括表级和列级访问控制),也可以强制执行静态数据加密。通过一致的安全执行,您的用户可以使用其选择的分析和机器学习服务来访问和分析精选的集中式数据集。

AWS Glue DataBrew,一种可视化数据准备工具,允许数据所有者、主题专家或所有技能组合的用户参与数据准备过程。您的团队无需编写任何代码,即可从 250 多种预先构建的转换功能中进行选择,以自动执行数据准备任务,包括筛选数据异常、将数据转换为标准格式以及更正无效值。转换后的数据已准备就绪,可用于高级分析和机器学习项目。

安全性

Amazon Connect 按照 AWS 账户 ID 和 Amazon Connect 实例 ID 对数据进行隔离,以确保 Amazon Connect 实例级别的数据访问经过授权。

Amazon Connect 使用特定于 Amazon Connect 实例的限时密钥对个人身份信息 (PII) 联系人数据和静态客户配置文件进行加密。S3 服务器端加密使用每个 AWS 账户唯一的 KMS 数据密钥来保护语音和静态聊天录音。您可以保持完全的安全控制,配置用户对 S3 桶中的通话录音的访问权限,包括跟踪监听或删除了通话录音的人员。Amazon Connect 使用服务拥有的 KMS 密钥对客户声纹进行加密,以保护客户身份。Amazon Connect 与其他 AWS 服务或外部应用程序之间交换的所有数据在传输过程中始终使用符合行业标准的传输层安全性协议 (TLS) 加密进行加密。

保护数据湖需要精细的控制,以确保数据访问和使用经过授权。S3 资源是私有的,默认情况下仅其资源所有者才能访问。资源所有者可以创建基于资源或基于身份的 IAM 策略组合,以授予和管理 S3 桶和对象的权限。基于资源的策略,例如存储桶策略和 ACLs 附加到资源。相比之下,基于身份的策略附加到 AWS 账户中的 IAM 用户、组或角色。

我们建议在大多数数据湖环境中使用基于身份的策略,以简化面向数据湖用户的资源访问管理和服务权限。您可以在 AWS 账户中创建 IAM 用户、组和角色,并将其与基于身份的策略(用于授予 S3 资源访问权限)相关联。

AWS Lake Formation 权限模型IAM 权限配合使用以管理数据湖访问权限。Lake Formation 权限模型使用数据库管理系统 (DBMS) 式的授予或撤销机制。IAM 权限包含基于身份的策略。例如,用户在访问数据湖资源之前必须通过 IAM 和 Lake Formation 权限的权限检查。

AWS CloudTrail 跟踪 Amazon Connect API 调用,包括请求者的 IP 地址和身份,以及CloudTrail 事件历史记录中请求的日期和时间。创建 AWS CloudTrail 跟踪可以将 AWS CloudTrail 日志持续传输到您的 S3 存储桶。

Amazon Athena 工作组可以使用基于资源的策略隔离查询执行并控制用户、团队或应用程序的访问权限。您可以通过限制工作组的数据使用强制进行成本控制。

监控

可观测性对于确保联络中心和数据湖的可用性、可靠性和性能至关重要。Amazon CloudWatch 提供资源利用率、应用程序性能和运行状况的全系统可视性。将来自 Amazon Connect 联系流的相关信息记录到亚马逊, CloudWatch 并在运营绩效低于预定义阈值时创建实时通知。

Amazon Connect 每隔一分钟将实例的使用数据作为亚马逊 CloudWatch 指标发送。Amazon CloudWatch 指标的数据保留期为两周。尽早定义日志留存要求和生命周期策略,确保长期数据存档的监管合规性和成本节省。

Amazon Lo CloudWatch gs 提供了一种筛选日志数据和识别违规事件的简单方法,便于事件调查并加快解决速度。您可以自定义联系流,以检测高风险呼叫方或潜在的欺诈活动。例如,您可以断开预定义“拒绝”列表中的任何呼入联系人的连接。

Analytics

基于描述性、预测性和实时分析产品组合构建的联络中心数据湖可以帮助您提取有意义的见解并对关键业务问题作出响应。

数据存入 S3 数据湖后,您可以将任何专门构建的分析服务(例如 Amazon Athena 和 A QuickSightmazon)用于各种用例,而无需劳动密集型提取、转换和加载 (ETL) 作业。或者,您可以将首选分析平应用于 S3 数据湖。请参阅此博客,了解如何使用亚马逊 AWS Glue、雅典娜和亚马逊分析 Amazon Connect 数据。 QuickSight

要获得高度可扩展的数据仓库解决方案,您可以启用 Amazon Connect 中的数据流,通过亚马逊 Kinesis 将联系人记录流式传输到亚马逊 Redshift

机器学习

构建数据湖使联络中心架构可以采用新的模式,助力贵组织使用机器学习 (ML) 功能提供增强的个性化客户服务。

传统的 ML 开发是一个复杂而昂贵的过程。AWS 可为任何 ML 项目或工作负载提供具有深度和广度的高性能、经济高效且可扩展的基础设施和灵活的 ML 服务

Amazon SageMaker AI 是一项完全托管的服务,可让您的数据科学家和开发人员针对联络中心用例大规模构建、训练和部署机器学习模型。数据准备占据了数据科学家 80% 的时间。Amazon SageMaker AI Data Wrangler 使用 300 多种内置数据转换,无需编写任何代码,即可简化并加速来自各种数据源的数据准备和功能工程。您可以将标准化功能存储在 Amazon SageMaker AI 功能商店中,以便重复使用并与组织中的其他成员共享。

减少客户旅程中的摩擦对于避免客户流失至关重要。要提升联络中心的智能水平,您可以使用 Amazon Lex 自动语音识别 (ASR) 和自然语言理解 (NLU) 功能构建 AI 驱动的对话型聊天机器人。客户无需与人工座席沟通,即可通过聊天机器人完成自助任务,例如密码重置、账户余额检查和预约安排。要自动处理联络中心的常见问题 (FAQs),你可以使用 Amazon Lex 和 Amazon Kendra 构建问答 (Q&A) 聊天机器人在 Amazon CloudWatch Logs 中启用文本记录并将音频输入保存到 S3 中,您可以分析对话流程、改进对话设计并提高用户参与度。

了解呼叫方与座席的动态对于提高整体服务质量至关重要。请参阅本博客,了解如何通过 Kinesis 视频流将录音流式传输到 Amazon Transcribe 以进行语音识别,以及如何使用 Amazon Comprehend 将音频转换为文本并对转录进行情绪分析。

对于拥有国际业务的组织,您可以使用 Amazon PollyAmazon Translate 进行语言翻译,从而在 Amazon Connect 中打造多语言语音体验

传统的财务规划软件根据历史时间序列数据创建预测,不会关联不一致的趋势和相关变量。Amazon Forecast 使用机器学习来探索时间序列数据与其他变量(如产品特征和商店位置)之间的潜在关系,其准确性提高了 50%。无需任何机器学习经验,您就可以将 S3 桶中的时间序列和关联数据提供给 Amazon Forecast,从而轻松创建座席需求或库存预测。您可以使用 Amazon Forecast 加密机密内容 AWS KMS ,并使用 IAM 策略控制对 Amazon Forecast 的访问权限。Amazon Forecast 在高度可用的环境中训练和托管自定义机器学习模型。您无需管理任何基础设施或复杂的机器学习流程,即可快速生成高度准确的业务预测。

Amazon Connect 提供来自电话运营商的呼叫属性,例如语音设备的地理位置(用于显示发起呼叫的位置)、电话设备类型(如固定电话或移动电话)、呼叫遍历的网段数量以及其他呼叫发起信息。使用完全托管的 Amazon Fraud Detector,您可以创建一个 ML 模型,通过将您的数据集与 Amazon Connect 呼叫属性相结合来识别潜在的欺诈活动。例如,您可以自定义联系流,将具有潜在欺诈迹象的电话智能地路由给专业座席。