DataWorks支持创建EMR(E-MapReduce) JAR资源节点,用于上传提交自定义函数或开源MR示例源码作为资源,便于EMR MR计算节点的数据开发过程中引用。本文为您介绍如何创建资源节点,并上传提交资源,为资源的使用做好前期准备。

前提条件

  • 您已创建阿里云EMR集群,且集群所在的安全组中入方向的安全策略包含以下策略。
    • 授权策略:允许
    • 协议类型:自定义 TCP
    • 端口范围:8898/8898
    • 授权对象:100.104.0.0/16
  • 您在工作空间配置页面添加E-MapReduce计算引擎实例后,当前页面才会显示EMR目录。详情请参见配置工作空间
  • 如果EMR启用了Ranger,则使用DataWorks进行EMR的作业开发前,您需要在EMR中修改配置,添加白名单配置并重启Hive,否则作业运行时会报错Cannot modify spark.yarn.queue at runtimeCannot modify SKYNET_BIZDATE at runtime
    1. 白名单的配置通过EMR的自定义参数,添加Key和Value进行配置,以Hive组件的配置为例,配置值如下。
      hive.security.authorization.sqlstd.confwhitelist.append=tez.*|spark.*|mapred.*|mapreduce.*|ALISA.*|SKYNET.*
      说明 其中ALISA.*SKYNET.*为DataWorks专有的配置。
    2. 白名单配置完成后需要重启服务,重启后配置才会生效。重启服务的操作详情请参见重启服务
  • 已开通独享调度资源组,并且独享调度资源组需要绑定EMR所在的VPC专有网络,详情请参见新增和使用独享调度资源组
    说明 仅支持使用独享调度资源组运行该类型任务。

操作步骤

  1. 进入数据开发页面。
    1. 登录DataWorks控制台
    2. 在左侧导航栏,单击工作空间列表
    3. 选择工作空间所在地域后,单击相应工作空间后的进入数据开发
  2. 鼠标悬停至新建图标,单击EMR > 资源 > EMR JAR
    您也可以找到相应的业务流程,右键单击EMR,选择新建 > EMR JAR
  3. 新建资源对话框中,配置各项参数。
    新建资源
    参数 描述
    资源名称 资源的名称,需要添加后缀名.jar
    目标文件夹 默认当前所在文件夹的路径,您可以进行修改。
    资源类型 仅支持EMR JAR类型的资源。
    引擎实例 从下拉列表中选择该资源所在的引擎实例。
    存储路径 为该资源选择存储的路径,包括OSSHDFS两种存储类型:
    • 如果您选择OSS,需要先授权再选择目录的位置。
    • 如果您选择HDFS,需要手动输入存储路径。
    上传文件 单击点击上传,在本地选择相应文件后,单击打开
  4. 新建资源对话框中,单击确定
  5. 单击工具栏中的保存提交图标,保存并提交资源至调度开发服务器端。

后续步骤

创建完成EMR JAR资源后,在EMR MR节点中进行代码开发时可引用这里创建的资源,引用方式如下图所示,详细的引用操作步骤可参见创建并使用EMR MR节点引用资源