什么是 Amazon Glue Studio? - Amazon Glue Studio
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

什么是 Amazon Glue Studio?

Amazon Glue Studio 是一个新图形界面,可以方便地在 Amazon Glue 中创建、运行和监控提取、转换和加载(ETL)任务。您可以直观地编写数据转换工作流,并在 Amazon Glue 的基于 Apache Spark 的无服务器 ETL 引擎上顺畅运行。您可以在任务的每个步骤中检查架构和数据结果。


            屏幕截图显示 Amazon Glue Studio 的任务编辑页面。此时将显示一个任务图,其中包含三个源节点、三个转换节点、两个连接节点和一个数据目标节点。在图形右侧,节点详细信息窗格显示 S3 数据源的 Data preview (数据预览) 选项卡。

Amazon Glue Studio 不仅是为表格式数据设计的,也是为在类似电子表格的数据准备界面中难以呈现的半结构化数据设计的。半结构化数据的示例包括应用程序日志、移动事件、物联网(IoT)事件流和社交源。

在 Amazon Glue Studio 创建任务时,您可以从存储在 Amazon 服务中的大量数据源中进行选择。您可以快速准备数据,以便在数据仓库和数据湖中进行分析。Amazon Glue Studio 还提供工具来监控 ETL 工作流并验证其是否按预期运行。您可以预览每个节点的数据集。这会在任务的每个步骤中显示数据样本,有助于您调试 ETL 任务。

Amazon Glue Studio 能够提供一个可视化界面,易于:

  • 从 Amazon S3、Amazon Kinesis 或 JDBC 源中提取数据。

  • 配置能够连接、采样或转换数据的转换。

  • 指定转换后的数据的目标位置。

  • 查看任务中每个点的架构或数据集样本。

  • 运行、监控和管理 Amazon Glue Studio 创建的任务。

Amazon Glue Studio 的功能

Amazon Glue Studio 能够帮助您创建并管理收集、转换和清理数据的任务。高级用户可以使用 Amazon Glue Studio 进行问题排查并编辑任务脚本。

可视化任务编辑器

当您在 Amazon Glue Studio 中创建和编辑任务时,您可以执行以下操作:

  • 将其他节点添加到要实现的任务中:

    • 多个数据源。

    • 多个数据目标。

    • 将连接器用于以前不受支持的外部数据存储的数据源和目标

  • 查看任务图中每个节点上的数据样本。

  • 更改现有节点的父节点。

  • 添加以下内容的转换:

    • 联接数据源。

    • 从数据中选择特定字段。

    • 删除字段。

    • 重命名字段。

    • 更改字段的数据类型。

    • 将数据中的选择字段写入 Amazon S3 存储桶(spigot)中的 JSON 文件。

    • 从数据集中筛选出数据。

    • 将数据集拆分为两个数据集。

    • 查找数据集中的缺失值,并在单独的列中提供缺失值。

    • 使用 SQL 查询和转换数据。

    • 使用自定义代码。

用于交互式开发和调试任务脚本的笔记本界面

Amazon Glue Studio 通过一键式设置增强了笔记本体验,便于任务创作和数据探索。笔记本和连接都将自动为您配置。您可以使用基于 Juypter Notebook 的笔记本界面,使用 Amazon Glue 无服务器 Apache Spark ETL 基础设施以交互方式开发、调试和部署脚本和工作流。您可以在笔记本环境中执行临时查询、数据分析和可视化(例如,表格和图表)。

Amazon Glue Studio 中的笔记本编辑器界面提供以下功能:

  • 没有要预置或管理的集群

  • 没有等待运行笔记本的空闲集群成本

  • 无需预先配置

  • 对于相同的开发环境,没有资源争用

  • 安装和用法简单

  • 在与运行 Amazon Glue ETL 任务完全相同的运行环境中进行测试

任务脚本代码编辑器

Amazon Glue Studio 还有一个脚本编辑器,用于为您的任务编写或自定义提取、转换和加载(ETL)代码。您可以使用 Amazon Glue Studio 中的可视化编辑器快速设计您的 ETL 任务,然后编辑生成的脚本,为您的任务的独特组件编写代码。

创建新任务时,您可以选择为 Spark 任务或 Python Shell 任务编写脚本。您可以使用 Python 或 Scala 为 Spark 任务进行任务 ETL 脚本编码。如果您创建 Python Shell 任务,任务 ETL 脚本将使用 Python 3.6。

Amazon Glue Studio 中的脚本编辑器界面提供以下功能:

  • 您可以在脚本中插入、修改以及删除源、目标和转换。

  • 添加或修改数据源、目标和转换的参数。

  • 语法和关键字突出显示

  • 本地单词、Python 关键字和代码片段的自动完成建议。

任务性能控制面板

Amazon Glue Studio 为您的 ETL 任务提供一个全面的运行控制面板。控制面板显示特定时间范围内运行的任务的相关信息。控制面板上显示的信息包括:

  • 任务概览摘要 – 显示总任务、当前运行、已完成运行和失败任务的简要概览。

  • 状态摘要 – 基于工件类型和任务类型等任务属性提供高级任务指标。

  • 任务运行时间线 – 当前选定时间范围内成功运行、失败运行和总运行的条形图摘要。

  • 任务运行细分 – 选定时间范围内运行的任务的详细列表。

数据集分区支持

您可以使用 Amazon Glue Studio 来高效处理分区的数据集。您可以使用 SQL 表达式或用户定义的函数来加载、筛选、转换和保存分区的数据,从而避免从 Amazon S3 列出和读取不必要的数据。

应在何时使用 Amazon Glue Studio?

使用 Amazon Glue Studio 提供简单的可视化界面,创建 ETL 工作流,实现数据清理和转换,并将其在 Amazon Glue 上运行。

Amazon Glue Studio 使 ETL 开发人员能够轻松创建可重复的流程,从而移动和转换大型半结构化数据集,并将其加载到数据湖和数据仓库中。它能够提供一个方框和箭头样式的可视化界面,用于开发和管理 Amazon Glue ETL 工作流,以便您可以选择使用代码进行自定义。Amazon Glue Studio 能够结合传统 ETL 工具的易用性,以及 Amazon Glue 大数据处理引擎的强大功能和灵活度。

Amazon Glue Studio 提供多种自定义 ETL 脚本的方法,包括在可视化编辑器中添加代表代码片段的节点。

使用 Amazon Glue Studio 轻松实现任务管理。Amazon Glue Studio 为您提供任务和任务运行管理界面,清楚说明任务之间的关系,并提供任务运行的总体情况。任务管理页面能够轻松地对任务执行以前难以在 Amazon Glue 控制台实现的批量操作。所有任务运行都在单个界面中实现,便于您在其中进行搜索和筛选。这使您可以不断更新查看 ETL 操作和您使用的资源。您可以在 Amazon Glue Studio 使用实时控制面板来监控任务运行,并验证其按预期运行。

访问 Amazon Glue Studio

要访问 Amazon Glue Studio,请以具有所需权限的用户身份登录 Amazon,如为 Amazon Glue Studio 设置 IAM 权限中所述。然后您可以登录 Amazon Web Services Management Console,并通过以下网址打开 Amazon Glue 控制台:https://console.aws.amazon.com/glue/。单击导航窗格中的 Amazon Glue Studio 链接。

Amazon Glue Studio 定价

使用 Amazon Glue Studio,您需要支付数据预览费用。为任务指定 IAM 角色后,可视化编辑器将启动 Apache Spark 会话,从而对源数据进行采样并执行转换。此会话运行 30 分钟,然后自动关闭。Amazon按开发终端节点费率(DEVED-DPU-Hour)向您收取 2 个 DPU 费用,通常每 30 分钟会话收取 0.44 USD 的费用。每个区域的费率可能会有所不同。在 30 分钟会话结束时,您可以在任何节点的 Data preview (数据预览) 选项卡上选择 Retry (重试),或者重新加载可视化编辑器页面,以相同速率开始新的 30 分钟会话。

您还需要为任务使用的或与之交互的基础 Amazon 服务付费,例如 Amazon Glue、数据源和数据目标。有关定价信息,请参阅 Amazon Glue 定价