hadoop 与关系型数据库交换数据(10)

与关系型数据库交换数据

1. 与关系型数据库交换数据

文本转换方案

自写Java程序

Sqoop

厂商提供的解决方案

2. Sqoop简介

SQL-to-HDFS工具

利用JDBC连接关系型数据库

3. Hadoop-0.20.2下使用Sqoop

Sqoop不支持次版本,可使用CDH3,也可以通过拷贝相应的包到sqoop-1.2.0-CDH3/lib下,依然可以使用

CDH3和sqoop1.2.0的下载

http://archive.cloudera.com/cdh/3/hadoop-0.20.2-CDH3B4.tar.gz

http://archive.cloudera.com/cdh/3/sqoop-1.2.0-CDH3B4.tar.gz

其中sqoop-1.2.0-CDH3B4依赖hadoop-core-0.20.2-CDH3B4.jar,所以你需要下载hadoop-0.20.2-CDH3B4.tar.gz,解压缩后将hadoop-0.20.2-CDH3B4/hadoop-core-0.20.2-CDH3B4.jar复制到sqoop-1.2.0-CDH3B4/lib中

另外,sqoop导入mysql数据运行过程中依赖mysql-connector-java-*.jar,所以你需要下载mysql-connector-java-*.jar并复制到sqoop-1.2.0-CDH3B4/lib中

4. 配置

clip_image002

5. 启动hadoop,配置好相关环境变量(例如$HADOOP_HOME),就可以使用sqoop了

6. sqoop命令选项

clip_image004

Import

clip_image006

(1)从mysql导入数据的例子(权威指南)

clip_image008

导入到Hbase的命令

clip_image010

(2)从oracle导入数据

Sqoop从oracle导入,需要有ojdbc6.jar,放在$SQOOP_HOME/lib里,不用添加到classpath里,因为sqoop会自己遍历lib文件夹并添加里面的所有jar包—connect与mysql的不一样,如下(shell脚本中的主要部分)

clip_image012

clip_image014

orcl oracle实例

7. Oracle Big Data Connectors

clip_image016

(1) Oracle HDFS直接连接器(ODCH)实验

clip_image018

实验环境

clip_image020

clip_image022

实验1:直接访问HDFS数据文件

Oracle的HDFS直接连接器允许从数据库中直接访问HDFS的数据文件。支持的数据文件格式取决于ORACLE_LOADER的驱动程序

在实验1里,我们将会直接访问HDFS上的几个带分隔符的文本文件,我们可以在数据库中用sql来查询该文件

(2)Oracle Hadoop 装载程序(OLH实验)

clip_image024

8. 应用与Hbase的对接:通过Thrift

Thrift是一个跨语言的服务部署框架,最初由facebook于2007年开发,2008年进入Apache开源项目。Thrift通过一个中间语言(IDL,接口定义语言)来定义RPC的接口和数据类型,然后通过一个编译器生成不同语言的代码(目前支持C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,Smalltalk和Ocaml),并由生成的代码负责RPC协议层和传输层的实现。

参考资料

博客资料

Thrift框架介绍:http://dongxicheng.org/search-engine/thrift-framework-intro/

Thrift使用指南:http://dongxicheng.org/search-engine/thrift-guide/

(1) PHP通过Thrift链接Hbase的主要步骤

clip_image026

C++,c#与Hbase连接的步骤,方法与PHP类似

转载于:https://my.oschina.net/u/1462191/blog/213838

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值