MaxCompute2.0新增了一套非结构化数据处理框架,支持通过外部表的方式直接访问OSS、OTS等。Studio对此提供了一些代码模板支持,方便用户快速开发。

编写StorageHandler/Extractor/Outputter

  1. 创建MaxCompute Java Module(在examples目录下的unstructured文件夹有示例代码供参考)。
  2. 在module的源码目录即src > main上右键new,选择MaxCompute Java
  3. 输入包名.类名,如myun.MyExtractor,选择类型Extractor,点击OK

  4. 模板已自动填充框架代码,只需要编写自己的逻辑代码即可。
  5. 类似上述步骤可分别完成Outputter和StorageHandler的编写。

单元测试

可参考examples目录下的例子编写unit test,测试自己的Extractor/Outputter。



打包上传

StorageHandler/Extractor/Outputter写好后,可以参考打包发布将已写好的java程序打成jar包,并作为resource上传到服务端。

创建外部表

  1. scripts目录右键 new > MaxCompute Script



  2. 输入SQL脚本名,Target Project选择脚本将要在哪个MaxCompute project下执行,点击OK
  3. editor中唤出create external table live template,能快速插入创建外部表脚本模板:

    然后修改外部表名称、列及类型、StorageHanlder类路径、配置参数、外部路径、jar名等,修改完成后点击运行脚本,创建该外部表。



  4. 接下来,就可以查询该外部表了,类似: