迁移Function Studio代码至云效服务平台

您可通过关联远程仓库云效的方式,将Function Studio上的代码迁移至一站式BizDevOps平台云效统一管理。本文为您介绍如何将Function Studio中的代码迁移至云效服务平台。

背景信息

Function Studio用于进行MaxCompute函数的开发,此外,您也可通过以下方案开发MaxCompute函数。

方案描述

补充说明

相关文档

方案一:通过Java或Python代码,并依托本地已有MaxCompute SDK环境开发自定义UDF。

本地开发完成后,您可通过打包上传的方式在DataWorks使用资源并注册函数。

方案二:通过Java或Python代码,在本地IntelliJ IDEA安装MaxCompute Studio插件,开发自定义UDF。

本地开发完成后,您可直接将资源、函数上传并添加至对应MaxCompute项目。若需要在DataWorks上进行可视化管理,可通过DataWorks相关功能将MaxCompute资源、函数加载至DataWorks。

方案三:通过将Java或Python代码嵌入SQL脚本的方式,使用MaxCompute脚本模式实现代码嵌入式UDF(Embedded UDF)开发。

代码嵌入式UDF支持将Java或Python代码嵌入SQL脚本,Janino-compiler编译器会识别并提取嵌入的代码,并完成代码编译、动态生成资源及创建临时函数。解决代码实现过程繁琐,且不方便阅读及维护的问题。

使用说明

操作流程

迁移Function Studio代码至云效平台的操作流程如下:

操作完成后,若关联至云效平台的任务希望继续在DataWorks使用,可参考后续:继续在DataWorks中管理及使用UDF执行。

步骤一:在云效创建代码库

进入云效平台代码库,新建用于存放Function Studio 数据的代码库(即Function Studio中待迁移代码所需关联的远程仓库)。操作详情请参见创建代码库。本文示例创建代码库Demo2023_Function代码库示例

步骤二:在云效代码库设置待迁移代码所在项目的SSH公钥

  1. 获取待迁移代码所在项目的SSH公钥。

    1. 进入Function Studio。

      进入数据开发,单击数据开发界面左侧顶部的全部图标,选择全部产品 > 更多 > Function Studio

    2. 获取Function Studio中待迁移代码所在项目的SSH公钥。

      打开待迁移 (本文示例名称为Demo_2023_jar),通过下图步骤获取SSH公钥。获取SSH公钥

  2. 进入SSH密钥管理页面。

    在云效的Demo2023_Function代码库,按下图步骤进入SSH密钥管理页面。进入密钥管理

  3. 配置云效代码库的密钥。

    将步骤一获取的SSH密钥添加至云效代码库的SSH公钥中,步骤如下图。云效配置密钥

步骤三:FunctionStudio关联云效远程仓库

  1. 获取代码库的SSH地址。

    进入云效的Demo2023_Function代码库,按下图步骤获取SSH地址。获取git地址

  2. Function Studio关联云效远程仓库。

    1. 进入Function Studio。

      进入数据开发,单击数据开发界面左侧顶部的全部图标,选择全部产品 > 更多 > Function Studio

    2. 配置关联地址。

      按下图步骤,在关联远程仓库对话框,配置云效代码库Demo2023_Function的SSH地址。关联后,可将Function Studio的代码推送迁移至所关联的云效远程仓库中。关联远程仓库

步骤四:推送代码至云效远程仓库

  1. 推送代码。

    在Function Studio的Demo_2023_jar 中,按照下图步骤,将代码推送至云效的Demo2023_Function代码库。推送代码

  2. 确认推送结果。

    进入云效远程仓库,(即Demo2023_Function代码库),确认代码是否推送成功。确认推送结果

后续:继续在DataWorks中管理及使用UDF

关联至云效平台远程仓库的任务,若希望继续在DataWorks使用,则可参考以下步骤操作。

  1. 导出云效平台的代码至本地。

  2. 在本地编译并打包代码。

  3. 通过可视化方式上传资源包至DataWorks,并使用该资源包注册函数。详情请参见创建并使用MaxCompute资源使用资源可视化方式注册函数