相关文章推荐
微笑的闹钟  ·  java.lang.AssertionErr ...·  1 年前    · 
满身肌肉的小虾米  ·  jqGrid ...·  2 年前    · 

组件管理

更新时间:

组件用于将 SQL 过程抽象为一个 SQL 模板,实现 SQL 代码的复用。使用组件前,您需先根据业务需要创建符合业务加工过程的组件。本文为您介绍在数据开发(Data Studio)的组件管理界面,如何创建组件,并进行组件的分享、升级、查看组件引用记录等管理操作。

组件介绍

MaxCompute 实际业务实践中,存在大量类似的 SQL 代码过程,过程中输入表和输出表的结构一致或结构类型兼容,仅名称不同。此时,组件的开发者可将该 SQL 过程抽象为一个 SQL 组件节点,将可变的输入表抽象为输入参数,可变的输出表抽象为输出参数,实现 SQL 代码的复用。

后续在使用 SQL 组件节点时,只需从代码组件列表中选择和自己的业务处理过程类似的组件,并为该组件配置自己业务中特定的输入表和输出表,无需再次编辑代码,便可直接生成新的 SQL 组件节点,极大提升了开发效率,避免重复开发。SQL 组件节点生成后的发布、调度操作,与普通 SQL 节点的操作方式相同。

说明

当前仅 MaxCompute 计算引擎支持使用 SQL 组件。

权限说明

您需具备 DataWorks 工作空间的 开发 权限,才可创建并使用组件。授权详情请参见 空间级模块权限管控

组件类型

组件分为项目组件及公共组件,组件开发者(即创建组件的用户)在创建组件时可自行定义。

  • 项目组件管理 :组件发布后,默认仅该 DataWorks 工作空间的用户可使用。若您希望使用该类组件,则需成为此工作空间的成员,详情请参见 空间级模块权限管控

  • 公共组件管理 :组件的开发者可进入 公开组件管理区域 ,将具有全局通用性的组件发布到整个租户内,发布后,租户内所有用户均可使用该公共组件。

进入组件管理

  1. 进入 DataWorks 工作空间列表页 ,在顶部切换至目标地域,找到已创建的工作空间,单击 操作 列的 快速进入 > Data Studio ,进入 Data Studio。

  2. 在左侧导航栏单击 image ,进入组件管理。

组件使用流程

步骤一:定义组件

组件开发者可通过数据开发(Data Studio)的 组件管理 界面,定义通用逻辑的过程体代码及输入输出参数,通过编写抽象的 SQL 加工过程,将指定的输入表通过输入参数进行加工处理,生成有业务价值的输出表(即输出参数)。代码中输入参数和输出参数的格式为 @@{参数名}

  1. 项目组件管理 区域单击 image ,选择 新建 SQL 组件... ,您也可以先选择 新建目录... ,规划组件目录后,再右键目录,选择 新建 SQL 组件...

    说明
    • 本工作空间成员创建的组件在 项目组件管理 下。

    • 组件公开后会在 公共组件管理 下。

  2. 配置组件信息。

    1. 配置组件过程体。

      过程体即为组件的实现代码。通过编写抽象的 SQL 代码(即 SQL 加工过程),使用 @@{参数名} 格式,引入输入参数和输出参数,将指定的输入表通过输入参数进行加工处理,生成有业务价值的输出表。后续使用组件时,只需配置不同的输入参数和输出参数,便可通过该代码模板生成正确可运行的 SQL 代码。

    2. 配置输入参数。

      单击组件编辑页面右侧的 参数配置 ,单击 输入参数 右侧的 image ,定义过程体的输入参数,支持 Table String 类型,即过程体的输入参数为某表或某字符串。 image

      说明

      您也可以单击组件编辑页面顶部的输入输出参数解析,使用自动解析功能从代码中自动识别输入和输出参数,然后再根据下表配置相关参数。

      Table

      使用场景

      若使用组件加工源表数据时,输出结果类别单一恒定,则请使用该类型。

      配置参数及说明

      • 关键参数 参数定义

      • 配置说明 :用于将输入表的结构进行文本化呈现,其中可包含表的字段、字段类型及字段含义等内容。通过该形式,告知组件使用者,在使用组件时需为输入参数配置与输入表结构参数个数相同,类型兼容的输入表。防止配置的输入表和组件定义的输入表字段个数不一致、字段类型不兼容,导致组件运行时出错。

        说明

        该定义仅为参考,为您提供输出参数配置的帮助提示,并不会即时强制检查。

      • 配置示例

        参数定义的格式建议为:

        字段1名 字段1类型 字段1注释 
        字段2名 字段2类型 字段2注释 
        字段n名 字段n类型 字段n注释

        配置示例:

        area_id STRING '区域id' 
        city_id STRING '城市id' 
        order_amt DOUBLE '订单金额' 

      String

      使用场景

      若使用组件加工源表数据时,需通过变量控制输入参数的取值,则请使用该类型。

      配置参数及说明

      • 关键参数 默认值

      • 配置说明 :该类型支持设置参数默认值,设置后,组件使用过程中默认使用所配置的参数默认值。

      • 配置示例

        • 场景一:组件过程的输出表需输出每个区域前 N 个城市的销售额,则可设置 N 为该组件的输入参数,N 的取值可通过字符串类型参数进行控制。

        • 场景二:组件过程的输出表需输出省份的销售总额,可设置一个省份字符串参数作为该组件的输入参数,通过指定不同的省份,获取相应省份的销售数据。

    3. 配置输出参数。

      定义过程体的输出参数,即组件最终产出表。为便于组件使用者使用组件,您可在输出参数配置中,填写使用该组件后输出表的表结构,供组件使用者参考。

      单击组件编辑页面右侧的 参数配置 ,单击 输出参数 右侧的 image ,定义过程体的输出参数。

      说明

      您也可以单击组件编辑页面顶部的输入输出参数解析,使用自动解析功能从代码中自动识别输入和输出参数,然后再根据下表配置相关参数。

      • 关键参数 :参数定义。

      • 配置说明 :用于将输出表的结构进行文本化呈现,其中可包含表的字段、字段类型及字段含义等内容。通过该形式,告知组件使用者,在使用组件时需为输出参数配置与输出表结构参数个数相同,类型兼容的输出表。防止配置的输出表和组件定义的输出表字段个数不一致、字段类型不兼容,导致组件运行时出错。

        说明

        该定义仅为参考,为您提供输出参数配置的帮助提示,并不会即时强制检查。

      • 配置示例

        参数定义的格式建议为:

        字段1名 字段1类型 字段1注释 
        字段2名 字段2类型 字段2注释 
        字段n名 字段n类型 字段n注释

        除此之外,输出参数定义还可根据您所需的处理结果,添加汇总输出结果字段。例如,排名、总收入等。例如:

        area_id STRING '区域id' 
        city_id STRING '城市id' 
        order_amt DOUBLE '订单金额'
        rank BIGINT '排名'
  3. 单击 保存 提交

    组件创建完成后,可在 SQL 组件节点中引用,帮助您快速生成业务所需的目标表。使用详情请参见 步骤二:引用组件

  4. (可选)您可以单击 公开组件 ,将具有全局通用性的组件发布到整个租户内(在 公共组件管理区域 展示),分享组件并发布后,租户内所有用户均可使用该组件。

步骤二:引用组件

你可以通过如下方式引用组件。

在数据开发 SQL 组件节点中引用

组件使用者可以 数据开发 界面,通过创建 SQL 组件节点引用所需组件,替换组件中的输入与输出参数,实现代码复用。

  1. Data Studio 左侧导航栏单击 image ,进入数据开发。

  2. 项目目录 中根据业务需要,规划创建 SQL 组件节点的位置后,右键目录或单击 image ,选择 新建节点... > MaxCompute > SQL 组件节点 ,自定义 SQL 组件节点名称。

  3. SQL 组件节点编辑页面,单击右侧 组件设置 ,然后 选择组件代码

    image

  4. 选择组件代码后,组件代码将自动填充到 SQL 组件编辑页,您可以在 组件设置 中,定义各参数取值。

从项目组件管理中引用

组件使用者可以在 组件管理 界面,找到待引用的组件,然后通过直接引用创建 SQL 组件节点,替换组件中的输入与输出参数,实现代码复用。

  1. Data Studio 左侧导航栏单击 image ,进入组件管理。

  2. 项目组件管理 中找到目标组件后右键,选择 引用组件

    image

  3. 根据页面引导,选择 SQL 组件节点创建的位置以及 SQL 组件的名称。

  4. 创建成功后,组件代码将自动填充到 SQL 组件编辑页,您可以在 组件设置 中,定义各参数取值。

从公共组件管理中引用

组件使用者可以在 组件管理 界面,找到其他租户公开的组件,然后通过直接引用创建 SQL 组件节点,替换组件中的输入与输出参数,实现代码复用。

  1. Data Studio 左侧导航栏单击 image ,进入组件管理。

  2. 公共组件管理 中找到目标组件后,单击 引用

    image

  3. 根据页面引导,选择 SQL 组件节点创建的位置以及 SQL 组件的名称。

  4. 创建成功后,组件代码将自动填充到 SQL 组件编辑页,您可以在 组件设置 中,定义各参数取值。

升级组件

升级操作:组件开发者

组件开发者可根据需要编辑组件代码及相关参数配置,编辑完成后保存提交即可升级为新版本组件,您可在 版本 处查看组件各个版本的详情。

image

引用组件版本 升级 :组件使用者

组件升级后,若您的 SQL 组件节点引用了该组件,则引用时可选择是否使用该组件已升级的最新版本。

image

  • 若无需使用,则继续引用原有版本。

  • 若使用,需确认新版本组件对于 SQL 组件节点的参数配置是否继续生效,并根据新版本组件的说明进行相关调整,编辑完成后进行提交发布。提交发布流程同普通 SQL 节点。

升级场景示例

组件开发者创建了 V1 版本的 SQL 组件,组件使用者使用了该 V1 版本组件。随后,组件开发者将组件升级为 V2 版本。组件使用者在使用过程中发现该组件已存在最新版本 V2,打开组件,查看不同版本详情,对比后发现新版本组件业务效果更好,然后更新升级到最新的组件版本使用。

查看组件引用记录

您可以在组件编辑页右侧单击引用记录,查看哪些节点引用了当前组件,用于组件变更时提前预估影响。

image