IDEA集成MaxCompute
集成方式参阅:
https://help.aliyun.com/document_detail/50891.html?spm=5176.product27797.6.730.Lbsygn
开发UDF
- 新建一个MaxCompute Java Moudel
项目结构如图:
- 创建测试类
在src/main/java下创建MaxCompute Java 里面默认有一个带有一个参数的方法,如果我们的UDF中需要传入多个参数,那么我们可以重构默认方法,根据自己的需求添加参数。具体可以参考UDF项目的example示例
- 开发测试
在我们的UDF类上右键,点击RUN XXXX。进入执行配置界面,
带星号的这几项为必填项
project: 你odps对应的project
table: 你odps对应的表名称
partition: odps表的分区
columns: odps作为入参传入的列名称,多个用逗号隔开
配置好后,点击apply 然后执行
- 发布
发布前,需要把刚刚的项目打成jar包,对于有自己特殊依赖的项目,打包时要将依赖打进去。将所有依赖包含进去打成一个jar需要配置一个maven 插件
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<!-- 此处指定main方法入口的class -->
<mainClass>com.cainiao.ts.udf.com.cainiao.ts.udf.RowkeyGenerater</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>assembly</goal>
</goals>
</execution>
</executions>
</plugin>
编译打包没问题后,在刚刚的函数类右键,执行deploy to server
填写好函数名称,就会将UDF资源上传到服务并注册好函数