460
小米MIX
创建OPEN MR__快速开始_大数据开发套件-阿里云
为了帮助用户更加安全、便捷的使用ODPS的MR功能,实现更复杂的计算逻辑。本文档主要讲述OPEN MR的开发方法,帮忙用户更好的开发复杂的MR模型。
OpenMR用户只需要关注Mapper/Reducer部分的逻辑,作业提交部分逻辑会由平台统一来完成.
涉及到一些日常调度涉及到的变量可以在创建OpenMR节点时,在配置中通过参数的方式来指定。
场景和数据说明
本示例将以经典的WordCount示例来介绍如何在阿里云大数据平台使用ODPS MapReduce。
本文档中所涉及的数据表说明如下:
1) 输入数据表:wc_in用于存储word列表。
2) 输出数据表:wc_out用于存放通过MR程序处理后的结果集。
step1:数据表准备
创建数据表
参考快速开始-创建表 章节新建表wc_in、wc_out.
CREATE TABLE wc_in (key STRING, value STRING);
CREATE TABLE wc_out (key STRING, cnt BIGINT);
插入示例数据
为感知OPEN MR程序在大数据平台上运行的结果,需向输入表(wc_in)中插入示例数据,具体步骤如下:
步骤1:导航至数据开发点击 新建>新建脚本文件。
步骤2:在新建脚本文件弹出框中填写各配置项,点击提交。
步骤3:在ODPS代码编辑器中编写ODPS SQL并运行代码。
提供ODPS SQL脚本如下:
---创建系统dual
drop table if exists dual;
create table dual(id bigint); --如project中不存在此伪表,则需创建并初始化数据
---向系统伪表初始化数据
insert overwrite table dual select count(*)from dual;
---向输入表wc_in插入示例数据
insert overwrite table wc_in select * from (
select 'project','val_pro' from dual
union all
select 'problem','val_pro' from dual
union all
select 'package','val_a' from dual
union all
select 'pad','val_a' from dual
) b;
可以预览已经插入的示例数据,如下图:
step2:编写MapReduce程序
用户在使用OPEN MR节点之前需在本地基于ODPS MapReduce 编程框架的WordCount 示例的代码,然后编译打成jar包,以资源的方式添加到大数据平台。
涉及到MR的开发,可以参考官网ODPS的帮助,链接:大数据计算服务ODPS帮助文档。
本例代码详见WordCount.java附件。
step3:添加资源
无论是在ODPS console还是阿里云大数据平台中运行,都需要在执行jar命令运行。因此,先打包生成WordCount.jar(可以通过Eclipse 的Export 功能打包,也可以通过ant 或其他工具生成),再上传至ODPS资源。
具体操作如下:
步骤1:工作区右上角新建>上传资源。
步骤2:在资源上传弹出框中填写各配置项,注意需要勾选‘上传为Odps资源’。
步骤3:点击提交。
step4:创建OpenMR节点
新建的ODPS MapReduce程序以资源方式上传至ODPS,现需新建OPEN MR节点来调用执行。具体如下:
步骤1:工作区右上角新建>新建任务。
步骤2:在新建任务弹出框中填写各配置项。
新建任务弹出框中配置项如下:
■ 任务名称:wordcount示例。
■ 描述:wordcount示例。
步骤4:点击创建。
步骤5:向开发面板画布中拖拽一个OPEN MR节点。
步骤6:双击节点或右键查看节点内容进入OPEN MR配置页面进行配置。
MRJar包:必选项,即本节点需要运行的主jar资源包。
资源:必填项,本节点需要运行的主jar资源以及调用到的其他资源列表。
步骤6:点击运行进行测试。
step5:查看结果
查看测试运行结果的步骤如下:
步骤1:打开wc_in插入示例数据脚本文件。
步骤2:编写查询ODPS SQL代码。
步骤3:点击运行。
查看测试结果和预期一致。
本示例中为了让您更快更深入的了解OPEN MR的使用,并没用配置工作流属性(调度属性等)。在日常数据开发过程中,开发者可根据需求完成配置工作流属性、提交并测试的工作。
最后更新:2016-11-24 11:23:48
上一篇:
创建自定义函数__快速开始_大数据开发套件-阿里云
下一篇:
测试任务__快速开始_大数据开发套件-阿里云
变更应用配置__应用管理_用户指南_容器服务-阿里云
恶意代码扫描__使用手册_移动安全-阿里云
开启主题的日志功能__日志管理使用帮助_控制台使用帮助_消息服务-阿里云
Web端直传实践简介__Web端直传实践_最佳实践_对象存储 OSS-阿里云
关于RAM限制__用户指南_访问控制-阿里云
如何解读结果__Lite实践指南_性能测试-阿里云
心脏病预测案例__案例_机器学习-阿里云
触发器__API参考_容器服务-阿里云
无法连接RDS for PostgreSQL数据库的解决方法__PostgreSQL使用_技术运维问题_云数据库 RDS 版-阿里云
ECS云服务器共享镜像FAQ
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云