提取sgl文件mysql数据库_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的下载

其中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. 配置

7d2d7852445c3ee3ea2d784d7001e6b5.png

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

6. sqoop命令选项

fbef436aa202ea9d298a7fddaead5e3b.png

Import

73426d4338853cade4833fd5a2e16a08.png

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

236e477b7a3d78a39a2d117594f6d218.png

导入到Hbase的命令

864a6936bccabae23c4b68de2c492b57.png

(2)从oracle导入数据

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

eb8eaeeac6c638b90ca17e1293432663.png

fc11b6d7fb9aff3db890fa0eb20ee7fb.png

orcl oracle实例

7. Oracle Big Data Connectors

69ba00023105efbbb73221ea43e97787.png

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

c7434d17dc7d8ec211ec60be63e51ec1.png

实验环境

344ad3337cdc92aa9a2392d62565c840.png

75bb2e42dbfc443dc29da0f677a0ba78.png

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

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

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

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

fe0186623a1076ff7d3e54604a239c60.png

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

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

参考资料

博客资料

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

a1adfd0286143c9ec31146c32269942e.png

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值