1. Sqoop简介
- Apache Sqoop是一种专门为hadoop和比如关系型数据库等结构化数据库之间的高效数据转换一种工具。
- 数据的搬运工
- Sqoop在大多数自动化数据转换的过程中,依托于数据库相关的Schema描述信息,转换的过程是使用MapReduce来进行的
- Sqoop目前有两个版本,完全不兼容,Sqoop和Sqoop2.可以通过版本号来进行简单的区分,1.4.x为sqoop或sqoop1,1.99.x为sqoop2
2. Sqoop数据的导入(import)
-
传统的RDBMS中的数据导入到hbase…
-
从传统数据库获取元数据信息(schema、table、field、field type),把导入功能转换为只有Map的
Mapreduce作业,在mapreduce中有很多map,每个map读一片数据,进而并行的完成数据的拷贝。
3. Sqoop数据的导出(export)
- hbase中的数据导出到rdbms中
- 获取导出表的schema、meta信息,和Hadoop中的字段match;多个map only作业同时运行,完成hdfs中数据导出到关系型数据库中。
4.Sqoop的安装
-
准备安装文件
- sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz
-
解压
- tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C /opt/
-
重命名
- mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha/ sqoop
-
配置环境变量
export SQOOP_HOME=/opt/sqoop export PATH=$PATH:$SQOOP_HOME/bin -
修改配置文件
mv sqoop-env-template.sh sqoop-env.sh
vim sqoop-env.sh
export HADOOP_COMMON_HOME=/opt/hadoop
export HBASE_HOME=/opt/hbase
export HIVE_HOME=/opt/hive
export ZOOCFGDIR=/opt/zookeeper/conf
-
因为SQOOP要连接rdbms,所以需要将该数据的驱动jar包添加进sqoop的classpath中,所以将mysql的jar包上传至$SQOOP_HOME/lib
- mysql需要mysql-connector-java-5.1.32.jar以上版本支持。
cp /soft/mysql-connector-java-5.1.39.jar /opt/sqoop/lib/
748

被折叠的 条评论
为什么被折叠?



