简介: Kettle是一款开源的ETL工具,纯Java实现,可以在Windows、Unix和Linux上运行,提供图形化的操作界面,可以通过拖拽控件的方式,方便地定义数据传输的拓扑 。基本讲介绍基于Kettle的MaxCompute插件实现数据上云。

Kettle版本:8.2.0.0-342

MaxCompute JDBC driver版本:3.2.8

Setup

  1. 下载并安装Kettle
  2. 下载MaxCompute JDBC driver
  3. 将MaxCompute JDBC driver置于Kettle安装目录下的lib子目录(data-integration/lib)
  4. 下载并编译MaxCompute Kettle plugin:https://github.com/aliyun/aliyun-maxcompute-data-collectors
  5. 将编译后的MaxCompute Kettle plugin置于Kettle安装目录下的lib子目录(data-integration/lib)
  6. 启动spoon

Job

我们可以通过Kettle + MaxCompute JDBC driver来实现对MaxCompute中任务的组织和执行。

首先需要执行以下操作:

  1. 新建Job
  2. 新建Database Connection
    JDBC连接串格式为:jdbc:odps:?project=
    JDBC driver class为:com.aliyun.odps.jdbc.OdpsDriver
    Username为阿里云AccessKey Id
    Password为阿里云AccessKey Secret
    JDBC更多配置见:https://help.aliyun.com/document_detail/161246.html

之后,可以根据业务需要,通过SQL节点访问MaxCompute。下面我们以一个简单的ETL过程为例:

Create table节点的配置如下:

需要注意:

  1. 这里Connection需要选择我们配置好的
  2. 不要勾选Send SQL as single statement

Load from OSS节点配置如下:

需要注意的点同Create table节点。有关更多Load的用法,见:https://help.aliyun.com/document_detail/157418.html

Processing节点配置如下:

需要注意的点同Create table节点。

Transformation

我们可以通过MaxCompute Kettle plugin实现数据流出或流入MaxCompute。

首先新建Transformation,之后新建Aliyun MaxCompute Input节点,配置如下:

在MaxCompute中新建一张空表,schema与test_partition_table一致。

新建Aliyun MaxCompute Output节点,配置如下:

执行Transformation,数据便从test_partition_table被下载,后被上传至test_partition_table_2。

其他

置MaxCompute flags设

如图,在执行DDL/DML/SQL之前,可以通过set key=value;的方式配置flags。

Script模式

暂时无法支持

原文链接

本文为阿里云原创内容,未经允许不得转载。

[JDBC] Kettle on MaxCompute 使用指南的更多相关文章

  1. MaxCompute安全管理指南-基础篇

    背景及目的 方便和辅助MaxCompute的project owner或安全管理员进行project的日常安全运维,保障数据安全. MaxCompute有安全模型,DataWorks也有安全模型,当通 ...

  2. MaxCompute安全管理指南-案例篇

    通过<MaxCompute安全管理-基础篇>了解到MaxCompute和DataWorks的相关安全模型.两个产品安全方面的关联,以及各种安全操作后,本篇主要给出一些安全管理案例,给安全管 ...

  3. 使用MaxCompute Java SDK运行安全相关命令

    使用MaxCompute Console的同学,可能都使用过MaxCompute安全相关的命令.官方文档上有详细的MaxCompute安全指南,并给出了安全相关语句汇总.   简而言之,权限管理.列级 ...

  4. kettle连接oracle出现Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)

    jdbc驱动,下载jdbc14.jar文件放入   pdi-ce-5.3.0.0-213\data-integration\libswt\win64里 之后重启kettle即可 jdbc14.jar文 ...

  5. MaxCompute Spark开发指南

    0. 概述 本文档面向需要使用MaxCompute Spark进行开发的用户使用.本指南主要适用于具备有Spark开发经验的开发人员. MaxCompute Spark是MaxCompute提供的兼容 ...

  6. Kettle jdbc连接hive出现问题

    jdbc连接时报如下错误: Error connecting to database [k] : org.pentaho.di.core.exception.KettleDatabaseExcepti ...

  7. Java核心技术及面试指南 JDBC部分的面试题总结以及答案

    5.5.1 你最近的项目里用到的是哪个数据?或你用过哪些数据库?或你对哪个数据库最熟悉? 通过这个问题,我们将会确认候选人是否在项目里用过数据库或JDBC. 5.5.2 你有没有建过表?或修改表里的字 ...

  8. MaxCompute 图计算开发指南

    快速入门step by step MaxCompute Studio 创建完成 MaxCompute Java Module后,即可以开始开发Graph了. 代码示例 在examples目录下有gra ...

  9. 使用DataX同步MaxCompute数据到TableStore(原OTS)优化指南

    概述 现在越来越多的技术架构下会组合使用MaxCompute和TableStore,用MaxCompute作大数据分析,计算的结果会导出到TableStore提供在线访问.MaxCompute提供海量 ...

  10. 实战笔记丨JDBC问题定位指南

    JDBC(Java数据库连接性)是Java API,用于管理与数据库的连接,发出查询和命令以及处理从数据库获得的结果集.JDBC在1997年作为JDK 1.1的一部分发布,是为Java持久层开发的首批 ...

随机推荐

  1. CMakeLists.txt 编写要点 && 一个关于install()的深坑

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  2. String.equals(Object anObject)方法

    首先注意,equals()方法接受的是Object类型的对象,并不一定是String类型. public boolean equals(Object anObject) { //两个对象地址是否一样, ...

  3. JDBC反序列化

    JDBC反序列化攻击 介绍 JDBC(Java DataBase Connectivity)是一种用于执行Sql语句的Java Api,即Java数据库连接,是Java语言中用来规范客户端程序如何来访 ...

  4. 记录--H5 实现拍照选景框效果

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 背景 在实际项目中,遇到了需要唤起手机摄像头拍照的需求,最开始是通过<input type="file" hid ...

  5. 记录--Vue3 封装 ECharts 通用组件

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 按需导入的配置文件 配置文件这里就不再赘述,内容都是一样的,主打一个随用随取,按需导入. import * as echarts from ...

  6. OpenCvSharp inputs[0].size[1] % blobs[0].size[1] == 0

    报错代码如图 详细错误 未处理 OpenCvSharp.OpenCVException HResult=-2146233088 Message=inputs[0].size[1] % blobs[0] ...

  7. JSON.stringify() 第三个参数的使用

    语法 JSON.stringify(value[, replacer[, space]]) 参数说明: value: 必需, 要转换的 JavaScript 值(通常为对象或数组). replacer ...

  8. vue项目nginx部署二级目录

    一.修改router.js中添加base根目录配置 const vueRouter = new Router({ mode: 'history', base: 'app', 二.修改vue.confi ...

  9. VK2C21A:抗干扰/抗噪/高稳定性LCD屏显示驱动,抗干扰LCD驱动段码屏芯片

    产品型号:VK2C21A/B/C/D 产品品牌:VINKA/永嘉微/永嘉微电 封装形式:SOP28/24/20/16 产品年份:新年份 原厂直销,工程服务,技术支持,价格最具优势! VK2C21A/B ...

  10. 开启 Keep-Alive 可能会导致http 请求偶发失败

    大家好,我是蓝胖子,说起提高http的传输效率,很多人会开启http的Keep-Alive选项,这会http请求能够复用tcp连接,节省了握手的开销.但开启Keep-Alive真的没有问题吗?我们来细 ...