本文为您介绍如何在MaxCompute Studio上开发UDF,包括编写UDF和调试UDF。

前提条件

您需要完成以下操作:

背景信息

您可以按照本文介绍自行开发UDF,也可以单击MaxCompute > 创建UDF直接创建函数。如下图所示。dd

编写UDF

  1. Project区域,右键单击Module的源码目录(即src > main > java),选择new > MaxCompute Java
    11
  2. 填写NameKind,单击OK
    • Name:创建的MaxCompute Java Class名称。如果还没有创建Package,在此处填写packagename.classname,会自动生成Package。
    • Kind:选择类型为UDF。目前支持的类型包含自定义函数(UDF/UDAF/UDTF)、MapReduce(Driver/Mapper/Reducer)和非结构化开发(StorageHandler/Extractor/Outputer)等。
  3. 创建成功后,在编辑界面开发Java程序。

    Java UDF示例请参见JSON字符串获取示例

通过本地运行调试UDF

通过本地运行方式测试,查看UDF的运行结果是否符合预期。

  1. 右键单击编写完成的Java脚本,选择Run
  2. Run/Debug Configurations页面上配置运行参数。
    debug
    • MaxCompute project:UDF运行使用的MaxCompute空间。本地运行时选择local
    • MaxCompute table:UDF运行时需要使用的MaxCompute表的名称。
    • Table columns:UDF运行时需要使用的MaxCompute表的列信息。
  3. 单击OK,开始运行。
    说明
    • 本地运行会读取warehouse中指定的表数据作为输入,您可以在控制台查看日志输出。
    • 如果指定的MaxCompute项目的表数据未被下载至warehouse目录中,会先下载数据;如果数据已经下载,则跳过此步骤。
    • 关于warehouse的说明,请参见本地warehouse目录

通过单元测试调试UDF

参考examples目录下的单元测试实例,编写自己的测试用例。**

后续步骤

完成开发和调试UDF之后,需要对UDF代码打包、上传和注册。详情请参见打包、上传和注册