AWS代付、代实名
阿里云国际 | 腾讯云国际

AWS Transfer Family SFTP 连接器现支持基于 VPC 的连接

AWS账单代付阅读(8)

亚马逊AWS官方博客

AWS Transfer Family SFTP 连接器现支持基于 VPC 的连接

许多组织将安全文件传输协议(SFTP)作为交换关键业务数据的行业标准。以往,要安全连接私有 SFTP 服务器,需要自定义基础设施、手动编写脚本,或者向公共互联网暴露端点。

如今,AWS Transfer Family SFTP 连接器已支持通过 Amazon Virtual Private Cloud(Amazon VPC)环境连接远程 SFTP 服务器。您可以在 Amazon Simple Storage Service(Amazon S3)与私有或公有 SFTP 服务器之间传输文件,同时应用 VPC 中已配置的安全控制策略与网络设置。此功能可帮助您整合本地环境、合作伙伴托管私有服务器或面向互联网端点的数据来源,且具备 Amazon Web Services(AWS)完全托管式服务所具有的运维简便性。

**以下是主要增强功能: SFTP 连接器的新功能

连接私有 SFTP 服务器:SFTP 连接器现在可以访问仅在您的 AWS VPC 连接范围内可见的端点,包括托管在您的 VPC 或共享 VPC 中的服务器、通过 AWS Direct Connect 连接的本地系统,以及通过 VPN 隧道连接的合作伙伴托管服务器。 安全性与合规性:所有文件传输均通过 VPC 中已应用的安全控制策略(如 AWS Network Firewall 或集中式入站/出站检测)进行路由。私有 SFTP 服务器始终保持私密状态,无需向互联网暴露。您还可提供静态弹性 IP 或自带 IP(BYOIP),以满足合作伙伴的允许列表要求。 性能与简便性:通过使用 NAT 网关、AWS Direct Connect 或 VPN 连接等自有网络资源,连接器可以利用更高的带宽能力来处理大规模传输。只需几分钟,即可通过 AWS 管理控制台、AWS 命令行界面(AWS CLI)或 AWS SDK 配置连接器,无需构建自定义脚本或使用第三方工具。 SFTP 连接器通过 Amazon VPC Lattice 资源建立基于 VPC 的安全连接。 关键结构包括 基于 VPC 的 SFTP 连接的工作原理

资源配置资源网关**。资源配置代表目标 SFTP 服务器,需通过私有 IP 地址或公有 DNS 名称指定。资源网关为 SFTP 连接器提供访问这些配置的权限,使文件传输能通过 VPC 及其安全控制策略进行。

下方的架构图描述了 Amazon S3 与远程 SFTP 服务器之间的流量流动情况。如架构所示,流量从 Amazon S3 经 SFTP 连接器进入您的 VPC。资源网关是处理连接器到 VPC 资源的入站连接的入口点。出站流量通过已配置的出站路径路由,对公共服务器使用带弹性 IP 的 Amazon VPC NAT 网关,对私有服务器使用 AWS Direct Connect 和 VPN 连接。您可以使用 VPC CIDR 范围内的现有 IP 地址,从而简化合作伙伴服务器的允许列表。VPC 中的集中式防火墙可以执行安全策略,客户自有 NAT 网关则可以为大规模传输提供更高的带宽。

**借助此功能,开发人员和 IT 管理员可以简化工作流程,同时满足各种场景下的安全性和合规性要求: 何时使用此特征

混合环境:通过 AWS Direct Connect 或 AWS Site-to-Site VPN 在 Amazon S3 与本地 SFTP 服务器之间传输文件,无需向互联网暴露端点。 合作伙伴集成:连接业务合作伙伴的 SFTP 服务器,这些服务器只能通过私有 VPN 隧道或共享 VPC 进行访问。这就无需构建自定义脚本或管理第三方工具,从而降低运维复杂度。 受监管行业:通过 VPC 中的集中式防火墙与检测点路由文件传输,以遵守金融服务、政府或医疗行业的安全要求。 高吞吐量传输:使用 NAT 网关、AWS Direct Connect 或带弹性 IP/BYOIP 的 VPN 连接等自有网络配置,处理大规模、高带宽传输,同时保留已在合作伙伴白名单中的 IP 地址。 统一文件传输解决方案:将 Transfer Family 标准化用于内部与外部 SFTP 连接,从而减少文件传输工具之间的碎片化。 要开始通过我的 VPC 环境使用 SFTP 连接器传输文件,我需要执行以下步骤: 使用 SFTP 连接器开始构建

首先,配置 VPC Lattice 资源。在 Amazon VPC 控制台导航窗格中的

PrivateLink 和 Lattice依次选择 资源网关创建资源网关,以创建一个作为 VPC 入口点的网关。接下来,在导航窗格的 PrivateLink 和 Lattice 下,依次选择 资源配置创建资源配置,为目标 SFTP 服务器创建配置。需指定私有 IP 地址或公有 DNS 名称,以及端口(通常为 22)。

然后,配置 AWS Identity and Access Management(IAM)权限。确保用于创建连接器的 IAM 角色拥有

transfer:* 权限,以及 VPC Lattice 权限(

vpc-lattice:CreateServiceNetworkResourceAssociation、

vpc-lattice:GetResourceConfiguration、

vpc-lattice:AssociateViaAWSService)。更新 IAM 角色的信任策略,将

transfer.amazonaws.com 指定为可信主体。这样,AWS Transfer Family 就能在创建和管理 SFTP 连接器时代入该角色。

之后,通过 AWS Transfer Family 控制台创建 SFTP 连接器。选择

SFTP 连接器,然后选择 创建 SFTP 连接器。在 连接器配置部分,选择 VPC Lattice 作为出站类型,然后提供 资源配置的 Amazon 资源名称(ARN)、 访问角色连接器凭证。还可根据需要包括可信主机密钥以增强安全性,或者在 SFTP 服务器使用非标准端口时覆盖默认端口。

接下来,测试连接。在

操作菜单上,选择 测试连接以确认连接器可以到达目标 SFTP 服务器。

最后,在连接器状态为

ACTIVE 后,可通过调用 Transfer Family API(如

StartDirectoryListing、

StartFileTransfer、

StartRemoteDelete 或

StartRemoteMove),以编程方式与远程 SFTP 服务器进行文件操作。所有流量均通过您配置的资源(如 NAT 网关、AWS Direct Connect 或 VPN 连接)及您的 IP 地址和安全控制策略路由至 VPC。

有关完整选项与高级工作流程的信息,请参阅 AWS Transfer Family 文档。

__现已推出__

具有基于 VPC 的连接的 SFTP 连接器现已在 21 个 AWS 区域可用。查看按区域划分的 AWS 服务,了解最新受支持的 AWS 区域。现在,您可以使用 NAT 网关、弹性 IP 和网络防火墙等自有 VPC 资源,将 AWS Transfer Family SFTP 连接器安全连接到私有服务器、本地服务器或面向互联网的服务器。

— Betty

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


汽车服务图谱增强检索方案

AWS账单代付阅读(9)

亚马逊AWS官方博客

汽车服务图谱增强检索方案

1. 概述

随着汽车智能化程度不断提升,汽车服务人员在处理客户问题过程中面临着技术文档激增、知识沉淀分散、检索效率低下等挑战。本文介绍一套基于知识图谱的汽车智能服务解决方案,通过 Amazon Neptune 构建专业的知识图谱,参考了开源项目LightRAG的设计理念,帮助提升汽车服务效率和质量。

2. 背景与挑战

2.1 行业现状

近年来,汽车智能化程度显著提升,售后服务面临着前所未有的挑战。单款车型的技术文档往往超过万页,且分散在 PDF、Word、PPT 等多种格式中,传统的文档管理和检索方式已难以满足日益增长的服务需求。技术人员在日常工作中需要花费大量时间在文档搜索上,而传统关键词搜索无法理解语义关联,检索结果的准确率不高,常常需要人工二次筛选。

与此同时,专家经验的系统化沉淀和传承也面临重大挑战。汽车维修服务过度依赖个人经验,新手培训周期长,服务质量难以标准化。这种状况不仅影响了服务效率,也制约了服务质量的持续提升。

2.2 市场规模与机遇

中国汽车市场规模庞大,2024年中国汽车产销量均超3,100万辆,售后服务的质量直接影响着品牌口碑和客户留存率。全球汽车售后行业规模在2024年的价值为4,305亿美元,预计到2032年,市场将从2025年的4,431亿美元增长到5,657亿美元,年复合增长率达3.55%。面对如此庞大的市场规模和持续增长的趋势,售后服务的智能化转型被广泛视为提升服务效率与客户满意度、留存率的重要路径。

3. 为什么参考 LightRAG

3.1 传统 RAG 的局限性

传统的 RAG(检索增强生成)系统主要依赖于向量相似度搜索来检索相关文档片段,这种方法在处理汽车售后领域的复杂知识时存在明显局限。

首先,汽车维修知识具有强关联性和层次性。例如,某个故障现象可能与多个零部件、多个维修步骤相关,而这些知识之间存在复杂的依赖关系。传统 RAG 难以有效表达和利用这种结构化知识,导致检索结果缺乏系统性和完整性,无法为维修人员提供全面的知识支撑。

其次,汽车售后知识往往需要多跳推理。从故障现象追溯到根本原因,再到具体维修方案,这个过程涉及多个知识节点之间的关联推理。传统的向量检索仅能基于相似度返回文档片段,难以支持这种知识图谱式的关联推理,无法满足复杂诊断场景的需求。

此外,汽车领域存在大量专业词汇和标准规范,传统 RAG 在处理和理解专业术语时相对薄弱。这导致在面对专业性强的维修文档时,检索准确性和答案质量都会受到影响。

3.2 LightRAG 的技术优势

基于以上考虑,我们选择参考由香港大学数据智能实验室(HKUDS,Data Intelligence Lab@HKU)开源的基于知识图谱的 LightRAG 框架。LightRAG(Guo et al., 2024)是一个新一代的 RAG 系统,通过将图结构整合到文本索引和检索过程中,采用双层检索机制,显著提升了检索质量和答案的上下文相关性。项目开源地址:https://github.com/HKUDS/LightRAG

LightRAG 使用知识图谱来表示和捕获文本中实体和主题之间的复杂关系,能够更全面地理解内容上下文。这种图结构化的知识表示方式,使得系统能够准确捕捉汽车零部件之间的装配关系、故障之间的因果关系、以及维修步骤之间的依赖关系,为后续的知识检索和推理奠定了坚实基础。

在检索机制方面,LightRAG 采用低层次和高层次的双重检索系统,从多个维度增强信息检索的全面性。系统将图结构与向量表示相结合,能够高效检索相关实体及其关系,在保持上下文相关性的同时显著改善响应时间。这种双层检索机制确保了既能找到直接相关的知识,也能发现通过关联推理得到的间接相关知识。

LightRAG 的另一个重要特性是支持知识库的增量更新。汽车技术不断演进,新车型、新技术持续涌现,知识库需要频繁更新。LightRAG 无需重新处理整个外部数据库,就能够高效地适应不断变化的数据,大大降低了知识库维护的成本和复杂度。

在知识构建方面,LightRAG 使用大语言模型从文档中执行实体-关系抽取任务,自动构建结构化知识。这种自动化的知识抽取能力,使得系统能够快速将海量的非结构化维修手册转化为结构化的知识图谱,极大地提升了知识图谱构建的效率。

相比其他图增强 RAG 方案,LightRAG 专门针对垂直领域知识进行了优化,能更好地处理专业领域的术语和概念。它采用轻量级的图数据结构,在保持高效检索能力的同时,显著降低了系统复杂度和维护成本。此外,LightRAG 支持同时处理文本、图片等多种类型的维修资料,这对于汽车售后场景尤为重要,因为维修手册往往包含大量的图示说明。

结合 Amazon Neptune 的图数据库能力,LightRAG 能够准确表达汽车维修知识的内在联系,支持复杂的知识推理,为一线技术人员提供更精准和全面的智能辅助。

4. 技术方案

4.1 核心功能

该方案提供了全面的文档处理和知识管理能力。在文档处理方面,系统支持 PDF、DOCX、XLSX、PPTX、Markdown 等多种文件格式,能够处理多列文本等复杂版面布局,并支持嵌入式图片和表格的提取。系统专门针对汽车用户手册的特点进行了优化,能够准确识别和提取各类维修信息。

在知识图谱构建方面,系统基于 LightRAG 框架,使用 Amazon Neptune 作为图数据库存储引擎。系统能够创建基于图的知识表示,准确捕获实体间的各种关系。针对汽车领域的特点,系统对实体和关系抽取算法进行了优化,能够更准确地识别车型、零部件、故障代码、维修步骤等汽车领域的专业实体,以及它们之间的装配、因果、依赖等关系。系统支持增量更新和知识演化,能够持续吸收新的维修知识。

在多模态检索方面,系统能够同时处理文本和视觉内容。系统使用视觉模型自动生成图片描述,将维修手册中的图示转化为文本描述并纳入知识图谱。用户可以使用文本和图像的组合进行查询,系统具备全面的信息提取能力,能够从多模态数据中提取有价值的维修知识。

在智能问答方面,系统基于知识图谱实现了多跳推理能力,支持自然语言问答。用户可以用日常语言提出维修相关的问题,系统能够理解问题意图,从知识图谱中检索相关知识,并提供上下文相关的精准答案。系统采用流式输出方式,改善了用户体验,让用户能够实时看到答案的生成过程。

4.2 模型支持

该方案在模型选择上提供了极大的灵活性。在对话模型方面,系统支持 Amazon Bedrock 托管的 Amazon Nova 系列和 Anthropic Claude 系列模型,也支持 DeepSeek 系列模型(包括 deepseek-chat 和 deepseek-reasoner)。在多模态能力方面,Amazon Nova 和 Anthropic Claude 都支持文本和图像的多模态处理。

在向量嵌入方面,系统可以使用 Amazon Bedrock 托管的 Amazon Titan Embeddings和 Amazon Nova Multimodal Embeddings。系统具有良好的开放性和兼容性,支持所有兼容 OpenAI 接口的大语言模型(如 Qwen、DeepSeek)和嵌入模型(如BGE)。这种多样化的模型支持确保了解决方案能够满足不同场景和需求的最佳性能要求,用户可以根据成本、性能、部署区域等因素灵活选择最合适的模型。

4.3 架构设计

该解决方案采用云原生、无服务器架构,整合了多项 Amazon Web Services 托管服务,如下图所示。

图1 – 系统架构图

4.3.1 流程说明

1)第①步,用户访问流程

流程描述:这是整个系统的起点,代表用户如何访问和使用系统。 具体步骤

  • 用户(如汽车技术人员、维修工程师)通过Web浏览器访问系统界面
  • 用户提交查询请求或上传新的技术文档
  • 用户接收系统返回的查询结果或文档处理状态

流程作用

  • 作为系统与用户交互的入口点
  • 发起后续所有数据处理和查询流程
  • 呈现最终处理结果和知识反馈
  • 2)第②步,请求路由和负载均衡流程

流程描述:这一步骤处理所有进入系统的请求,确保它们被正确路由并均衡分布。 具体步骤

  • Application Load Balancer接收来自流程①的用户请求
  • 根据请求类型和负载情况,将请求分发到适当的服务器
  • 监控后端服务健康状态,确保请求仅发送到正常运行的服务

流程作用

  • 在多个服务器间均衡分配流量,防止单点过载
  • 提供初步的请求分类和预处理
  • 实现高可用性和故障隔离
  • 3)第③步,身份验证和授权流程

流程描述:这一步骤确保所有系统操作都经过适当的身份验证和授权。 具体步骤

  • 接收来自流程②的路由请求
  • 验证用户身份凭证(通过OpenID Connect或Cognito User Pool)
  • 检查用户权限并确定可访问的资源范围
  • 生成身份令牌用于后续操作

流程作用

  • 确保只有授权用户才能访问系统
  • 实施细粒度的访问控制策略
  • 防止未授权的数据访问和操作
  • 4)第④步,文档处理工作流程

流程描述:这是系统的核心处理环节,负责将原始文档转化为结构化知识。 具体步骤

  • Amazon Step Functions接收已认证的文档处理请求
  • 协调并顺序执行多个处理步骤:

OCR:提取文档中的文本内容 Ingestion:解析和结构化文档 Models:使用AI模型进行知识抽取

  • 监控每个步骤的执行状态并处理可能的错误
  • 完成后触发后续的存储和索引流程

流程作用

  • 将非结构化文档转换为结构化知识
  • 协调多个处理组件有序工作
  • 确保处理任务的完整性和可追踪性
  • 5)第⑤步,数据存储流程

流程描述:这一步骤负责安全地存储所有系统数据,包括原始文档和处理结果。 具体步骤

  • 接收来自流程④的处理结果
  • 将原始文档、处理中间结果和最终输出存储到Amazon S3
  • 存储相关元数据到DynamoDB
  • 设置数据访问权限和生命周期策略

流程作用

  • 提供持久化数据存储
  • 确保数据可靠性和安全性
  • 支持数据版本控制和历史追踪
  • 6)第⑥步,知识图谱查询流程

流程描述:这是系统的智能核心,负责基于知识图谱回答用户问题。 具体步骤

  • 接收来自用户(流程①)的查询请求
  • 在Amazon Neptune图数据库中执行知识图谱查询
  • 同时在OpenSearch中进行向量相似度检索
  • 结合图查询和向量检索结果
  • 使用AI模型生成最终的回答

流程作用

  • 执行基于知识图谱的智能推理
  • 提供上下文相关的精准答案
  • 支持复杂的多跳查询和关系探索
  • 4.3.2 完整数据流处理示例

    1)文档上传和处理流程

流程 :用户上传汽车维修手册PDF文件 流程 :请求通过负载均衡器被路由到后端服务 流程 :系统验证用户身份和上传权限 流程 :启动文档处理工作流

  • 执行OCR提取文本
  • 进行文档解析和结构化
  • 使用AI模型抽取实体和关系

流程 :处理结果存储到S3,元数据保存到DynamoDB 流程 :结构化知识加载到Neptune图数据库,向量表示索引到OpenSearch

2)用户问答流程

流程 :用户提问”如何更换钥匙电池?” 流程 :负载均衡器将请求路由到查询处理服务 流程 :系统验证用户身份和查询权限 流程 :执行知识查询处理

  • 在Neptune中查询相关的零部件和操作步骤关系
  • 在OpenSearch中检索相似问题和答案
  • 结合检索结果,使用AI模型生成答案

流程 :将生成的答案返回 流程 :用户接收并查看详细的电池更换步骤和图示说明

3)流程间的关键连接点

①→②:用户请求传递,负载均衡分发 ②→③:请求转发和身份验证 ③→④:授权后的处理任务启动 ④→⑤:处理结果存储和持久化 ⑤→⑥:数据加载到知识图谱和搜索引擎 ⑥→②→①:查询结果返回到用户界面

整个架构具有高可用性、可扩展性和成本优化的特点。各组件之间通过事件驱动的方式进行通信,实现了松耦合的设计。无服务器架构确保了系统能够自动应对负载变化,按实际使用量付费,有效控制了运营成本。

5. 部署指南

5.1 前置条件

在部署解决方案之前,需要确保满足以下前置条件。首先需要一个具有创建新 VPC 配额的 Amazon Web Services 账号。如果计划使用 Bedrock 模型,需要申请 Bedrock 模型访问权限。如果需要使用自定义域名访问系统,需要准备 Route 53 域名和 ACM 证书。

在本地环境方面,需要安装 Docker 用于构建和运行容器,安装 Node.js 用于执行部署脚本,并正确配置 Amazon Web Services 凭证以便访问云服务。

5.2 全球区域部署

对于全球区域的部署,首先需要进行环境准备。创建 OpenSearch 服务关联角色,执行以下命令:

然后登录 ECR Public 以便拉取容器镜像:

接下来执行 CDK bootstrap 初始化 CDK 环境:

cdk bootstrap

环境准备完成后,即可开始部署。首先下载源代码并解压:

wget -O aftersales-graph-on-aws-auto.zip “https://…”

unzip aftersales-graph-on-aws-auto.zip

进入目录并执行安装脚本:

cd aftersales-graph-on-aws-auto

./install.sh

安装脚本会自动完成所有必要的配置和部署步骤,包括构建容器镜像、创建 CloudFormation 堆栈、配置网络和安全组等。

5.3 中国区域部署

中国区域的部署需要注意一些特殊配置。由于网络环境的差异,建议配置国内镜像源以加速依赖包的安装。由于 Amazon Bedrock 在中国区域暂不可用,需要自行提供大语言模型服务,可以选择使用 DeepSeek、通义千问等国内的模型服务,或者通过 Amazon SageMaker 部署开源模型。

在身份认证方面,由于 Amazon Cognito User Pool 在中国区域暂不可用,需要提供 OIDC(OpenID Connect)身份提供商进行用户认证。可以对接企业现有的身份管理系统,或者使用第三方的 OIDC 服务。

其他部署步骤与全球区域基本一致,按照安装脚本的提示完成配置即可。

5.4 部署验证

部署完成后,可以通过多种方式访问和验证系统。如果配置了自定义域名,可以直接通过域名访问,例如 https://auto.example.org.cn。如果没有配置自定义域名,可以通过 CloudFormation 输出的 Portal URL 访问系统:

aws cloudformation describe-stacks \

–stack-name auto-graphrag \

–query “Stacks[0].Outputs[?OutputKey==’PortalUrl’].OutputValue” \

–output text

访问系统后,建议先上传一些测试文档,验证文档处理和知识图谱构建功能是否正常。然后尝试进行一些问答测试,确认系统能够正确理解问题并返回准确的答案。

5.5卸载说明

如果需要卸载部署,可以通过两种方式完成。第一种方式是使用 CDK 命令:

cdk destroy -c stackName=auto-graphrag

第二种方式是通过 Amazon CloudFormation 控制台进行操作。登录控制台后,导航至 CloudFormation 服务,在堆栈列表中选择需要删除的堆栈,点击 “Delete” 按钮并确认删除。系统会自动清理所有相关资源,包括 Lambda 函数、数据库、存储桶等。需要注意的是,为了防止数据丢失,某些包含数据的资源(如 S3 存储桶)可能需要手动清空后才能删除。

6. 方案亮点

6.1 广泛的应用场景

该解决方案已经吸引了多家知名汽车企业的关注,并有企业开展了 PoC 测试。方案切中了汽车行业的核心痛点,具有广阔的应用前景。

在故障诊断辅助方面,系统能够快速检索历史故障案例,基于相似的故障现象提供诊断建议。技术人员可以借鉴以往的成功案例,缩短诊断时间,提高诊断准确率。在维修方案推荐方面,系统基于知识图谱进行推理,能够提供系统化的维修步骤。系统不仅能够告诉技术人员需要更换哪些零部件,还能给出详细的操作步骤和注意事项。

在配件查询方面,系统能够精准匹配零部件信息和库存。技术人员可以快速查询到所需配件的规格、价格、库存情况等信息,避免了在多个系统之间来回切换。在新人培训方面,系统沉淀了专家的维修经验,能够加速新人的成长。新员工可以通过系统快速学习各类维修知识,缩短培训周期。在客户服务方面,系统提升了客户咨询的响应速度和准确性,客服人员可以借助系统快速回答客户的技术问题,提升客户满意度。

6.2 技术创新性

该方案充分体现了技术创新性,结合了知识图谱、大语言模型、检索增强生成等多项前沿 AI 技术。系统能够自动处理非结构化的维修手册数据,构建知识图谱,无需人工标注和整理,大大提升了知识管理的效率。

在智能推理方面,系统支持多跳知识推理和复杂查询。系统不仅能够回答简单的事实性问题,还能够进行复杂的因果推理和关联分析。在自然语言交互方面,系统支持自然语言问答,技术人员可以用日常语言提问,无需学习专门的查询语法,大大降低了使用门槛。在持续学习方面,系统支持增量更新,知识库能够不断演化,吸收新的维修知识和经验。

这些技术创新体现了 Amazon Web Services 在汽车售后智能化领域的技术领先性,为行业树立了新的标杆。

6.3 Agent AI 扩展能力

方案支持在对话系统中引入 Agent 框架,实现更复杂的业务流程处理。在多轮对话方面,系统能够支持复杂业务流程的多轮交互。例如,系统可以先根据故障现象推荐维修方案,然后查询相关配件的库存情况,最后自动创建维修工单,整个过程通过多轮对话自然完成。

在系统集成方面,方案赋能合作伙伴对接企业现有系统,实时获取业务数据。系统可以与 ERP、CRM、库存管理等系统集成,获取实时的配件库存、客户历史、工单状态等信息,为决策提供更全面的数据支持。在个性化服务方面,系统能够基于用户的历史交互提供个性化的服务建议。系统会记住每个技术人员的查询习惯和关注重点,优化推荐结果。

这些 Agent AI 能力将显著提升复杂场景的处理效率,将智能服务延伸至实际业务操作环节,实现端到端的智能化支持。

6.4 性能优化

当前版本在性能方面进行了多项优化,显著提升了系统的实用性。在提示词优化方面,通过精心设计的提示词模板,系统显著提高了回答的准确率和相关性。系统能够更好地理解用户意图,返回更贴合实际需求的答案。

在用户体验方面,系统采用流式输出方式,用户可以实时看到答案的生成过程,减少了等待时间,改善了使用体验。在响应速度方面,通过优化检索算法和缓存策略,系统将首次 Token 返回延时缩短至 10 秒内,大幅提升了交互的流畅性。

在知识库管理方面,系统支持增量更新,无需全量重建知识图谱。当有新的维修手册或故障案例需要添加时,系统能够快速完成更新,不影响正常使用。这些性能优化确保了系统能够在生产环境中稳定高效地运行。

6.5 灵活部署

方案在部署方面提供了极大的灵活性。在区域支持方面,方案同时支持 Amazon Web Services 海外区和中国区部署,能够满足全球化运营车企的需求。在模型选择方面,方案支持 Amazon Bedrock 托管的模型、Amazon SageMaker 部署的模型,以及第三方模型服务,用户可以根据实际情况灵活选择。

在部署模式方面,方案支持云端和本地的混合部署。对于有数据安全要求的企业,可以选择将敏感数据保留在本地,同时利用云端的计算能力。在成本管理方面,方案提供了标签化的资源管理功能,便于企业精确进行项目成本核算。通过给每个资源打上标签,企业可以清晰地看到每个项目或部门的云资源使用情况和费用支出。

这种灵活的部署方式对于全球化运营的车企尤其重要,能够满足不同地区的合规要求和业务需求。

6.6 生态赋能

方案展现了良好的生态开放性,已经吸引了科基数据、易谷网络、神州泰岳等合作伙伴基于其进行扩展开发。在架构设计方面,方案采用了开放的架构设计,易于集成和扩展。合作伙伴可以基于标准接口进行二次开发,快速构建定制化的解决方案。

在接口兼容性方面,方案兼容 OpenAI 接口标准,降低了集成的技术门槛。现有的基于 OpenAI 接口开发的应用可以无缝切换到本方案。在合作伙伴支持方面,Amazon Web Services 为合作伙伴提供了完善的技术支持和最佳实践指导,帮助合作伙伴快速上手,成功交付客户项目。

这种开放的生态模式展现了 Amazon Web Services 生态的活力,也为方案的持续演进和价值提升创造了良好的条件。

7. 效果展示

下图展示了汽车服务知识图谱的实际应用效果。

图2 – 知识图谱界面示例

图3 – 交互式问答及文档溯源界面示例

在这个实际案例中,用户通过自然语言提问”转向异常,是否需检查液压管路?”,系统展现了强大的理解和回答能力。系统首先准确理解了用户的意图,识别出这是一个关于汽车转向系统故障诊断的维修需求。然后,系统通过知识图谱的多跳推理能力,从”转向异常”这一症状出发,逐步推理到相关的系统组件,同时结合传统知识库的向量相似性比较,从海量技术文档中精准检索出最相关的维修指导信息。

系统通过知识图谱的可视化界面清晰展示了汽车转向相关部件的关联关系。图二展示了以”悬挂系统”为核心的知识网络,其中包含”转向系统”、”液压管路”、”前转向拉杆”、”转向器”等关键实体节点。这些节点通过有向连接线展示了彼此之间的逻辑关系和依赖关系。

多跳推理的智能分析过程:当用户提出转向异常问题时,系统通过知识图谱进行多层次推理:第一跳从”转向异常”识别到”转向系统”;第二跳从”转向系统”关联到”液压管路”、”转向器”等相关组件;第三跳进一步关联到具体的检查项目和维修标准。这种多跳推理确保了答案的逻辑完整性和技术准确性。

界面右侧的详情面板显示了选中实体的具体信息,例如”转向系统包括方向盘、转向柱等零件,控制车辆行驶方向”,为用户提供了准确的技术定义。通过这种图形化的知识表示方式,技术人员可以直观地理解不同汽车系统之间的关联性,快速定位相关的维修知识点。

在答案呈现方面,系统提供了清晰的结构化回答。图三展示了完整的问答交互过程,左侧显示了来源于官方维修手册的PDF技术文档(file_name.pdf,第234页),右侧是自然语言对话界面。

向量相似性比较的精准检索:系统在回答过程中,不仅依靠知识图谱的结构化推理,还通过向量相似性比较技术,在庞大的技术文档库中快速定位到最相关的内容。当用户询问液压管路检查时,系统通过语义向量匹配,精准找到了第234页中关于”验证液压管路和螺栓是否到位且无损坏迹象”的具体技术要求。

当用户询问转向异常是否需要检查液压管路时,系统给出了专业而准确的回答:”是的,转向异常时需要检查液压管路。根据维修技术文档的要求,在转向系统检修中,需要验证液压管路和螺栓是否到位且无损坏迹象。”这个回答体现了多跳推理与向量检索的完美结合:通过知识图谱推理确定了检查的必要性和逻辑依据,通过向量相似性比较找到了具体的技术标准和操作指导。

为了让说明更加直观易懂,系统还配合图示进行说明。左侧的技术文档显示了后轮液压线路的检查示意图,用黄色箭头清晰标注了需要重点检查的液压管路和连接点位置。右侧对话区域同样展示了相应的图示说明,确保用户能够准确理解检查的具体位置和方法。

系统界面设计简洁实用,体现了多个功能模块的有机结合。知识图谱的多跳推理能力确保了答案的逻辑性和系统性,避免了孤立的信息片段;而传统知识库的向量相似性比较则保证了信息检索的精准性和全面性,确保不遗漏关键的技术细节。

这种双重技术架构的协同工作使得系统能够提供更加合乎逻辑和符合实际业务需求的答案。例如,在回答液压管路检查问题时,系统不仅通过知识图谱推理出检查的必要性,还通过向量检索找到了具体的检查标准、操作步骤和注意事项,形成了从理论依据到实践指导的完整解决方案。

通过知识图谱的关联能力和多跳推理,结合向量相似性的精准匹配,系统不仅能够回答直接的问题,还能够主动提供相关的维修建议和注意事项。这种基于双重AI技术的智能辅助显著提升了汽车维修服务的质量和效率,帮助技术人员更快速、更准确地完成故障诊断和维修工作,同时确保了答案的专业性、逻辑性和实用性。

8. 实施效果与价值

8.1 业务价值

该解决方案为汽车售后服务带来了显著的业务价值。在服务效率提升方面,系统将文档检索时间减少了 70% 以上。过去技术人员需要在多个文档中反复查找信息,现在只需要提出问题,系统就能快速返回准确答案。新人培训周期也缩短了 50% 以上,新员工可以通过系统快速学习各类维修知识,无需长时间的师傅带教。故障诊断的准确率也得到了明显提高,减少了误判和返工的情况。

在客户体验改善方面,系统显著缩短了客户的等待时间。技术人员能够更快地诊断问题、制定维修方案,客户在服务中心的停留时间大大缩短。问题解决率也有了明显提升,系统提供的全面知识支持帮助技术人员解决了许多过去难以处理的疑难问题。这些改进最终转化为客户满意度的提升,增强了客户对品牌的信任和忠诚度。

在知识沉淀与传承方面,系统实现了专家经验的系统化沉淀。过去分散在各个维修专家头脑中的经验知识,现在被整理成结构化的知识图谱,成为企业的宝贵资产。服务流程也得到了标准化,不同技术人员处理同类问题时能够遵循统一的标准流程,保证了服务质量的一致性。系统还支持知识的持续积累,每一次成功的维修案例都可以被记录下来,丰富知识库的内容。

8.2 技术价值

从技术角度来看,该解决方案展现了先进的技术架构。基于知识图谱的智能检索能够准确理解复杂的知识关联,支持多跳推理和复杂查询。系统采用了云原生的无服务器架构,具有高可用性、可扩展性和成本优化的特点。多模态数据处理能力使得系统能够同时处理文本、图像等多种类型的数据,为用户提供更全面的信息支持。

在持续优化能力方面,系统支持增量学习和模型灵活切换。随着业务的发展和技术的进步,系统可以不断优化和升级,确保始终保持技术领先。系统的可扩展微服务架构为未来的功能扩展预留了充足空间,能够快速响应业务需求的变化。

9. 未来展望

该解决方案将持续演进,我们计划在以下方向进行增强。在多模态能力方面,将支持视频资料的处理和分析,让系统能够从维修视频中提取知识。同时引入语音交互能力,技术人员可以通过语音提问和接收答案,在维修现场更加便捷地使用系统。我们还将探索 AR/VR 维修指导技术,为技术人员提供沉浸式的维修培训和现场指导。

在 Agent 能力方面,将实现更复杂的业务流程自动化。系统将能够自动协调多个业务系统,完成从故障诊断到维修执行的全流程自动化。通过与企业系统的深度集成,实现数据的实时流转和业务的无缝衔接。系统还将提供预测性维护建议,基于历史数据和车辆状态,主动预警潜在故障。

在知识图谱方面,将构建更细粒度的知识表示,捕捉更深层次的知识关联。探索跨车型知识迁移技术,让不同车型之间的维修经验可以相互借鉴。推动行业知识共享,建立开放的汽车维修知识生态。

在智能化升级方面,将实现自动故障诊断能力,系统可以根据故障代码和传感器数据自动判断故障原因。引入智能工单分派功能,根据技术人员的专长和工作负载智能分配维修任务。通过预测性分析,帮助企业优化配件库存和服务资源配置。

10. 总结

本文介绍的汽车服务知识图谱解决方案整合了维修手册、故障案例、专家经验和零件目录等多源数据,基于 Amazon Neptune 构建领域知识图谱,结合 LightRAG 框架和 Amazon OpenSearch 的智能检索能力,打造了智能化知识中枢。

方案的核心价值体现在多个方面。在技术创新方面,将知识图谱与 RAG 技术深度融合,支持复杂知识推理,为汽车售后服务提供了全新的智能化解决思路。在业务赋能方面,显著提升了故障诊断准确率与响应速度,帮助企业提高服务效率和质量。在灵活部署方面,支持多区域、多模型的灵活部署方式,满足不同企业的实际需求。在持续演进方面,支持知识库增量更新和系统能力扩展,确保方案能够持续适应业务发展需要。

通过知识推理与智能分析,该方案帮助一线维修技师提升工作效率,优化售后服务体验,为企业带来显著的经济效益和客户满意度的提升。随着汽车智能化程度不断提高,基于知识图谱的智能服务解决方案将在汽车售后领域发挥越来越重要的作用,成为推动行业数字化转型的重要力量。

11. 相关资源

*前述特定亚马逊云科技生成式人工智能相关的服务目前在亚马逊云科技海外区域可用。亚马逊云科技中国区域相关云服务由西云数据和光环新网运营,具体信息以中国区域官网为准。

本篇作者

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


AWS 一周综述:Amazon Quick Suite、Amazon EC2、Amazon EKS 等(2025 年 10 月 13 日)

AWS账单代付阅读(9)

亚马逊AWS官方博客

AWS 一周综述:Amazon Quick Suite、Amazon EC2、Amazon EKS 等(2025 年 10 月 13 日)

本周我参加了英国 AWS 用户组的首届 AWS 人工智能实践聚会。人工智能辅助软件开发和代理是当晚的焦点! 下周我将前往意大利参加 Codemotion(米兰)和 AWS 用户组聚会(罗马)。我也很高兴尝试新的 Amazon Quick Suite,将人工智能驱动的研究、商业智能和自动化功能整合到一个工作空间中。

上周发布的内容

以下是本周值得关注的发布内容:

  • Amazon Quick Suite:一个新的代理式团队成员,可以快速回答您在工作中遇到的问题,并将这些洞察转化为操作。在 Esra 的发布文章中阅读更多内容。
  • Amazon EC2:由第五代 AMD EPYC(代号 Turin)处理器提供支持的通用型 M8a 实例以及由定制英特尔至强 6 处理器提供支持的计算优化型 C8i 和 C8i-flex 实例现已推出。
  • Amazon EKS:EKS 和 EKS Distro 现在支持 Kubernetes 版本 1.34,并进行了多项改进。
  • AWS IAM Identity Center:AWS Key Management Service 密钥现在可用于加密存储在 IAM Identity Center 组织实例中的身份数据。
  • Amazon VPC Lattice:您现在可以配置分配给资源网关弹性网络接口(ENI)的 IPv4 地址的数量。IPv4 地址用于网络地址转换,用于确定资源的最大并发 IPv4 连接数
  • Amazon Q 开发者版:Amazon Q 开发者版可以帮助您获取有关 AWS 产品和服务定价、可用性和属性的信息,从而更轻松地使用自然语言选择正确的资源和估算工作负载成本。更多信息请访问此博客文章。
  • Amazon RDS for Db2:您现在可以执行原生数据库级备份,从而为数据库管理和迁移提供更大的灵活性。
  • AWS 服务配额:通过自动配额管理获取配额用量通知。配置您的首选通知渠道,例如电子邮件、短信或 Slack。AWS Health 中还提供通知,您可以订阅相关的 AWS Cloudtrail 事件,实现工作流程的自动化。
  • Amazon Connect:您现在可以使用新的案例 API 以编程方式丰富案例数据,进而关联相关案例、添加自定义相关项目并在它们之间进行搜索。现在,您还可以根据自己的特定需求自定义服务级别计算。刚刚推出的新功能包括代理计划配置的复制和批量编辑以及代理计划遵守情况通知。
  • AWS Client VPN:现在支持 MacOS Tahoe。
  • 其他更新

以下是我觉得有趣的一些其他项目、博客文章和新闻:

  • 2025 年第三季度无服务器 ICYMI:无服务器新闻季度回顾,以防您错过了。
  • 在 Amazon MWAA 上从 Apache Airflow 2.x 迁移到 Apache Airflow 3.x 的最佳实践:帮助受益于新版本的指南。
  • 使用 Amazon EKS 和 Amazon S3 Vectors 构建自管理 RAG 应用程序:一种使用 Ray、Hugging Face 和 LangChain 等开源工具构建和部署自管理 RAG 应用程序的参考架构。
  • BBVA:大规模构建多区域、多国家的全球数据和机器学习平台:这篇由六部分组成的系列文章描述了通过银行业规模较大、较复杂的云迁移之一改造 BBVA 整个数据分析基础设施的旅程。
  • 使用 Amazon Nova 自定义文本内容审核:使用特定领域的培训数据和特定于组织的审核指南,针对根据您的要求量身定制的内容审核任务进行了微调。
  • 即将举行的 AWS 活动

查看您的行程,报名参加即将举行的活动:

  • AWS 人工智能代理全球黑客马拉松:这为您提供了深入探索强大的生成式人工智能堆栈并创造精彩内容的机会。2025 年 9 月 8 日至 10 月 20 日期间,您可以利用 AWS 的人工智能服务套件来构建人工智能代理,并角逐超 4.5 万美元奖金和独家市场[已去除[已去除推广语]语]机会。
  • AWS Gen AI Lofts:您可以通过专属课程学习 AWS 人工智能产品和服务,与行业顶尖专家交流,并获得与投资者及同行建立人脉的宝贵机会。在离您最近的城市报名:巴黎(10 月 7 日 – 21 日)、伦敦(10 月 13 日 – 21 日)和特拉维夫(11 月 11 日 – 19 日)。
  • AWS Community Day:参加社区主导的会议,其中包括由 AWS 专家用户和来自世界各地的行业领导者主持的技术讨论、讲习会和动手实验室:布达佩斯(10 月 16 日)。

加入 AWS 构建者中心,学习、构建并与 AWS 社区中的构建者建立联系。在此处浏览即将举行的线下活动、以开发者为中心的活动以及为初创企业举办的活动。

以上就是本周的全部内容。欢迎下周一继续查看新的一周综述!

– Danilo

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


亚马逊云科技Flink计算引擎使用指南

AWS账单代付阅读(19)

亚马逊AWS官方博客

亚马逊云科技Flink计算引擎使用指南

一、前言

亚马逊云科技对Flink计算引擎在产品形态上提供了全面的支持。Amazon EMR on EC2,Amazon EMR on EKS,Amazon Managed Service for Apache Flink这三个产品都支持Flink计算引擎,客户可以根据自己的场景选择最适合的服务来运行Flink任务。本文内容会着重介绍Amazon EMR on EC2和Amazon Managed Service for Apache Flink的使用指南,包括作业的提交、监控方案、Autoscaler、Iceberg集成。目的是帮助客户快速上手使用这两个服务。对于Amazon EMR on EKS Flink我们提供了详细的Workshop,可以点击这里访问Flink on EKS动手实验

二、EMR on EC2 Flink使用指南

2.1 AutoScaler说明

Apache Flink在1.18版本之后对AutoScaler做了增强支持in-place scaling support, 在EKS上可以直接集成使用,但在ON YARN上只提供了一个Standalone的包,并不能满足生产要求。EMR on EC2的Flink对AutoScaler做了产品级别的集成,方便客户直接配置使用。对于使用AutoScaler这里做几点说明:

  • 应该使用EMR 7.x+, Flink 1.18+版本,因为1.18可以做in-place作业重启升级不用执行完整的升级流程(不用先savepoint再启动,直接从checkpoint restore),缩短作业调整并行度后的重启时间。
  • EMR的AutoScaler是专门优化过的,且集成到flink的runtime中

(flink-dist,org/apache/flink/runtime/scheduler/autoscaler/),这是开源Flink不具备的.

  • 如果要尽快在缩容底层EC2资源,将

yarn.resourcemanager.nodemanager-graceful-decommission-timeout-secs减少,默认是3600秒,如果节点进入decommission状态但是有container在EC2上运行,3600秒后才强制终止。注意调整这个值对作业稳定性有影响,请在在快速缩减资源和作业SLA之间做权衡。

2.2 创建Session

  • 下面以Flink session+Flink-CLI模式为列做使用说明,注意Flink生产使用模式建议使用application模式提交作业,session和per-job模式已经不再是推荐的使用模式。 这里使用flink cli只是为了方便说明,使用其它模式时下面的配置AutoScaler参数是一致的。EMR AutoScaler支持的参数配置在这里AutoScaler Configurations
  • 我们为Flink作业设定的目标利用率job.autoscaler.target.utilization, AutoScaler会尽可能保证作业在没有背压延迟的条件下,通过调整并行度,来满足设定的目标利用率。
  • 2.3 提交作业

  • 下面是启动Flink sql-client 指定到之前创建的flink session集群,同时关闭operator-chaining方便查看每个算子的并行度,注意不要在生产环境关闭,会影响性能。
  • 2.4 观察AutoScaler

  • 可以通过观察jobmanager日志和webui来看到AutoScaler的过程
  • 2.5 Flink Iceberg

  • 在EMR on EC2上使用Iceberg,只需在集群开启Iceberg配置即可, 启用方式在这里EMR Iceberg
  • Flink 写Iceberg目前只有MOR模式,没有COW模式,即便显示配置COW也不会生效,这一点要注意。
  • Iceberg表如果使用upsert模式,分区键必须包含主键,Iceberg的compaction操作原则上是必须要做的,合并小文件提升查询性能。 尤其在upsert模式下,如果没有compaction流程,在大量写入upsert数据的场景下,查询性能表现会比较差,因为写入是MOR所以写入并不会有明显的瓶颈。
  • 2.6 Flink Iceberg 使用Glue Catalog

  • 我们使用Glue Catalog结合Flink写入Iceberg表做个例子, Flink Session和Flink Client创建
  • 创建glue catalog,在glue catalog中创建flink iceberg database
  • Datagen生产测试数据写入Iceberg表
  • 下图是Flink写入的Iceberg,append模式下的截图。当前配置下写入速度35w/s. 在Upsert模式下的写入速度也很快因为是MOR写,但是如果没有compaction,直接查询表速度会比较慢。
  • 2.7 Glue Catalog Iceberg Auto Optimization

  • Glue提供了对于Iceberg表自动维护管理的功能,包括compaction,Snapshot retention,Orphan file deletion. 当使用Glue Catalog作为元数据管理时,对于格式是Iceberg的表类型,可以在Glue中通过启用Iceberg表优化,自动帮您完成Iceberg表运维管理工作。
  • 2.8 EMR on EC2 Flink作业监控

  • 在EMR on EC2上对于系统指标的监控,比如CPU,内存,网络,磁盘等,EMR 7.0版本之后集成了cloudwatch agent,开启之后这些指标会自动发送到cloudwatch. 此外cloudwatch agent 还支持配置hdfs,yarn,hbase相关服务的JMX的监控指标。 但是对于Flink作业本身的metrics的监控,比如Flink作业的状态,restart次数,背压等,因为是在作业层面,EMR并不提供作业级别的Metrics. 因此如果果要对每个Flink作业做监控,我们可以使用如下两种方式,1. YARN Flink Rest API 2. Flink Prometheus Exporter。Rest API 方式更加简单,yarn 应用指标通过

http://master_ip:8088/ws/v1/cluster/apps/application_id获取,flink job 指标通过yarn代理过去的flink restapi 获取

http://application_master_id:20888/proxy/application_id/jobs/job_id这里的application_master_id 通过yarn的rest api可以获取到ApplicationMaster地址。 相关截图如下:

  • 通过这两个restapi可以获取到所有flink rest api 支持的全部指标查看所有Rest指标。有了这两个获取指标的URL,接下来如果要开发一个根据这两个URL展示的指标转换为Prometheus接口的数据的程序,这种开发操作,完全不用人工从头开发,只需要借助AI变成工具Kiro就可以帮你完成开发,您也可以直接在EC2或者EMR Master节点上安装Kiro CLI ,通过CLI开发,这样因为网络环境是通的,可以让他帮你直接开发调试,指导程序符合逾期。您可以去尝试一下,一定会有意外的惊喜,注意请在测试环境中调试开发。
  • 对于使用Prometheus Exporter收集指标,这也是Flink官方提供的一种方式,需要安装Prometheus Pushgateway,启动作业配置发送或者全局配置发送Metrics. 下面代码是一个例子,供参考。
  • flink prometheus metric reporter是不能获取到yarn的application id的,只能获取到flink job id. 所以无法自爱grafana上直接跳转到webui, 有一个折中的办法,可以在启动作业的时候指定webui端口,然后这个配置也传递到metric,这样就可以通过job manager 地址和port直接访问的flink webui了,如下配置。

但这个方法需要注意每个作业的port需要不一样,默认这个port是随机的,我们手动指定后每个作业的port,每个作业需要不同,因为不同作业的job manager会调度到同一台机器,所以端口要不同,这个对么个作业配置就可以。 同时咱们网络要能访问emr各个节点,就可以直接访问了,本地可以可以ssh 动态端口转发

注意修改完配置,restart prometheus就可以,或者动态加载,这个是Prometheus的配置,不是pushgateway

  • 再提示您一下,指标到了Prometheus,你想要开发Dashboard, 也不用自己开发Kiro CLI可以直接帮你生成你想要的dashbaord创建好,你给到Kiro CLI Grafnan的地址和访问权限,他就可以帮你自动创建了。
  • 三、MSF Flink使用指南

    3.1 MSF Flink说明

关于MSF的基础知识本文不再赘述,本文会以一个python flink使用MSF写Iceberg的例子来做一个使用说明。对于MSF这里说明两个重要点。1. MSF的运维相比EMR on EC2 Flink的运维是要轻很多的。比如Metrics指标,日志这些都会自动发送到Cloudwatch,也不需要管理底层资源。2. MSF的成本相比EMR on EC2 Flink在大部分场景下从列表价看是要高的,但如果您的Flink作业较少,在EMR on EC2上开启高可用需要3个Master节点这会带来成本的增加,而在MSF上本身作业就是支持高可用且支持跨AZ容灾的,EMR on EC2只支持单AZ,同时是安装作业指定的KPU(1C/4GB)来计费的,因此这种情况下,MSF的成本并不一定比EMR on EC2高。

3.2 python flink SQL写Iceberg

  • 下面是python flink消费MSK(Kafka)数据Sink Iceberg的程序,可以看到和我们平时开发flink作业没有区别,对于使用MSF而言,最主要的是开发和调试相对不是特别遍历,可以使用python flink local模式调试,调试完毕后再部署到MSF。也有客户会选择EMR on EC2作为开发环境调试环境,MSF作为生产环境。
  • 使用MSF时, pyflink相关的依赖jar,比如iceberg,kafka 等,都需要maven 编译打包到zip中使用,使用udf需要python的额外库,可以在添加requirenments.txt。可以参考这里
  • 对于下面例子完整的MSF的作业API提交,local调试的相关代码和说明可以点击这里查看MSF-PYTHON-Flink
  • 四、总结

本文内容说明了Flink引擎在亚马逊云科技上使用的最佳实践。亚马逊云科技提供了对Flink引擎的全面支持,可以满足您在不同场景的需求。Amazon EMR on EC2 Flink提供了最灵活可控的Flink运行时,Amazon Managed Service for Apache Flink提供了Serverless运行时,可以大幅度减少对Flink作业的运维,同时可以做到资源的弹性扩缩。而EMR on EKS Flink对于K8S技术栈的客户提供了便利支持。需要强调的是亚马逊云科技的Flink相比开源的Flink在AutoScaler的能力上做了扩展和增强,无论在EMR on EC2,EMR on EKS你都可以体验AutoScaler的功能带来的优势和成本节省。

*前述特定亚马逊云科技生成式人工智能相关的服务目前在亚马逊云科技海外区域可用。亚马逊云科技中国区域相关云服务由西云数据和光环新网运营,具体信息以中国区域官网为准。

本篇作者

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


Amazon EMR on EC2 Step提交作业及和MWAA集成最佳实践

AWS账单代付阅读(14)

亚马逊AWS官方博客

Amazon EMR on EC2 Step提交作业及和MWAA集成最佳实践

一、前言

Amazon EMR 是一个为大数据工作负载提供了全面,灵活,高度可扩展且极具备性价比的托管服务。Amazon EMR有Amazon EMR Serverless,Amazon EMR on EC2,Amazon EMR on EKS三个产品形态,他们Runtime统一,满足客户在不通场景下数据分析的工作负载。EMR on EC2托管了大数据生态最全面最流行的服务,比如: Spark、Flink、Trino、HBase、Hive、Hue等。EMR Serverless极大减轻了对于大数据作业运行的资源,日志,监控上的复杂运维工作,您只需要通过API或者控制台提交开发好的作业即可。EMR on EKS为K8S技术栈的客户提供了开箱即用的Spark,Flink运行时。本文将重点介绍EMR on EC2上使用Step API提交Spark,Flink作业的最佳实践,同时会介绍如何和亚马逊云科技的Amazon Managed Workflows for Apache Airflow(MWAA)作业流系统集成。

Amazon EMR on EC2在业务场景上可以使用两种模式。1. 瞬态集群 2.长期运行集群 两种模式都可以设置动态扩缩容,充分利用云的弹性来节省成本。瞬态集群适用于在一段时间内执行批处理作业,比如:数仓的批处理的ETL,大规模的回溯数据等场景。可以通过API直接创建集群,Step提交作业,作业运行完毕后集群自动或手动触发关闭。长期运行集群,适用于固定业务需求场景比如Flink实时计算任务,Trino的即席查询的需求等场景,需要说明的是长期运行集群可以使用EMR的弹性伸缩的能力,集群可以保留少量的计算几点,当有更多任务时,集群会自动弹性扩展。长期运行的集群我们同样可以使用Step API提交作业,无需登录到Master节点执行作业提交,也无需构建一个专门的Gateway节点做专门提交作业的节点。

本文所写的相关的内容,在亚马逊云科技中国区的北京和宁夏两个区域同样适用。

二、EMR Step实践

2.1 Step API基本说明

Step是EMR on EC2提供的向集群提交任务的API(可以使用AWS CLI,Python Boto3 API等)。我们往集群提交作业,一般有三种方式 1. Master节点或在Gateway节点提交作业,比如在节点直接运行

spark-submit,

flink run等命令。2. 通过开源的工具管理提交作业比如管理Flink作业的Dinky,具体可以参看这里使用 Dinky 进行 Flink 任务开发管理,可视化的调度管理DolphinScheduler基于开源工具构建EMR数据分析平台。3. 通过MWAA管理提交作业或者使用Step API直接提交作业,MWAA提供了原生和EMR Step集成的Operator。除此之外部分客户会开发构建自己的作业提交管理平台,这个不在本文讨论的范围。

下面是是一个通过AWS CLI提交Flink作业的例子,我们从参数中可以看到EMR Step作业其实和我们正常运行Flink命令没有区别,只是这个命令通过Step提交时,在EMR上会通过JAVA执行一个common-runner.jar的程序,这个程序在Master节点中运行,会调用EMR Master节点本地的Flink命令,当这个命令成功执行完成,EMR Step本身的状态会变成Completed。

这里要重点说明的是

Step本身状态是不能反应Flink作业本身的执行状态的。Step的状态是common-runner.jar这个程序调用的本地命令的执行状态。比如下面flink run-application 的命令已经成功执行,且对于flink run-application模式,Flink的机制是只要作业成功提交到yarn上,在yarn上分配到jobmanager的container,这命令就执行完了,对于common-runner.jar这个程序而言命令执行完成,退出状态码为0,成功支持完毕。所以Step的本身的状态就是完成状态。 假如你不是使用的flink run-application模式,而是使用flink per job模型提交作业,Flink的默认模式是attached mode,也就是作业提交到yarn上如果不加

-d参数,客户端不会退出,会跟踪作业状态。这种模式下,对于Step而言,因为进程不退出,所以Step会是Running的状态,知道Flink作业完成或者失败。但这种模式有一个非常值得注意的问题,如果客户端进程不退出,就意味着有每个作业有两个JVM进程占用Master节点内容,如果并发的作业很多,Master内存会被占满,会有把Master节点压挂的风险。后边章节会讨论提交作业的最佳实践。

2.2 Step提交Spark作业最佳实践

在上边章节已经介绍过Step基本的运行原理。对于Spark作业而言,提交到YARN上之后,客户端进程是否退出是通过Spark提供的参数

spark.yarn.submit.waitAppCompletion=true 这个参数的默认值是true,也就是会客户端不会退出,会跟踪yarn application的状态,这种情况下Step本身的状态是Running状态,直到spark客户端进程执行结束,如果spark作业执行失败,Step状态就是FAILED,如果支持成功就是Completed. 但问题如之前提到的一样,客户端进程不退出,就会占用Master节点内存,如果同时有多个作业运行很可能把Master节点打挂。而如果设置.waitAppCompletion为false,此时Step只要执行完提交命令,spark-submit命令正常执行结束,进程就会退出,step状态直接进入Completed状态,此时Spark作业依然在运行或者中间运行失败,无法从Step状态判断Spark作业状态。

因此对于Step提交Spark作业,我们根据场景可以选择使用不同的方式。如果我们Spark作业并发不多,同时想要直接通过Step API 获取作业真实的运行的状态,可以使用

spark.yarn.submit.waitAppCompletion=true模式,但要注意Master节点的内容占用。 一般而言,对于一个作业而言,spark-submit客户端进程和strep common-runner.jar进程每个会占用700MB左右的内存,我们可以按照一个作业需要2GB的Master内存要计算,如果有10个作业同时运行,Master节点就需要至少20GB内存,另外要注意,Master节点上还有你安装的其它应用的内容占用,这里的10GB,只是针对10个并行的Step作业需要额外的10GB占用。另外如果我们的作业是临时作业,比如数据回溯,完全可以用API新创建集群,Master节点内容调大,作业运行完集群就关闭,而不使用当前集群,避免对当前集群造成影响。

如果我们作业并发比较多,我们可以设置

spark.yarn.submit.waitAppCompletion=false,此时作业的真正的执行状态就要通过YARN Rest API来获取了。 通过http://master_ip:8088/ws/v1/cluster/apps?applicationTypes=SPARK&name=my-spark-job获取Spark作业状态, 如果你能确保你的spark作业名字是唯一的,通过rest api找到指定作业名字的状态就可以。如果你不能保证作业名字唯一,指定名字会把所有相同名字的都查到。 这时可以使用唯一的application id获取作业状态,通过rest api指定application id,

http://master_ip:8088/ws/v1/cluster/apps/application_id 。如何通过Step提交的作业找到对应的application id。在下面和MWAA集成的章节会说明。这里简单来说就是通过API请求Step提交的输出日志找到对应的Application id。

2.3 Step提交Flink作业最佳实践

对于Flink作业而言,官方推荐的Flink提交的方式就是Application模式了,在Application模式下是没有attached模式的也就是设置execution.attached=true是不生效的。step提交之后,只要flink作业正常提交到yarn上有了driver container这个进程就退出了,step状态就是完成状态。 因此对于Flink作业的真实状态,通过yarn rest api获取到的作业才是正确的,也是推荐的方式。同时我们可以获取到flink rest api的所有作业的监控指标。flink job 指标通过yarn代理过去的flink restapi 获取

http://application_master_id:20888/proxy/application_id/jobs/job_id 这里的application_master_id 通过yarn的rest api可以获取到ApplicationMaster地址。

如果你确实需要通过step api获取作业的状态,你可以定制一个step提交作业的脚本。用这个脚本提交作业即可,下面是一个参考例子,但这种方式common-runner.jar进程需要占用Master节点内存,可以按照每个作业1GB计算,实际使用在500~700MBz左右,并行任务较多时,请注意设定Master节点内存。这个脚本的核心逻辑是提交执行作业后,周期循环请求yarn rest api获取作业状态。只有common-runner.jar这个进程会占用内存。

使用step提交作业,使用我们定制的脚本

  • 提交作业
  • kill掉作业后查看状态
  • 也可以看到相关作业日志
  • 三、EMR Step和MWAA集成

    3.1 集成说明

MWAA本身已经提供EMR on EC2创建集群,提交Step作业等相关的Operator,Operator封装的就是EMR Step API。默认情况下如果提交Spark作业就是阻塞的,会等待客户端运行结束。如果您通过MWAA同时调度多个作业,尤其是在数据回溯的场景下,很可能会将Master节点打挂。 有三个建议,第一是数据回溯时直接通过MWAA创建新集群,MASTER设定大一些,满足咱们并发需求。 第二,EMR Step是可以控制并行度的,默认的并行度是1,也就同时只有一个作业能提交运行,这个作业的Step状态如果处理Running状态,其它通过Step提交的作业都会是在Pending状态,Pending状态的作业并不会在Master节点上有任何进程。我们可以按照需求设定Step的并发,Step最大并发是256. 第三,自定义一个MWAA提交作业的方法,设定

`spark.yarn.submit.waitAppCompletion=false循环等待通过rest api获取作业状态,跟上文讲解的方式一致。这种模式也要注意step的并发,因为作业提交到yarn上需要时间通常1分钟内,如果一次性运行100个作业,可能瞬时的内存占用会很高,可以限定一下并发,但这个并发限定,基本不会影响真实作业的并行,因为提交之后step就完成了,马上就会调度下一个step.

3.2 代码实践

  • 如下是一个带监控的DAG文件,注意下面dag中,monitor_emr_wrapper中的集群id和region 替换为你的region即可
  • 这个dag中引入监控的python包

emr_ec2_job_status_analyzer,使用如下代码,保存为

emr_ec2_job_status_analyzer.py,放到和dag同一目录下即可。

3.3 重要说明和运行结果

  • 对当前DAG的运行流程做个说明

1. emr step提交spark作业后,获取到step id

2. step如果是完成状态, 根据step id去s3上找step的日志,从日志里面找application id,因为step日志同步到S3需要时间,一般作业提交后1到2分钟,最大应该在5分钟左右。代码里面设置了10分钟的默认日志检查时间,可以修改设置。这一步从日志获取application id和前文说明一样,如果能够保证每个作业的名字都唯一,可以不通过日志获取application id, 而是直接通过yarn rest api根据作业名字查找状态。

3. 获取到application id后,请求EMR api获取到master ip, 然后就可以请求yarn rest api 获取到这个applicaiton的状态

4. 根据application的真正状态,来判断这个task是否完成,如果完成task 成功,否则失败。

  • EMR 作业通过airflow提交之后,因为是cluster模式运行,在airflow上点击取消task,是无法真正取消作业的,这点要理解。
  • 在日志中可以点击Tracking URL跳转到这个作业的YARN WEB UI,查看作业详细信息
  • 四、Static BGP(S-BGP)

截止到这里我们已经讲解完了相关EMR Step使用的最佳实践,上述方案在中国区同样适应。最后为我们亚马逊云科技推出的Static BGP(S-BGP)服务打个广告,他是专为中国区域(北京和宁夏)设计的一种成本优化型数据传输服务。通过这项服务,我们致力于帮助客户在保证网络性能的同时显著降低数据传输成本。 S-BGP 可为符合条件的客户提供高达20%~70%的数据传输费用节省。详细的内容可以点击这里

五、总结

本文详细介绍了Amazon EMR on EC2上使用Step提交Spark、Flink作业的最佳实践,以及如何与MWAA做集成。我们需要了解的是Step提交左右有同步执行和异步执行两个模式,对应客户端命令在提交作业后是否继续跟踪作业状态。Step的并发设定在同步模式下能够很好的控制Master资源使用,异步模式下能够降低瞬时对Master资源的消耗。MWAA和EMR有原生的集成,开源的Airflow也同样提供EMR集成的Operator,我们可以根据咱们业务的场景灵活的选择EMR Step的使用方式。最后亚马逊云科技中国区Static BGP(S-BGP)是帮助您节省数据传输成本的利器。

*前述特定亚马逊云科技生成式人工智能相关的服务目前在亚马逊云科技海外区域可用。亚马逊云科技中国区域相关云服务由西云数据和光环新网运营,具体信息以中国区域官网为准。

本篇作者

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


AWS 一周综述:Amazon EC2、Amazon Q 开发者版、IPv6 更新等(2025 年 9 月 1 日)

AWS账单代付阅读(16)

亚马逊AWS官方博客

AWS 一周综述:Amazon EC2、Amazon Q 开发者版、IPv6 更新等(2025 年 9 月 1 日)

本周我的 LinkedIn 推送内容被西雅图 AWS 大侠峰会活动的照片刷屏了。看到这么多熟悉的面孔和新大侠齐聚一堂,真是令人心动。

对于那些不熟悉 AWS 大侠计划的人来说,这是一项全球社区表彰计划,旨在表彰为 AWS 社区做出杰出贡献的个人。这些大侠通过内容创作、在活动中发言、组织社区聚会和为开源项目做贡献来分享他们深厚的 AWS 知识。

AWS 大侠峰会汇集了这些杰出的社区领袖,为知识交流、积累人脉和协作提供了一个独特的平台。作为经常通过我们的 AWS 计划与大侠们互动的人,我总是觉得这些峰会非常宝贵,它们提供了深入的技术讨论、抢先了解 AWS 路线图以及直接向 AWS 服务团队提供反馈的机会。在这些活动中获得的洞察和人脉通常可以为更广泛的 AWS 社区转化为更好的资源和指导。

__上周发布的内容__

除了这个鼓舞人心的社区外,以下 AWS 新服务也值得关注:

  • AWS 将互联网协议 v6(IPv6)支持扩展到了 AWS App Runner、AWS Client VPN 和 RDS Data API – 现在还有三项 AWS 服务支持 IPv6 连接,可帮助您满足合规性要求,而且无需处理 IPv4 和 IPv6 之间的地址转换。AWS App Runner 现在支持公有和私有 App Runner 服务端点上基于 IPv6 的入站和出站流量。AWS Client VPN 宣布支持远程访问 IPv6 工作负载,允许您与支持 IPv6 的 VPC 资源建立安全的 VPN 连接。最后,RDS Data API 现在支持 IPv6,从而为您的 Aurora 数据库启用双栈配置(IPv4 和 IPv6)连接。
  • 我们本周推出了两个新的实例系列:新的存储优化型 I8ge 和通用 M8i 实例 – 我们的 I8ge 实例由 AWS Graviton4 处理器提供支持,与基于 Graviton2 的前代实例相比,其计算性能提高了 60%。这些实例采用第三代 AWS Nitro SSD,每 TB 的实时存储性能最多可提高 55%,I/O 延迟显著降低。这些实例拥有 120 TB 的存储空间,大小高达 48xlarge(包括两个裸机选项),在基于 AWS Graviton 的存储优化型实例中提供了极高的存储密度。我们还推出了搭载定制英特尔至强 6 处理器的 M8i 和 M8i-flex 实例。与前代实例相比,这些实例的性价比最高可提高 15%,内存带宽高出 2.5 倍。M8i-flex 实例非常适合通用工作负载,可从 large 到 16xlarge 不等。对于要求苛刻的应用程序,您可以从 13 种大小的 SAP 认证的 M8i 实例中进行选择,包括 2 种裸机选项和新的 96xlarge 大小。
  • Amazon EC2 Mac 专属主机现在支持主机恢复和基于重启的主机维护 – 您可以为 EC2 Mac 专属主机启用两项新功能:主机恢复和基于重启的主机维护。主机恢复会自动检测 Mac 专属主机上的潜在硬件问题,并将 Mac 实例无缝迁移到新的替代主机,从而最大限度地减少对工作负载的干扰。当计划维护事件发生时,基于重启的主机维护会自动停止并重启替代主机上的实例,从而无需在计划的维护时段内进行手动干预。
  • Amazon Q 开发者版现在支持 MCP 管理员控制 – 管理员现在可以为其组织中的所有 Q 开发者版客户端启用或禁用 MCP 功能。当管理员禁用该功能时,将不允许用户添加任何 MCP 服务器,也不会初始化任何先前定义的服务器。

__其他 AWS 新闻__

以下是您可能会感兴趣的一些其他项目和博客文章:

  • 用规则掌握 Amazon Q 开发者版 – 这个周末我读了一篇关于 Amazon Q 开发者版规则特征的有趣文章,我想和大家分享这篇文章。引起我注意的是它如何解决了我在使用人工智能助手时经常遇到的痛点,即不得不反复解释我的编码首选项和标准。使用规则,您只需在 Markdown 文件中定义一次首选项,Amazon Q 开发者版会在每次交互时自动遵循这些首选项。我特别喜欢这个系统的透明度,遵循了哪些规则,以及如何帮助保持团队之间的一致性。自从在我的项目中实施规则以来,我看到了更加稳定的代码质量,同时减少了必须反复解释我们的标准所带来的认知负担。
  • 在 AWS Certified Machine Learning – Specialty 认证的所有四个考试领域中取得优异成绩的策略。我在 AWS 的头三年是在 AWS 培训和认证团队工作,该团队分享了如何为 AWS Certified Machine Learning – Specialty 认证做准备,无论您是从头开始还是建立在现有 AWS 认证的基础上。他们分享了先决条件和指南,帮助您为该认证做好准备,并展示您在使用 AWS 构建机器学习解决方案方面的专业知识。
  • 按照我们在 Prime 会员日之后的传统,我们分享了令人印象深刻的指标,展示了 AWS 服务如何扩展以支持世界上最大的购物活动之一。2025 年 Amazon Prime 会员日成为有史以来规模最大的盛会,在这场持续四天的活动中,商品销量与销售总额均刷新历史记录。今年尤其特别,因为我们看到,通过生成式人工智能产品的进步,Prime 会员日体验发生了重大转变,客户使用 Alexa+、Rufus 和 AI 购物指南来发现优惠并获取产品信息。这些数字令人震惊,Amazon DynamoDB 处理了数十万亿次 API 调用,同时保持了高可用性,提供了毫秒级的响应,并达到每秒 1.51 亿个请求的峰值。Amazon API Gateway 处理了超过 1 万亿个内部服务请求,与 2024 年 Prime 会员日相比,平均每天的请求增加了 30%。

__即将举行的 AWS 活动__

查看您的行程并报名参加即将举行的 AWS 活动:

  • AWS Summit – 加入一系列旨在汇聚云计算社区,以相互交流、协作和了解 AWS 的免费线上和线下活动。在离您最近的城市注册:多伦多(9 月 4 日)、洛杉矶(9 月 17 日)和波哥大(10 月 9 日)。
  • AWS re:Invent 2025 – 这个旗舰年度会议将于 12 月 1 日至 5 日在拉斯维加斯举行。活动目录现已上线。查看您的行程,记下这次 AWS 社区不容错过的聚会。
  • AWS Community Day — 参加由社区主导的会议,这些会议以技术讨论、讲习会和动手实验室为特色,由来自世界各地的 AWS 专家用户和行业领袖主持:亚德里亚地区(9 月 5 日)、波罗的海地区(9 月 10 日)、奥特亚罗瓦(9 月 18 日)和南非(9 月 20 日)、玻利维亚(9 月 20 日)、葡萄牙(9 月 27 日)。

加入 AWS 构建者中心,学习、构建并与 AWS 社区中的构建者建立联系。在此处浏览即将举行的线下和线上活动以及面向开发人员的活动。

以上就是本周的全部内容。欢迎下周一继续查看新的一周综述!

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


AWS 一周综述:AWS Transform、Amazon Neptune 等(2025 年 9 月 8 日)

AWS账单代付阅读(18)

亚马逊AWS官方博客

AWS 一周综述:AWS Transform、Amazon Neptune 等(2025 年 9 月 8 日)

我住在荷兰的乌得勒支,这里的夏天已经接近尾声。两周后,我将参加 9 月 24 日在乌得勒支 Kinepolis Jaarbeurs 举办的 2025 年 AWS Community Day。这项为期一天的活动将汇集来自荷兰各地的 500 多名云从业者,包括五个技术领域的 25 个分论坛。当天的活动将从上午 9:00 的线上主题演讲开始,随后是平行分论坛,重点讨论无服务器架构和容器优化策略的实际实现,无论经验水平如何,都将提供有价值的见解。

去年的荷兰 2024 年 AWS Community Day 汇集了各种各样的云从业者、演讲者和 AWS 爱好者,他们为使社区主导的会议成为一个有价值的知识共享平台做出了贡献。如果您打算参加,请随时来找我讨论 AWS 服务或分享您的云实施经验!

我们看看上周的新公告。

上周发布的内容

AWS Transform 评估现在包括分离存储分析 – AWS Transform 已扩展其评测能力,可以分析本地分离存储基础设施,帮助客户确定迁移总拥有成本(TCO)。该评测现在评估存储区域网络(SAN)、网络附加存储(NAS)、文件服务器、对象存储和虚拟环境,为包括 Amazon S3、Amazon EBS 和 Amazon FSx 在内的相应 AWS 服务提供迁移建议。该工具对当前环境和 AWS 环境进行了全面的总拥有成本比较,并提供了性能和成本优化建议。由于存储占总迁移机会的比例高达 45%,此增强功能可帮助客户实现各种 AWS 迁移选项的可视化。AWS Transform 评估已在美国东部(弗吉尼亚州北部)和欧洲地区(法兰克福)区域推出。

Amazon Bedrock 推出了 Anthropic Claude Sonnet 4 的全球跨区域推理 – Amazon Bedrock 中 Anthropic 的 Claude Sonnet 4 模型现在支持全球跨区域推理,允许将推理请求路由到任何支持的商业 AWS 区域进行处理。此增强功能优化了可用资源,并通过在多个区域分配流量来实现更高的模型吞吐量。以前,您可以选择与特定地理位置(美国、欧盟或亚太地区)相关的跨区域推理配置文件。新的全球跨区域推理配置文件为不需要特定地理位置处理的生成式人工智能使用案例提供了额外的灵活性,有助于管理计划外流量突增并提高模型吞吐量。有关详细的实施指南,请访问 Amazon Bedrock 文档。

Amazon Neptune 数据库增加了对公有端点的支持 – Amazon Neptune 现在支持公有端点,无需复杂的联网配置即可从 VPC 外部直接连接到 Neptune 数据库。此特征可帮助开发人员从开发桌面安全地访问其图形数据库,而无需 VPN 连接或堡垒主机,同时通过 IAM 身份验证、VPC 安全组和传输中加密来维护安全性。可以通过 AWS 管理控制台、AWS CLI 或 AWS SDK 为运行引擎版本 1.4.6 或更高版本的 Neptune 集群启用公有端点。在提供 Neptune 数据库的所有 AWS 区域中,除了 Neptune 的标准定价外,该特征不收取任何额外费用。实施详细信息可在 Amazon Neptune 文档中找到。

ECS Exec 现已在 AWS 管理控制台中推出 – Amazon ECS 现在直接在 AWS 管理控制台中支持 ECS Exec,无需入站端口或 SSH 密钥管理即可对正在运行的容器进行安全、交互式的 Shell 访问。此特征以前只能通过 API、CLI 或 SDK 提供,允许直接从控制台界面访问容器,从而简化故障排除。您可以在创建或更新服务和独立任务时启用 ECS Exec,然后通过在任务详细信息页面上选择“连接”来连接到容器,这将通过 CloudShell 打开交互式会话。控制台还显示用于本地终端的底层 AWS CLI 命令。此特征已在所有 AWS 商业区域推出,并记录在 ECS 开发人员指南中。

AWS 用户通知服务的组织通知配置现已正式推出 – AWS 用户通知服务现在支持组织通知配置,帮助 AWS Organizations 用户集中配置和查看整个组织的通知。管理账户或委派管理员可以为特定组织单元或组织中的所有账户配置通知。该服务支持为任何支持的 Amazon EventBridge 事件配置通知,例如在没有 MFA 的情况下登录控制台,通知显示在管理员的控制台通知中心和 AWS 控制台移动应用程序中。用户通知服务最多支持五名委派管理员,并且在提供 AWS 用户通知服务的所有 AWS 区域均已推出。有关实施的详细信息,请访问 AWS 用户通知服务用户指南。

有关 AWS 公告的完整列表,请关注 AWS 的“新增功能”页面。

即将举行的 AWS 活动

查看您的行程并报名参加即将举行的 AWS 活动。

AWS Summit – 加入一系列旨在汇聚云计算社区,以相互交流、协作和了解 AWS 的免费线上和线下活动。在离您最近的城市注册:苏黎世(9 月 11 日)、洛杉矶(9 月 17 日)和波哥大(10 月 9 日)。

AWS re:Invent 2025 – 12 月 1 日至 5 日,加入我们在拉斯维加斯的行列,全球各地的云开拓者齐聚于此,分享最新的 AWS 创新、点对点学习、专家主导的讨论和宝贵的交流机会。别忘了浏览活动目录。

AWS Community Day – 参加由社区主导的会议,这些会议以技术讨论、讲习会和动手实验室为特色,由来自世界各地的 AWS 专家用户和行业领袖主持:波罗的海地区(9 月 10 日)、奥特亚罗瓦(9 月 18 日)、南非(9 月 20 日)、玻利维亚(9 月 20 日)、葡萄牙(9 月 27 日)。

在此处浏览所有即将举行的由 AWS 主办的线下和线上活动。

以上就是本周的全部内容。欢迎下周一继续查看新的“一周综述”!

*本文是我们一周综述系列中的一篇。请关注每周的“一周回顾”文章,快速总览来自 AWS 的重要新闻和公告!*

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


通过 VS Code IDE 中的 LocalStack 集成,加速无服务器测试

AWS账单代付阅读(19)

亚马逊AWS官方博客

通过 VS Code IDE 中的 LocalStack 集成,加速无服务器测试

今天,我们宣布将 LocalStack 集成到 AWS Toolkit for Visual Studio Code 中,这样开发人员就能够比以往任何时候都更容易在本地测试和调试无服务器应用程序。此增强功能基于我们最近对 AWS Lambda 开发体验的改进,包括我们于 2025 年 7 月推出的控制台到 IDE 的集成和远程调试功能,延续了我们对简化 Amazon Web Services(AWS)无服务器开发的承诺。

在构建无服务器应用程序时,开发人员通常将重点放在三个关键领域以简化测试体验:单元测试、集成测试和在云中运行的调试资源。尽管 AWS Serverless Application Model 命令行界面(AWS SAM CLI)为单个 Lambda 函数提供了出色的本地单元测试功能,但使用涉及多个 AWS 服务 [例如 Amazon Simple Queue Service(Amazon SQS)、Amazon EventBridge 和 Amazon DynamoDB] 的事件驱动型架构的开发人员,需要一个全面的解决方案来进行本地集成测试。尽管 LocalStack 提供了 AWS 服务的本地模拟,但开发人员之前必须将其作为独立工具进行管理,需要复杂的配置和在多个界面之间频繁切换上下文,这减缓了开发周期。

**AWS Toolkit for VS Code 中的 LocalStack 集成

**为了应对这些挑战,我们推出了 LocalStack 集成,这样开发人员就可以将 AWS Toolkit for VS Code 直接连接到 LocalStack 端点。通过这种集成,开发人员无需在工具之间切换或管理复杂的 LocalStack 设置即可测试和调试无服务器应用程序。开发人员现在可以在本地模拟涉及 Lambda、Amazon SQS 和 EventBridge 等服务的端到端事件驱动型工作流,无需管理多个工具、执行复杂的端点配置或处理以前需要连接到云资源的服务边界问题。

这种集成的关键优势在于,AWS Toolkit for VS Code 现在可以连接到 LocalStack 等自定义端点,这在以前是不可能的。以前,要将 AWS Toolkit for VS Code 指向其 LocalStack 环境,开发人员必须在工具之间进行手动配置和上下文切换。

在 VS Code 中开始使用 LocalStack 非常简单。开发人员可以从 LocalStack

免费版本开始,该版本为核心 AWS 服务提供本地模拟,非常适合早期开发和测试。使用 VS Code 中的引导式应用程序演练,开发人员可以直接从工具包界面安装 LocalStack,该界面会自动安装 LocalStack 扩展并指导开发人员完成安装过程。配置后,开发人员可以直接将无服务器应用程序部署到模拟环境并在本地测试其功能,而无需退出 IDE。 **操作演示

首先,我会将 AWS Toolkit for VS Code 副本更新到最新版本。完成此操作后,当我转到 应用程序构建器并单击 应用程序构建器演练**时,我可以看到一个新选项。这样我就能够一键安装 LocalStack。

完成 LocalStack 的设置后,我可以从状态栏启动,然后就能从我配置的 AWS 配置文件列表中选择 LocalStack。在此插图中,我使用应用程序编辑器,通过 Amazon API Gateway、Lambda 和 DynamoDB 构建一个简单的无服务器架构。通常,我会使用 AWS SAM 将其部署到 AWS。在这种情况下,我将使用相同的 AWS SAM 命令在本地部署我的堆栈。

我只是从命令行执行“sam deploy –guided –profile localstack”,然后按照通常的提示进行操作即可。使用 AWS SAM CLI 部署到 LocalStack 提供的体验与部署到 AWS 时所习惯的体验完全相同。在下面的屏幕截图中,我可以看到 AWS SAM 的标准输出,以及 AWS Toolkit Explorer 中列出的新 LocalStack 资源。

我甚至可以进入 Lambda 函数并编辑我在本地部署的函数代码!

在 LocalStack 网站上,我可以登录并查看我在本地运行的所有资源。在下面的屏幕截图中,您可以看到我刚刚部署的本地 DynamoDB 表。

**增强的开发工作流

**这些新功能补充了我们最近推出的控制台到 IDE 的集成和远程调试特征,创造了全面的开发体验,可满足整个开发生命周期中的不同测试需求。AWS SAM CLI 为单个 Lambda 函数提供出色的本地测试,可有效处理单元测试场景。对于集成测试,LocalStack 集成支持在本地测试多服务工作流,而不会出现复杂的 AWS Identity and Access Management(IAM)权限、Amazon Virtual Private Cloud(Amazon VPC)配置或可能减慢开发速度的服务边界问题。

当开发人员需要在开发环境中测试使用 AWS 服务时,他们可以使用我们的远程调试功能,从而提供对 Amazon VPC 资源和 IAM 角色的完全访问权限。这种分层方法使开发人员能够腾出时间在早期开发阶段使用 LocalStack 专注于业务逻辑,然后在需要根据 AWS 服务行为和配置进行验证时无缝过渡到基于云的测试。这种集成无需在多个工具和环境之间切换,因此开发人员可以更快地识别和修复问题,同时保持灵活性,可以根据自己的特定需求选择正确的测试方法。

**现已推出

**您可以通过 AWS Toolkit for VS Code 更新到 v3.74.0 开始使用这些新特征。LocalStack 集成现已在除 AWS GovCloud(美国)区域以外的所有商业 AWS 区域推出。要了解更多信息,请访问 AWS Toolkit for VS Code 和 Lambda 文档。

对于需要更广泛服务范围或高级特征的开发人员,LocalStack 提供了具有扩展功能的额外等级。使用此集成不会产生额外的 AWS 费用。

这些增强功能代表了我们在简化无服务器开发体验的持续承诺中向前迈出的又一重要一步。在过去的一年中,我们一直致力于让 VS Code 成为无服务器开发人员的首选工具,这种 LocalStack 集成继续了这一旅程,为开发人员提供了比以往任何时候都更高效地构建和测试无服务器应用程序的工具。

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


宣布推出 Amazon Quick Suite:您的代理式团队成员,负责回答问题和采取措施

AWS账单代付阅读(23)

亚马逊AWS官方博客

宣布推出 Amazon Quick Suite:您的代理式团队成员,负责回答问题和采取措施

今天,我们宣布推出 Amazon Quick Suite,这是一个新的代理式团队成员,可以快速回答您在工作中遇到的问题,并将这些洞察转化为操作。Quick Suite 没有在多个应用程序之间切换来收集数据、查找重要信号和趋势以及完成手动任务,而是将人工智能驱动的研究、商业智能和自动化功能集成到单个工作空间中。现在,您可以通过自然语言查询分析数据,在几分钟内找到企业和外部来源的关键信息,并自动执行从简单任务到复杂多部门工作流程的流程。

以下是 Quick Suite 的介绍。

企业用户通常需要跨多个应用程序收集数据:提取客户详细信息、检查绩效指标、审核内部产品信息以及进行竞争情报分析。这种分散的过程通常需要咨询专业团队来分析高级数据集,在某些情况下,必须定期重复,这会降低效率并导致决策洞察不完整。

Quick Suite 通过将研究、商业智能和自动化领域的代理式团队成员整合到一个统一的数字工作空间中来处理您的日常工作,从而帮助您克服这些挑战。

提高工作效率的集成功能

Quick Suite 包含以下集成功能:

研究 –Quick Research 通过结合企业知识、优质第三方数据和来自互联网的数据来加速复杂的研究,进而获得更全面的洞察。 商业智能 –Quick Sight 提供人工智能驱动的商业智能功能,通过自然语言查询和交互式可视化将数据转化为切实可行的洞察,帮助每个人更快地做出决策并取得更好的业务成果。 自动化 –Quick Flows 和 Quick Automate 可帮助用户和技术团队自动执行任何业务流程,从简单的例行任务到复杂的多部门工作流程,从而加快执行速度并减少整个组织的手动工作。

我们深入了解一下其中的一些关键功能。

Quick Index:您的统一知识基础

Quick Index 可以创建安全、可搜索的存储库,整合文档、文件和应用程序数据,为整个组织提供人工智能驱动的洞察和响应。

作为 Quick Suite 的基础组件,Quick Index 在后台运行,将来自数据库和数据仓库以及文档和电子邮件等来源的所有数据汇集在一起。这创建了一个单一的智能知识库,使人工智能的响应更加准确,并减少了搜索信息所花费的时间。

Quick Index 会自动索引并准备您添加到 Quick Suite 的任何上传文件或非结构化数据,从而实现高效的搜索、排序和数据访问。例如,当您搜索特定的项目更新时,Quick Index 会立即返回上传的文档、会议记录、项目文件和参考资料的结果,所有这些结果都来自一次统一的搜索,而不是检查不同的存储库和文件系统。

要了解更多信息,请访问 Quick Index 概览页面。

**Quick Research:从复杂的业务挑战到专家级洞察

**Quick Research 是一个强大的代理,可以对您的企业数据和外部来源进行全面研究,在几分钟或几小时内提供情境化、切实可行的洞察,以前这项工作可能需要更长时间。

Quick Research 系统地将复杂的问题分解为有组织的研究计划。从简单的提示开始,该服务会自动创建详细的研究框架,概述全面分析所需的方法和数据来源。

Quick Research 创建计划后,您可以轻松地通过自然语言对话对其进行完善。当您对计划感到满意时,它会在后台工作,从多个来源收集信息,使用先进的推理验证调查发现,并通过引文提供详尽的分析。

Quick Research 可与您连接到 Quick Suite 的企业数据集成,Quick Suite 是一个统一的知识基础,可连接到您的控制面板、文档、数据库和外部来源,包括 Amazon S3、Snowflake、Google Drive 和 Microsoft SharePoint。Quick Research 将关键洞察建立在原始来源的基础上,并揭示清晰的推理路径,帮助您验证准确性,理解建议背后的逻辑,并自信地展示调查发现。您可以将调查发现追溯到其原始来源,并通过来源引文验证结论。这使其成为需要深入分析的复杂主题的理想选择。

要了解更多信息,请访问 Quick Research 概览页面。

**Quick Sight:人工智能驱动的商业智能

**Quick Sight 提供人工智能驱动的商业智能功能,通过自然语言查询和交互式可视化将数据转化为切实可行的洞察。

您可以使用对话提示创建控制面板和执行摘要,从而缩短控制面板开发时间,同时无需专业技能即可进行高级分析。

Quick Sight 可帮助您使用自然语言提出有关数据的问题,并即时获得可视化效果、执行摘要和洞察。这种生成式人工智能集成无需技术专业知识即可通过控制面板和数据集为您提供答案。

使用场景功能,您可以使用自然语言进行假设分析,并提供分步指导,探索复杂的业务场景并比以前更快地找到答案。

此外,您可以通过创建工单、发送警报、更新记录或直接从控制面板触发自动化工作流程,通过一键操作来响应洞察,而无需切换应用程序。

要了解更多信息,请访问 Quick Sight 概览页面。

**Quick Flows:适用于所有人的自动化

**借助 Quick Flows,任何用户都可以通过使用自然语言描述其工作流程来自动执行重复任务,而无需任何技术知识。Quick Flows 从内部和外部来源获取信息,在业务应用程序中采取措施、生成内容并处理特定流程的要求。

从简单的业务需求开始,该服务创建了一个多步骤流程,包括用于收集信息的输入步骤、用于人工智能处理的推理小组以及用于生成和呈现结果的输出步骤。

配置流程后,您只需单击一下即可将其共享给您的同事和其他团队。要执行流程,用户可以从库中将其打开或从聊天中调用,提供必要的输入,然后与代理聊天,进而完善输出并进一步自定义结果。

要了解更多信息,请访问 Quick Flows 概览页面。

**Quick Automate:企业级流程自动化

**Quick Automate 帮助技术团队为跨部门、系统和第三方集成的复杂多步骤流程构建并部署复杂的自动化。使用人工智能驱动的自然语言处理,Quick Automate 将复杂的业务流程转换为多代理工作流程,只需描述您想要自动化的内容或上传流程文档即可创建。

虽然 Quick Flows 可以处理简单的工作流程,但 Quick Automate 专为全面而复杂的业务流程而设计,例如新客户引导、采购自动化或涉及多个批准步骤、系统集成和跨部门协调的合规程序。Quick Automate 提供高级编排特征,具有广泛的监控、调试、版本控制和部署特征。

然后,Quick Automate 会生成包含详细步骤和操作的全面自动化计划。您将找到一个能够理解自然语言指令的用户界面代理,可以自主浏览网站、完成表单输入、提取数据并为下游自动化步骤生成结构化输出。

此外,您可以定义包含指令、知识和工具的自定义代理,使用可视化构建体验完成特定流程的任务,无需编写代码。

Quick Automate 包括企业级特征,例如用户角色管理和人性化特征,这些特征可在继续工作流程之前将特定任务路由给用户或组进行审核和批准。该服务通过实时监控、成功率跟踪和审计跟踪记录来提供全面的可观测性,进而实现合规性和治理。

要了解更多信息,请访问 Quick Automate 概览页面。

**其他基础功能

Quick Suite 包括其他基础功能,可在整个企业中提供无缝的数据组织和情境式人工智能交互。 空间** – 空间为每位业务用户提供了一种通过上传文件或连接到特定工作或特定功能的特定数据集和存储库来添加自己的上下文的简单方法。例如,您可以为季度计划创建一个空间,其中包括预算电子表格、市场研究报告和战略规划文档。或者,您可以设置一个产品发布空间来连接您的项目管理系统和客户反馈数据库。空间可以从个人使用扩展到企业级部署,同时保持访问权限并与 Quick Suite 功能无缝集成。

聊天代理 – Quick Suite 包括洞察代理,您可以使用这些代理通过自然语言与数据和工作流程进行交互。Quick Suite 包括一个内置代理来回答所有数据中的问题,以及可以根据特定的专业知识和业务背景进行配置的自定义聊天代理。自定义聊天代理可以针对特定部门或使用案例量身定制,例如与您的产品目录数据和空间中存储的定价信息相关的销售代理,或者根据您的监管要求和请求批准的操作进行配置的合规代理。

**需要了解的其他事项

如果您是 Amazon QuickSight 的现有客户,**Amazon QuickSight 的客户将升级到 Quick Suite,这是一个统一的数字工作空间,包括您所有现有的 QuickSight 商业智能功能(现称为“Quick Sight”)以及新的代理式人工智能功能。这是一种界面和功能变更,您的数据连接、用户访问权限、内容、安全控制、用户权限和隐私设置保持不变。没有移动、迁移或更改任何数据。

Quick Suite 为每位用户提供基于订阅的定价,并针对 Quick Index 和其他可选特征按使用量收费。您可以在 Quick Suite 定价页面上找到更多详细信息。

现已推出

Amazon Quick Suite 为您提供了一组代理式团队成员,帮助您使用所有数据获得所需的答案,并立即将答案转化为操作,这样您就可以专注于推动业务和客户成果的高价值活动。

访问入门页面,立即开始使用 Amazon Quick Suite。

祝大家构建顺利

— Esra 和 Donnie

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


全新通用型 Amazon EC2 M8a 实例现已推出

AWS账单代付阅读(25)

亚马逊AWS官方博客

全新通用型 Amazon EC2 M8a 实例现已推出

今日,我们宣布通用型 M 实例系列的最新成员 Amazon Elastic Compute Cloud(Amazon EC2)M8a 实例正式发布。该实例由第五代 AMD EPYC(代号 Turin)处理器提供支持,最高频率可达 4.5GHz。与 M7a 实例相比,M8a 实例的性能可提升高达 30%,性价比可提升高达 19%。此外,它们还能提供更高的内存带宽、更出色的联网和存储吞吐量,以及灵活的配置选项,可支持各类通用型工作负载。

**与 M7a 实例相比,M8a 实例每 vCPU 性能可提升高达 30%,非常适合需要高性能与高吞吐量的应用程序,例如金融类应用程序、游戏、渲染、应用程序服务器、模拟建模、中型数据存储、应用程序开发环境及缓存实例集等。 M8a 的改进

M8a 实例的内存带宽比 M7a 实例高出 45%,可加快内存数据库、分布式缓存和实时分析的速度。

针对 I/O 需求较高的工作负载,M8a 实例可提供高达 75 Gbps 的网络带宽和 60 Gbps 的 Amazon Elastic Block Store(Amazon EBS)带宽,较上一代实例提升 50%。这些增强功能可为依赖高速数据传输与低延迟网络通信的现代应用程序提供支持。

M8a 实例上的每个 vCPU 均对应一个物理 CPU 核心,这意味着不存在同步多线程(SMT)。在应用程序基准测试中,与 M7a 实例相比,M8a 实例运行 GroovyJVM 时性能可提升高达 60%,运行 Cassandra 时性能可提升高达 39%。

M8a 实例支持实例带宽配置(IBC),可灵活分配网络带宽与 EBS 带宽资源。用户可将网络或 EBS 带宽扩展最高 25%,进而提升数据库性能、查询处理速度和日志记录速度。

M8a 实例提供 10 种虚拟化大小和 2 种裸机选项(

metal-24xlmetal-48xl),提供从小型应用到大型企业级工作负载的部署选择。所有升级均基于 AWS Nitro System 构建,能为所有大小的实例提供低虚拟化开销、稳定的性能以及高级安全保障。 这些实例采用最新的第六代 AWS Nitro 卡,可卸载并加速 I/O 功能,从而提高整体系统性能。

M8a 实例的最大大小为 192 个 vCPU、768 GiB 内存。以下是详细规格:

|

M8a |

vCPU |

内存(GiB) |

网络带宽(Gbps) |

EBS 带宽(Gbps)

|

中型 |1

|4

|高达 12.5

|最高 10

|

大型 |2

|8

|高达 12.5

|最高 10

|

xlarge |4

|16

|高达 12.5

|最高 10

|

2xlarge |8

|32

|高达 15

|最高 10

|

4xlarge |16

|64

|高达 15

|最高 10

|

8xlarge |32

|128

|15

|10

|

12xlarge |48

|192

|22.5

|15

|

16xlarge |64

|256

|30

|20

|

24xlarge |96

|384

|40

|30

|

48xlarge |192

|768

|75

|60

|

metal-24xl |96

|384

|40

|30

|

metal-48xl |192

|768

|75

|60

有关实例大小和规格的完整列表,请访问 Amazon EC2 M8a 实例页面。

**M8a 实例非常适合需要平衡计算、内存和网络性能的通用型应用程序。M8a 实例非常适合 Web 和应用程序托管、微服务架构,以及注重性能可预测性和高效扩展的数据库。 M8a 实例的适用场景

这些实例已通过 SAP 认证,也非常适合财务应用程序和企业资源规划(ERP)系统等企业工作负载。除了需要成本效益和灵活性的开发和测试环境外,它们对于内存缓存和客户关系管理(CRM)同样有效。凭借这一多功能性,M8a 实例可支持各种工作负载,同时帮助用户提高性价比。

**Amazon EC2 M8a 实例现已在 AWS 区域美国东部(俄亥俄州)、美国西部(俄勒冈州)和欧洲(西班牙)推出。 可将 M8a 实例作为按需实例、节省计划和竞价型实例购买,也可在专属主机上使用。要了解更多信息,请访问 Amazon EC2 定价页面。 现已推出

要了解更多信息,请访问 Amazon EC2 M8a 实例页面,并通过 AWS re:Post for EC2 或您常用的 AWS Support [已去除[已去除推广语]语]发送反馈。

— Betty

|

AWS 架构师中心: 云端创新的引领者

探索 AWS 架构师中心,获取经实战验证的最佳实践与架构指南,助您高效构建安全、可靠的云上应用


AWS代付、代充值免实名

联系我们阿里云国际免实名