一、Sqoop简介[1.4.6版本]
------------------------------------------------------------
1.RDBMS 和 HDFS之间进行数据导入导出的工具
2.将导入或导出命令翻译成 MapReduce 程序来实现 在翻译出的 MapReduce 中主要是对 InputFormat 和 OutputFormat 进行定制
3.sqoop就是一个工具, 只需要在一个节点上进行安装即可。
二、Sqoop的安装和配置
---------------------------------------------------------------
1.下载1.4.6版本(1.997版本BUG太多)
2.tar开,配置环境变量
SQOOP_HOME=/soft/sqoop
...
3.配置sqoop/conf/sqoop-env.sh
$> cd $SQOOP_HOME/conf
$> cp sqoop-env-template.sh sqoop-env.sh
$> nano sqoop-env.sh
添加如下内容
export HADOOP_COMMON_HOME=/soft/hadoop
export HADOOP_MAPRED_HOME=/soft/hadoop
export HBASE_HOME=/soft/hbase
export HIVE_HOME=/soft/hive
export ZOOCFGDIR=/soft/zookeeper/conf
4.复制mysql驱动到/soft/sqoop/lib
复制jar包到sqoop/tools/lib下
$> cp mysql-connector-java-5.1.17.jar /soft/sqoop/lib/
5.验证sqoop的安装
$> sqoop-version
6.查看帮助
$> sqoop help
$> sqoop help import
三、MySQL数据的导入导出到HDFS
---------------------------------------------------
1.将MySQL中的单个表导入到HDFS中
$ sqoop import \
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--driver com.mysql.jdbc.Driver \
--username mysql \
--password mysql \
--table mytable \
--m 1 \
--target-dir /data/sqoop/expdata \
--where "id > 1" \
--incremental append \
--check-column id \
--last value 1205 \
2.将MySQL指定库中的所有表导入到HDFS中[不指定表名,直到导出到hdfs根目录下]
$ sqoop import-all-tables \
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--driver com.mysql.jdbc.Driver \
--username mysql \
--password mysql \
3.将HDFS的表导出到MySQL
a.MySql中创建相似的表
mysql> create table mytable_bak like mytable;
b.导出
$> sqoop export \
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--username mysql \
--password mysql \
--table mytable_bak \
--export-dir /data/sqoop/expdata
四、MySQL数据导入到Hive
--------------------------------------------------------
1.导入--- 将MySQL中mydata库下的mytable_bak表,导入到Hive的mydb2.mytable_bak1中
$> sqoop import \
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--driver com.mysql.jdbc.Driver \
--username mysql \
--password mysql \
--table mytable_bak \
--hive-import \
--hive-overwrite \
--hive-table mydb2.mytable_bak1 \
五、MySQL数据导入到HBase
------------------------------------------------------------
1.导入--将MySQL中mydata库下的mytable_bak表,导入到Hbase的mytable_bak1中[注意先后顺序,而且ns1:mytable_bak1,用的是: ]
sqoop import \
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--driver com.mysql.jdbc.Driver \
--username 'mysql' \
--password 'mysql' \
--table 'mytable_bak' \
--hbase-table 'ns1:mytable_bak1' \
--hbase-row-key 'id' \
--column-family 'f1' \
六、Sqoop Job -- 导入导出过程的封装,方便以后导入导出
------------------------------------------------------------
1.创建作业
sqoop job --create myjob -- import \
[下面就是之前的导入语句]
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--driver com.mysql.jdbc.Driver \
--username 'mysql' \
--password 'mysql' \
--table 'mytable_bak' \
--hbase-table 'ns1:mytable_bak1' \
--hbase-row-key 'id' \
--column-family 'f1' \
2.查看创建的作业
sqoop job --list
sqoop job --show myjob
3.启动作业
sqoop job --exec myjob
4.删除作业
sqoop job --delete myjob
七、增量导入
---------------------------------------------------------
1.参数
--incremental //增量类型,append/lastmodified
--check-column //指定检查字段,不能为varchar
--last value //之前导入的最大值
2.增量导入id 大于55的数据
sqoop import \
--connect jdbc:mysql://192.168.43.1:3306/mydata \
--driver com.mysql.jdbc.Driver \
--username 'mysql' \
--password 'mysql' \
--table 'mytable_bak' \
--hbase-table 'ns1:mytable_bak1' \
--hbase-row-key 'id' \
--column-family 'f1' \
--incremental append \
--check-column id \
--last-value 5 \
相关推荐
大数据ETL工具kettle与sqoop对比分析
sqoop有两个版本:sqoop1和sqoop2,sqoop2功能比sqoop强一些,但sqoop2产品不成熟,不适合生产环境使用,且CDH和Ambari HDP都默认集成sqoop1,所以不考虑sqoop2。 本文仅比较kettle和sqoop1: 对比项 Kettle Sqoop1 适用场景 数据ETL,简单或复杂的数据抽取、数据转换、数据清洗、数据过滤、数据同步。 ...
sqoop定时增量导入
sqoop使用hsql来存储job信息,开启metastor service将job信息共享,所有node上的sqoop都可以运行同一个job 一、sqoop的配置文件在sqoop.site.xml中: 1、sqoop.metastore.server.location 本地存储路径,默认在tmp下,改为其他路径 2、sqoop.metastore.serv
数据同步工具—Sqoop
Sqoop 作为一个数据同步工具,主要用于关系型数据库和Hadoop的数据相互同步。table 模式query 模式job 主要解决了增量同步的元数据(last-value)维护问题,当然本身也可以用来做非增量的同步,ETL 中更常用的增量模式是通过query 来完成的,这是因为query 模式更加灵活。
sqoop的详细使用及原理
来源https://blog.csdn.net/xiaobianjava/article/details/39854713
用sqoop2从mysql导入数据到hbase
用sqoop2从mysql导入数据到hbase 标签(空格分隔): sqoop2 hbase hadoop mysql 数据迁移 一、基础环境 hadoop-2.6.0 sqoop-1.99.6 hbase-1.0.1.1 二、数据迁移实际操作步骤 1、mysql中表结构显示 CREATE TABLE `risk_trade_error_result` ( `SERI...
大数据ETL工具Sqoop详解
Sqoop是用来做什么的 Sqoop官网是这样介绍: Apache Sqoop(TM) is a tool designed for efficiently transferring bulk data between Apache Hadoop and structured datastores such as relational databases. 就是说Sqoop是一款用来在Hadoo...
sqoop job命令自动生成
sqoop job命令自动生成
Sqoop数据迁移,导入数据至hdfs,hive,hbase,mysql
Sqoop数据迁移一、Sqoop概述二、Sqoop数据迁移1.从RDB(Relational Database)导入数据到HDFS1.1标准方式全部导入表(customers)1.2通过Where语句过滤导入表(orders)1.3通过COLUMNS过滤导入表1.4使用query方式导入数据1.5使用Sqoop增量导入数据2.导入数据到hive3.导入数据到HBase4.hdfs导出到MySQL三、执行Sqoop脚本四、执行Sqoop job任务 一、Sqoop概述 Sqoop是什么? Sqoop是一个用
大数据技术之Sqoop
大数据技术之Sqoop
Sqoop深度解析:大数据时代的桥梁工具
Sqoop(SQL-to-Hadoop)是Apache旗下的一款开源工具,专门用于在Hadoop和关系型数据库(RDBMS)之间进行高效批量数据传输。简单易用:命令行操作,无需编写MapReduce代码高效并行:基于MapReduce实现高速批量传输功能完善:支持全量、增量、条件导入/导出生态集成:与Hive、HBase、HDFS无缝对接在实际生产中,Sqoop通常与调度工具(如Azkaban、Oozie)结合,构建自动化数据同步管道,是大数据平台不可或缺的组成部分。
sqoop 导入hdfs hive hbase
目录 参数解析 导入HDFS 导入Hive 导入Hbase Hive增量导入 Hbase增量导入 任务job 参数解析 官网参数解析:http://sqoop.apache.org/docs/1.4.7/SqoopUserGuide.html#_incremental_imports --password-file :密码文件在hdfs上的路劲。如果密码不能明...
【大数据开发运维解决方案】Sqoop全量同步mysql/Oracle数据到hive
接下来本篇文章详细介绍一下使用sqoop全量同步oracle/mysql数据到hive,这里实验采用oracle数据库为例,后面一篇文章将详细介绍:1、sqoop --incremental append 附加模式增量同步数据到hive2、sqoop --incremental --merge-key合并模式增量同步到hive。
大数据-22 Sqoop 数据MySQL到HDFS集群 JDBC ETL MapReduce
Apache Sqoop 是一个用于在关系型数据库(如 MySQL)与 Hadoop 系统(如 HDFS、Hive、HBase)之间高效批量传输数据的工具,主要基于 MapReduce 实现并发导入导出。尽管 Sqoop 于 2021 年已归档进入 Apache Attic,仍在部分老旧系统中使用。在新项目中,更推荐使用 Apache NiFi、DataX 或 Flink CDC 等替代方案。Sqoop 常用于离线批处理场景中的 ETL 操作,支持表级导入、自定义 SQL、增量同步等功能。
Sqoop:sqoop简介及原理,安装配置sqoop,sqoop简单的使用案例,RDBMS导入数据到HDFS,Hive,HBase,Hive/HDFS导出到RDBMS,脚本打包,sqoo常用命令及参数
文章目录 第1章 Sqoop简介 第2章 Sqoop原理 第3章 Sqoop安装 3.1 下载并解压 3.2 修改配置文件 3.3 拷贝JDBC驱动 3.4 验证Sqoop 3.5 测试Sqoop是否能够成功连接数据库 第4章 Sqoop的简单使用案例 4.1 导入数据 4.1.1 RDBMS到HDFS 4.1.2RDBMS到Hive 4.1.3RDBMS到Hbase...
Sqoop介绍及数据迁移
一.Sqoop概述 Sqoop是一个用于在Hadoop和关系数据库之间传输数据的工具 将数据从RDBMS导入到HDFS、Hive、HBase 从HDFS导出数据到RDBMS 使用MapReduce导入和导出数据,提供并行操作和容错 目标用户 系统管理员、数据库管理员 大数据分析师、大数据开发工程师等 二.Sqoop操作 1.从RDB导入数据到HDFS sqoop import \ --connect jdbc:mysql://localhost:3306/retail_db \ --driver com
Sqoop 1.4.6环境安装以及数据迁移hdfs、hive、hive分区、hbase、增量导入、创建sqoop job(定时执行脚本方法)
一、 Sqoop 安装 安装 Sqoop 的前提是已经具备 Java 和 Hadoop、 Hive、 ZooKeeper、 HBase 的环境 1.1 下载并解压 链接:https://pan.baidu.com/s/1-i56m_mmLdKE_NqYpCzRhA 提取码:t2c3 1.上传安装包 sqoop-1.4.6-cdh5.14.2.tar.gz 到虚拟机中 2.解压 sqoop 安装包到指定目录 改名sqoop 方便使用 tar -zxvf sqoop-1.4.6-cdh5.14.2.tar.gz
一、sqoop 操作mysql与hdfs之间数据传输
/* SQLyog Ultimate v12.08 (64 bit) MySQL - 5.6.34 : Database - spark */ /*!40101 SET NAMES utf8 */; /!40101 SET SQL_MODE=’’/; /!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 /; /!4001...
大数据之Sqoop
sqoop是Hadoop生态体系和RDBMS体系之间传送数据的一种工具。工作机制: 将导入导出命令翻译成MR程序来实现,MR中主要是对inputformat和outputformat进行定制。Hadoop生态体系包括:HDFS、HBase、Hive等RDBMS体系包括:MySQL、Oracle等整体架构如下:sqoop与dataX对比。
1万+


 --- Sqoop简介,安装和配置,MySQL数据的导入导出到HDFS,Hive,HBase,Sqoop Job,增量导入&spm=1001.2101.3001.11974&articleId=84201932&d=1&t=3&u=a5c896ca150f4c7eb01e26ab438fade9)

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



