开发者社区> 冶善> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

[ETL实践指南]基于Kettle的MaxCompute插件实现数据上云

简介: 本文用到的 阿里云数加-大数据计算服务MaxCompute产品地址:https://www.aliyun.com/product/odps 简介 Kettle是一款开源的ETL工具,纯java实现,可以运行于Windows, Unix, Linux上运行,提供图形化的操作界面,可以通过拖拽控件的方式,方便地定义数据传输的拓扑。
+关注继续查看

本文用到的

阿里云数加-大数据计算服务MaxCompute产品地址:https://www.aliyun.com/product/odps


简介

Kettle是一款开源的ETL工具,纯java实现,可以运行于Windows, Unix, Linux上运行,提供图形化的操作界面,可以通过拖拽控件的方式,方便地定义数据传输的拓扑。Kettle支持丰富的数据输入输出源,数据库支持Oracle,MySql,DB2等,也支持业界各种开源的大数据系统,例如HDFS, HBase, Cassandra, MongoDB等。本文将介绍如何利用MaxCompute的插件无缝对接阿里云的大数据计算平台——MaxCompute。

环境要求

  • JDK (1.6以上,推荐1.7)
  • Kettle(建议5.4.0以后的版本)
  • Apache Maven 3.x

插件部署

下载MaxCompute的Kettle插件包

$ wget http://odps-repo.oss-cn-hangzhou.aliyuncs.com/data-collectors/aliyun-kettle-odps-plugin-2.0.4.tar.gz

部署Kettle MaxCompute插件

将kettle-odps-plugin安装到Kettle plugins目录下

$ cp aliyun-kettle-odps-plugin-1.0.0.tar.gz {YOUR_KETTLE_DIRECTORY}/plugins
$ cd {YOUR_KETTLE_DIRECTORY}/plugins
$ tar zxvf aliyun-kettle-odps-plugin-1.0.0.tar.gz && rm aliyun-kettle-odps-plugin-1.0.0.tar.gz

安装完成后,重启Kettle,重启后新建一个转换(Transformation),然后可以在Big Data这个大类中找到Aliyun MaxCompute Input/Output,如下图所示。

屏幕快照 2016-11-30 下午5.36.29.png

使用场景

这里举几个简单的示例演示一下如何利用Kettle的MaxCompute插件将数据导入或导出。

MySQL数据导入MaxCompute

安装MySQL JDBC Connector

kettle默认是没有MySQL的JDBC Connector的,需要先下载MySQL 的JDBC Connector,将Connector的jar包放至kettle的lib目录下,重启kettle即可。

Steps配置

  • 新建mysql的DB连接

mysql connect.png

  • 添加mysql的表输入

表输入配置需要提供一个sql,本例是要将Mysql数据库的words表导入MaxCompute中,如下图所示,运行“select * from words;”这样一条SQL即可,其中words表的schema为“(id int, line varchar(1000))”。
mysql input.png

  • 添加Aliyun MaxCompute Output

首先需要要MaxCompute中创建与Mysql数据源相对应的数据表,本例中建表语句如下:

create table testoyz (a bigint, b string);

然后,如下图所示,配置好endpoint, accessId, accessKey, projectName, tableName等必要的参数。

粘贴图片0.png

  • 运行转换,查看结果

运行已经建立好的转换Steps,运行成功后,可以在MaxCompute的相应数据表中查询到传输过来的数据。

odps@ xxx_project_name>read testoyz;
+------------+------------+
| a          | b          |
+------------+------------+
| 1          | hello world |
| 2          | hello maxcompute |
| 3          | test test test |
+------------+------------+

将MaxCompute表导出到Excel文件

可以使用Aliyun MaxCompute Input组件下载MaxCompute中的表数据到Excel文件中,下图的配置是将上个例子中的表导出为Excel文件。

粘贴图片1.png

配置好后运行转换,表中的数据会被下载保存在excel文件中。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SQL 基础(一)创建、查看、修改、删除数据库
SQL 基础(一)创建、查看、修改、删除数据库
55 0
C/C++ - 基本数据类型(默认:32位操作系统)
C/C++ - 基本数据类型(默认:32位操作系统)
69 0
SQL 基础(一)创建、查看、修改、删除数据库
分别使用 Microsoft SQL Server Management Studio 和 T-SQL 语句创建、查看、修改、删除数据库
895 0
基于MaxCompute SQL 的半结构化数据处理实践
MaxCompute作为企业级数据仓库服务,集中存储和管理企业数据资产、面向数据应用处理和分析数据,将数据转换为业务洞察。通过与阿里云内、外部服务灵活组合,可构建丰富的数据应用。全托管的数据与分析解决方案,可简化平台运维、管理投入,提升面向业务的服务能力,加速价值实现。
685 0
大数据上云第一课:(1)MaxCompute授权和外表操作躲坑指南
本文主要针对于在使用MaxCompute开发过程中,对MaxCompute账号授权、外部表操作及元数据查询等相关问题做一个简单的介绍。
1589 0
阿里云大数据平台MaxCompute用户指南官方电子版下载
阿里云大数据平台MaxCompute用户指南
1974 0
基于阿里云MaxCompute实现游戏数据运营
一、总览 一个游戏/系统的业务数据分析,总体可以分为图示的几个关键步骤:   1、数据采集:通过SDK埋点或者服务端的方式获取业务数据,并通过分布式日志收集系统,将各个服务器中的数据收集起来并送到指定的地方去,比如HDFS等;(注:本文Demo中,使用flume,也可选用logstash、Flue.
4470 0
MaxCompute - ODPS重装上阵 第二弹 - 新的基本数据类型与内建函数
MaxCompute(原ODPS)是阿里云自主研发的具有业界领先水平的分布式大数据处理平台, 尤其在集团内部得到广泛应用,支撑了多个BU的核心业务。 MaxCompute除了持续优化性能外,也致力于提升SQL语言的用户体验和表达能力,提高广大ODPS开发者的生产力。
5837 0
MaxCompute大数据实践,电商数据仓库选择雪花还是星型模型?
作者:王永伟 规范化和反规范化   当属性层次被实例化为一系列维度,而不是单一的维度时,此模式被称为雪花模式。大多数联机事务处理系统(OLTP)的底层数据结构在设计时采用此种规范化技术,通过规范化处理将重复属性移至其自身所属的表中,删除冗余数据。
4333 0
MaxCompute(原ODPS)开发入门指南——数据上云篇
根据《MaxCompute(原ODPS)开发入门指南——计量计费篇》的了解,大家清楚了MaxCompute可以做什么,计费模式如何,想必大家也开通了MaxCompute想进行一次POC,但是大家遇到第一个问题一定是我的数据如何上云?
9681 0
+关注
冶善
阿里巴巴
10
文章
3
问答
来源圈子
更多
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。
+ 订阅
相关文档: MaxCompute
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载