`

大数据系列8:Sqoop – HADOOP和RDBMS数据交换

阅读更多

Sqoop1

wget http://mirrors.ustc.edu.cn/apache/sqoop/1.4.4/sqoop-1.4.4.bin__hadoop-1.0.0.tar.gz

tar -xzvf sqoop-1.4.4.bin__hadoop-1.0.0.tar.gz

mv sqoop-1.4.4.bin__hadoop-1.0.0 sqoop-1.4.4

cd sqoop-1.4.4

sudo vi /etc/profile

增加:

export HADOOP_COMMON_HOME=/home/ysc/hadoop-1.2.1

export HADOOP_MAPRED_HOME=/home/ysc/hadoop-1.2.1

export PATH=$PATH:/home/ysc/sqoop-1.4.4/bin

export HBASE_HOME=/home/ysc/hbase-0.94.12

source /etc/profile

sqoop help

JDBC驱动mysql-connector-java-5.1.18.jar拷贝到/home/ysc/sqoop-1.4.4/lib

sqoop list-databases --connect jdbc:mysql://host001 --username root --password ysc

sqoop list-tables --connect jdbc:mysql://host001/mysql --username root --password ysc

sqoop import --connect jdbc:mysql://host001/test --username root --password ysc --table person

sqoop import --connect jdbc:mysql://host001/test --username root --password ysc --table person -m 1

sqoop import --connect jdbc:mysql://host001/test --username root --password ysc --table person --direct -m 1

sqoop import-all-tables --connect jdbc:mysql://host001/test --username root --password ysc  --direct -m 1

sqoop export --connect jdbc:mysql://host001/test --username root --password ysc --table person --export-dir person

sqoop export --connect jdbc:mysql://host001/test --username root --password ysc --table animal --export-dir animal

Sqoop2

wget http://mirror.bit.edu.cn/apache/sqoop/1.99.2/sqoop-1.99.2-bin-hadoop100.tar.gz

tar -xzvf sqoop-1.99.2-bin-hadoop100.tar.gz

mv sqoop-1.99.2-bin-hadoop100 sqoop-1.99.2

cd sqoop-1.99.2

sudo apt-get install zip

bin/addtowar.sh -hadoop-version 1.2.1 -hadoop-path /home/ysc/hadoop-1.2.1

bin/addtowar.sh -jars /home/ysc/mysql-connector-java-5.1.18.jar

vi server/conf/sqoop.properties

修改org.apache.sqoop.submission.engine.mapreduce.configuration.directory=/etc/hadoop/conf/

org.apache.sqoop.submission.engine.mapreduce.configuration.directory=/home/ysc/hadoop-1.2.1/conf/

启动Sqoop 2 server

bin/sqoop.sh server start

http://host001:12000/sqoop/

停止Sqoop 2 server

bin/sqoop.sh server stop

客户端连接Sqoop 2 server

客户端直接解压即可运行

MySQL准备数据库和表:

create database test;

create table history (userId int, command varchar(20));

insert into history values(1, 'ls');

insert into history values(1, 'dir');

insert into history values(2, 'cat');

insert into history values(5, 'vi');

交互模式:

bin/sqoop.sh client

sqoop:000> set server --host host001 --port 12000 --webapp sqoop

sqoop:000> show version --all

sqoop:000> show connector --all

sqoop:000>create connection --cid 1

Name: mysql

JDBC Driver Class: com.mysql.jdbc.Driver

JDBC Connection String:

jdbc:mysql://host001:3306/test?useUnicode=true&characterEncoding=UTF-8&createDatabaseIfNotExist=true&autoReconnect=true

Username: root

Password: ***

entry#回车

Max connections:100

sqoop:000>create job --xid 1 --type import

Name:ImportHistory

Schema name:

Table name: history

Table SQL statement:

Table column names:

Partition column name:userId

Boundary query:

Choose:0

Choose: 0

Output directory: output-sqoop2-history

Extractors:

Loaders:

sqoop:000> submission start --jid 1

sqoop:000> submission status --jid 1

sqoop:000> submission stop --jid 1

批处理模式:

sqoop.sh client /home/ysc/script.sqoop

vi /home/ysc/script.sqoop

输入:

     #指定服务器信息

     set server --host host001 --port 12000 --webapp sqoop

     #执行JOB

     submission start --jid 1

 

 

 

 


 


 

APDPlat旗下十大开源项目

 

 

 

 

 

 

 

 

 

 

1
3
分享到:
评论
5 楼 fighting_2013 2013-11-10  
yangshangchuan 写道
fighting_2013 写道
bin/sqoop import --connect jdbc:mysql://centos.master:3306/test --username root --password 123456 --table user --direct --target-dir /sqoop/user

结果报错
13/11/08 08:47:50 INFO mapreduce.Job: The url to track the job: http://centos.master:8088/proxy/application_1383902225131_0006/
13/11/08 08:47:50 INFO mapreduce.Job: Running job: job_1383902225131_0006
13/11/08 08:47:54 INFO mapreduce.Job: Job job_1383902225131_0006 running in uber mode : false
13/11/08 08:47:54 INFO mapreduce.Job:  map 0% reduce 0%
13/11/08 08:47:54 INFO mapreduce.Job: Job job_1383902225131_0006 failed with state FAILED due to: Application application_1383902225131_0006 failed 2 times due to AM Container for appattempt_1383902225131_0006_000002 exited with  exitCode: -1000 due to: Rename cannot overwrite non empty destination directory /home/hadoop/filesystem/hdfs/tmp/nm-local-dir/usercache/hadoop/filecache/16
.Failing this attempt.. Failing the application.
13/11/08 08:47:54 INFO mapreduce.Job: Counters: 0
13/11/08 08:47:54 WARN mapreduce.Counters: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
13/11/08 08:47:54 INFO mapreduce.ImportJobBase: Transferred 0 bytes in 7.817 seconds (0 bytes/sec)
13/11/08 08:47:54 WARN mapreduce.Counters: Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
13/11/08 08:47:54 INFO mapreduce.ImportJobBase: Retrieved 0 records.
13/11/08 08:47:54 ERROR tool.ImportTool: Error during import: Import job failed!

请问这是什么问题?怎么样能解决?



删除目录/home/hadoop/filesystem/hdfs/tmp/nm-local-dir/usercache/hadoop/filecache/16再重新运行试试


之前就试过删除,在运行还是报这个错误,只是文件目录换了一个
4 楼 yangshangchuan 2013-11-09  
fighting_2013 写道
bin/sqoop import --connect jdbc:mysql://centos.master:3306/test --username root --password 123456 --table user --direct --target-dir /sqoop/user

结果报错
13/11/08 08:47:50 INFO mapreduce.Job: The url to track the job: http://centos.master:8088/proxy/application_1383902225131_0006/
13/11/08 08:47:50 INFO mapreduce.Job: Running job: job_1383902225131_0006
13/11/08 08:47:54 INFO mapreduce.Job: Job job_1383902225131_0006 running in uber mode : false
13/11/08 08:47:54 INFO mapreduce.Job:  map 0% reduce 0%
13/11/08 08:47:54 INFO mapreduce.Job: Job job_1383902225131_0006 failed with state FAILED due to: Application application_1383902225131_0006 failed 2 times due to AM Container for appattempt_1383902225131_0006_000002 exited with  exitCode: -1000 due to: Rename cannot overwrite non empty destination directory /home/hadoop/filesystem/hdfs/tmp/nm-local-dir/usercache/hadoop/filecache/16
.Failing this attempt.. Failing the application.
13/11/08 08:47:54 INFO mapreduce.Job: Counters: 0
13/11/08 08:47:54 WARN mapreduce.Counters: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
13/11/08 08:47:54 INFO mapreduce.ImportJobBase: Transferred 0 bytes in 7.817 seconds (0 bytes/sec)
13/11/08 08:47:54 WARN mapreduce.Counters: Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
13/11/08 08:47:54 INFO mapreduce.ImportJobBase: Retrieved 0 records.
13/11/08 08:47:54 ERROR tool.ImportTool: Error during import: Import job failed!

请问这是什么问题?怎么样能解决?



删除目录/home/hadoop/filesystem/hdfs/tmp/nm-local-dir/usercache/hadoop/filecache/16再重新运行试试
3 楼 fighting_2013 2013-11-09  
bin/sqoop import --connect jdbc:mysql://centos.master:3306/test --username root --password 123456 --table user --direct --target-dir /sqoop/user

结果报错
13/11/08 08:47:50 INFO mapreduce.Job: The url to track the job: http://centos.master:8088/proxy/application_1383902225131_0006/
13/11/08 08:47:50 INFO mapreduce.Job: Running job: job_1383902225131_0006
13/11/08 08:47:54 INFO mapreduce.Job: Job job_1383902225131_0006 running in uber mode : false
13/11/08 08:47:54 INFO mapreduce.Job:  map 0% reduce 0%
13/11/08 08:47:54 INFO mapreduce.Job: Job job_1383902225131_0006 failed with state FAILED due to: Application application_1383902225131_0006 failed 2 times due to AM Container for appattempt_1383902225131_0006_000002 exited with  exitCode: -1000 due to: Rename cannot overwrite non empty destination directory /home/hadoop/filesystem/hdfs/tmp/nm-local-dir/usercache/hadoop/filecache/16
.Failing this attempt.. Failing the application.
13/11/08 08:47:54 INFO mapreduce.Job: Counters: 0
13/11/08 08:47:54 WARN mapreduce.Counters: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
13/11/08 08:47:54 INFO mapreduce.ImportJobBase: Transferred 0 bytes in 7.817 seconds (0 bytes/sec)
13/11/08 08:47:54 WARN mapreduce.Counters: Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
13/11/08 08:47:54 INFO mapreduce.ImportJobBase: Retrieved 0 records.
13/11/08 08:47:54 ERROR tool.ImportTool: Error during import: Import job failed!

请问这是什么问题?怎么样能解决?
2 楼 yangshangchuan 2013-11-04  
fighting_2013 写道
sqoop 1.4.4 能导入数据到 hadoop 2.2 吗?两者兼容吗?


hadoop2.2.0 + sqoop 1.4.4 没试过
1 楼 fighting_2013 2013-11-04  
sqoop 1.4.4 能导入数据到 hadoop 2.2 吗?两者兼容吗?

相关推荐

    大数据-sqoop.pptx

    将数据从 RDBMS 导入 HDFS 在 Hive 中使用相应的工具和命令(例如 LOAD DATA 语句),手动将数据载入 Hive 或 Hbase 大数据-sqoop全文共16页,当前为第4页。 Sqoop版本区别 功能 Sqoop1 Sqoop2 数据从 Hive 或 ...

    大数据运维技术第9章 Sqoop组件安装配置.pptx

    Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。Sqoop由Apache软件基金会提供。;9.2 Sqoop...

    sqoop-1.4.6.bin-hadoop-2.0.4-alpha版本的压缩包,直接下载到本地,解压后即可使用

    Sqoop是一个在结构化数据和Hadoop之间进行批量数据迁移的工具,结构化数据可以是MySQL、Oracle等RDBMS。Apache框架Hadoop是一个越来越通用的分布式计算环境,主要用来处理大数据。随着云提供商利用这个框架,更多的...

    sqoop使用的demo

    大数据sqoop从RDBMS中向Hadoop的hdfs中进行数据的转移工具。

    大数据云计算技术系列 Hadoop之Hbase从入门到精通(共243页).pdf

    一、 HBase技术介绍 HBase简介 HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统... Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。

    Hadoop-Sqoop-Oracle:使用Sqoop在Oracle数据库和HDFS之间进行导入和导出

    支持RDBMS和HDFS之间高效大容量批量数据传输的工具 当您要将关系数据库中存储的数据导入到HDFS Hadoop引擎时使用。 可以将来自外部系统的数据导入HDFS并以Hive表和HBase表等各种Hadoop文件格式保存。 Sqoop v2仅...

    sqoop-1.4.6.bin__hadoop-2.0.4-alpha安装包

    Sqoop是一个用于在Hadoop和关系数据库或大型机之间传输数据的工具。您可以使用Sqoop将关系数据库管理系统(RDBMS)中的数据导入Hadoop分布式文件系统(HDFS),转换Hadoop MapReduce中的数据,然后将数据导出回RDBMS...

    Sqoop同步数据命令

    Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以使用Sqoop将数据从MySQL或Oracle等关系数据库管理系统(RDBMS)导入Hadoop分布式文件系统(HDFS),在Hadoop MapReduce中转换数据,然后将数据...

    sqoop工具_202006041735481.docx

    Apache Sqoop(SQL-to-Hadoop) 项目旨在协助 RDBMS 与 Hadoop 之间进行高效的大数据交流。 用户可以在 Sqoop 的帮助下,轻松地把关系型数据库的数据导入到 Hadoop 与其相关的系统 (如HBase 和Hive)中;同时也可以把...

    word源码java-hadoop-v1:hadoop入门

    word源码java hadoop生态圈 spark生态圈 大数据概述 初识hadoop ...flume(日志采集局和传输系统) sqoop(关系型数据库<->hdfs) 数据存储 hadoop(hdfs) 数据处理/分析/挖掘 hadoop、spark、flink、hi

    HBbase HIVE Sqoop介绍说明

    Hadoop HBbase HIVE Sqoop概念介绍说明,及和RDBMS的比较

    Practical Hadoop Migration

    Practical Hadoop Migration: How to Integrate Your RDBMS with the Hadoop Ecosystem and Re-Architect Relational Applications to NoSQL by Bhushan Lakhe English | 28 Aug. 2016 | ISBN: 1484212886 | 332 ...

    Hadoop权威指南(中文版)2015上传.rar

    2.6 HBase和RDBMS的比较 2.6.1 成功的服务 2.6.2 HBase 2.6.3 实例:HBase在Streamy.com的使用 2.7 Praxis 2.7.1 版本 2.7.2 HDFS 2.7.3 用户接口(UI) 2.7.4 度量(metrics) 2.7.5 模式设计 2.7.6 计数器 2.7.7 ...

    Hadoop权威指南 第二版(中文版)

     本书从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop...

    sqoop官方文档学习笔记

    Sqoop是一个用于在Hadoop和关系...您可以使用Sqoop将关系数据库管理系统(RDBMS)(如MySQL或Oracle或大型机)中的数据导入Hadoop分布式文件系统(HDFS),转换Hadoop MapReduce中的数据,然后将数据导出回RDBMS 。

    Pro.Docker.148421829

    Chapter 8: Using Apache Hadoop Chapter 9: Using Apache Hive Chapter 10: Using Apache HBase Chapter 11: Using Apache Sqoop Chapter 12: Using Apache Kafka Chapter 13: Using Apache Solr Chapter 14: Using...

    big-data-projects:我在职业生涯中曾使用过的各种大数据代码的存储库

    大数据项目各种大数据代码的存储库,以学习大数据中的技术地图缩小Map Reduce是Hadoop数据处理框架,是用Java编写的,包含两个主要阶段-Map和Reduce阶段。 映射阶段读取输入数据作为输入拆分,并生成(K,V)键-值对...

    Practical Hadoop Migration(Apress,2016)

    Re-architect relational applications to NoSQL, integrate relational database management systems with the Hadoop ecosystem, and transform and migrate relational data to and from Hadoop components....

    大数据处理流程.pdf

    扩展: 1、数据处理主要技术 Sqoop:作为⼀款开源的离线数据传输⼯具,主要⽤于Hadoop(Hive) 与传统数据库(MySql,PostgreSQL)间的数据传递。它可以 将⼀个关系数据库中数据导⼊Hadoop的HDFS中,也可以将HDFS中的...

    Azkaban3.59.x最新版极简入门

    在大数据分析场景中,以ETL(Extract抽取-Transform交互转换-Load加载)为例,数据的操作包含了如下流程:RDBMS==>Sqoop==>Hadoop==>Sqoop==>RDBMS/NoSQL/...,这里涉及了三个流程:数据抽取==>数据清洗==>数据入库。...

Global site tag (gtag.js) - Google Analytics