Sqoop简介
sqoop 是 apache 旗下一款“Hadoop 和关系数据库服务器之间传送数据”的工具。
核心的功能有两个:
导入、迁入
导出、迁出
导入数据:MySQL,Oracle 导入数据到 Hadoop 的 HDFS、HIVE、HBASE 等数据存储系统
导出数据:从 Hadoop 的文件系统中导出数据到关系数据库 mysql 等 Sqoop 的本质还是一个命令行工具,和 HDFS,Hive 相比,并没有什么高深的理论。
sqoop:
工具:本质就是迁移数据, 迁移的方式:就是把sqoop的迁移命令转换成MR程序
hive
工具,本质就是执行计算,依赖于HDFS存储数据,把SQL转换成MR程序

将导入或导出命令翻译成 MapReduce 程序来实现 在翻译出的 MapReduce 中主要是对 InputFormat 和 OutputFormat 进行定制

Sqoop安装
一、安装部署
(1)、下载地址:http://mirrors.hust.edu.cn/apache/sqoop/1.4.7/
解压到/opt/cdh5/sqoop
(2)、拷贝MySQL的jdbc驱动包mysql-connector-Java-5.1.31-bin.jar到sqoop/lib目录下。
(3)、配置环境变量
#sqoop

export SQOOP_HOME=/opt/cdh5/sqoop
export PATH=$PATH:$SQOOP_HOME/bin

(4)、复制sqoop/conf/sqoop-env-template.sh为sqoop-env.sh
添加相关的配置

#Setpath to where bin/Hadoop is available
exportHADOOP_COMMON_HOME=/opt/cdh5/hadoop
#Setpath to where hadoop-*-core.jar isavailable
exportHADOOP_MAPRED_HOME=/opt/cdh5/hadoop
#setthe path to where bin/Hbase isavailable
exportHBASE_HOME=/opt/cdh5/hbase
#Setthe path to where bin/Hive is available
exportHIVE_HOME= /opt/cdh5/hive
#Setthe path for where zookeper config diris
exportZOOCFGDIR= /opt/cdh5/zookeeper

(5)、测试Sqoop
  sqoop version
测试之前先测试mysql能不能远程连接

Sqoop语法

导入hdfs

Sqoop import
--connect jdbc:mysql://192.168.104.200:3306/database (连接数据库的IP地址 、指定数据库)
--username root (mysql用户名)
--password root (mysql密码)
--table user (表名)
--columns “id,name”(指定需要查找的列)
--where “id >3” (条件)
--fields-terminated-by “\t” (列间隔)
--split-by id (以哪个字段分割)
--query ‘select id,name from user where $CONDITIONS and id >3’ (也可直接写查询语句,写条件语句时必须写$CONDITIONS ,查询语句外必须用单引号,否则得在$之前加转义字符 \)
--delete-target-dir (删除掉存在的路径)
--target-dir /hdfs (写入hdfs的路径)
-m 1 (开启几个maptask任务)

增量导入

Sqoop import
--connect jdbc:mysql://192.168.104.200:3306/database (连接数据库的IP地址 、指定数据库)
--username root (mysql用户名)
--password root (mysql密码)
--table user
--incremental append (追加)
--check-column order_date (根据哪一列)
--last-value ‘2018-11-12’ (大于这个日期的追加)
--target-dir /hdfs
--m 1

导入hive
先将hive-common-2.3.2.jar 导入sqoop的lib下

Sqoop import
--connect jdbc:mysql://192.168.104.200:3306/database (连接数据库的IP地址 、指定数据库)
--username root (mysql用户名)
--password root (mysql密码)
--table user
--hive-import (指定导入hive)
--fields-terminated-by “\t”
--lines-terminated-by “\n”
--hive-overwrite
--create-hive-table
--delete-target-dir
--hive-database (指定导入hive的哪个数据库)
--hive-table (默认和mysql的表名一样)
--target-dir /hdfs
--check-column uid
--last-value 2
-m 1

导出export

Sqoop export
--connect ‘jdbc:mysql://192.168.104.200:3306/database?useUnicode=true&characterEncoding=utf-8’ (连接数据库的IP地址 、指定数据库、指定编码格式)
--username root (mysql用户名)
--password root (mysql密码)
--export-dir /hive/warehouse/userinfo/part-m-00000 (指定导出的hdfs路径)
--table userinfo
-input-fields-terminated-by “,”(指定导出的字段间隔,必须是逗号)

因为sqoop1不支持导入hbse,可以先导入hdfs,然后执行批量导入的命令导入hbase

 hbase   org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator=, -Dimporttsv.columns="HBASE_ROW_KEY,info:name,order:no,order:date" customer /input/hbase/hbase_import_data.csv

Sqoop简介安装及使用的更多相关文章

  1. Sqoop 简介与安装

    一.Sqoop 简介 Sqoop是一个常用的数据迁移工具,主要用于在不同存储系统之间实现数据的导入与导出: 导入数据:从MySQL,Oracle等关系型数据库中导入数据到HDFS.Hive.HBase ...

  2. 入门大数据---Sqoop简介与安装

    一.Sqoop 简介 Sqoop 是一个常用的数据迁移工具,主要用于在不同存储系统之间实现数据的导入与导出: 导入数据:从 MySQL,Oracle 等关系型数据库中导入数据到 HDFS.Hive.H ...

  3. Hadoop 2.6.0-cdh5.4.0集群环境搭建和Apache-Hive、Sqoop的安装

    搭建此环境主要用来hadoop的学习,因此我们的操作直接在root用户下,不涉及HA. Software: Hadoop 2.6.0-cdh5.4.0 Apache-hive-2.1.0-bin Sq ...

  4. sqoop的安装

    Sqoop是一个用来完成Hadoop和关系型数据库中的数据相互转移的工具, 他可以将关系型数据库(MySql,Oracle,Postgres等)中的数据导入Hadoop的HDFS中, 也可以将HDFS ...

  5. Spark简介安装和简单例子

    Spark简介安装和简单例子 Spark简介 Spark是一种快速.通用.可扩展的大数据分析引擎,目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark S ...

  6. Hive/Hbase/Sqoop的安装教程

    Hive/Hbase/Sqoop的安装教程 HIVE INSTALL 1.下载安装包:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3 ...

  7. Sqoop的安装及简单使用

    SQOOP是用于对数据进行导入导出的. (1)把MySQL.Oracle等数据库中的数据导入到HDFS.Hive.HBase中   (2)把HDFS.Hive.HBase中的数据导出到MySQL.Or ...

  8. Sqoop的安装配置及使用

    一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据移植过去并不容易.Apache Sqoop正在加 ...

  9. Python 3 mysql 简介安装

    Python 3 mysql 简介安装 一.数据库是什么 1.  什么是数据库(DataBase,简称DB) 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据 ...

  10. Sqoop环境安装

    环境下载 首先将下载的 sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz放到 /usr/hadoop/目录下(该目录可以自定义,一般为Hadoop集群安装目录),然 ...

随机推荐

  1. memset函数&&bzro函数_C

    // Code file created by C Code Develop #include "ccd.h" #include "stdio.h" #incl ...

  2. Linux中&&、&、|、||等特殊符号

    && 和 & & 表示任务后台执行,与nohup命令功能差不多. # 运行jar包,并且置于后台执行,执行的日志重定向到当前默认的log.txt文件中 [root@lo ...

  3. 入门Vue+.NET 8 Web Api记录(一)

    做自己感觉有意思的或者能解决自己需求的项目作为入门,我觉得是有帮助的,不会觉得那么无聊. 一个最简单的前后端分离项目应该是怎么样的? 我觉得就是前端有个按钮,点击向后端发送一个get请求,获取到数据后 ...

  4. 关于MultipartFile

    首先,他来自spring框架,用于处理文件上传的问题 一般来讲,这个接口主要是实现以表单形式上传文件的功能 常用方法: getOriginalFileName:获取文件名+拓展名 getContent ...

  5. innodb存储引擎了解

    mysql常用的存储引擎分为innodb和myisam 其中innodb具有支持事务,执行行级锁,支持MVCC,外键,自动增长列,崩溃恢复等特性.并且mysql在5.5.5之后是数据的默认存储引擎 文 ...

  6. FFmpeg开发笔记(四十二)使用ZLMediaKit开启SRT视频直播服务

    ​<FFmpeg开发实战:从零基础到短视频上线>一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流.不过MediaMTX的功能 ...

  7. 基于Drone实现CI/CD【0到1架构系列】

    CI/CD是持续性集交和持续性部署,简单来讲就是自动化构建和自动化部署.目前有很多集成方案,也有很多组装方案,只要能实现自动化构建出制品,再自动部署到生产环境就行. 目前很多源代码都集成了CI/CD功 ...

  8. 【ElasticSearch】02 查询操作

    准备样本: Elasticsearch 提供了基于 JSON 提供完整的查询 DSL 来定义查询 查询条件还适用于删除操作   创建索引: # PUT http://127.0.0.1:9200/st ...

  9. 【Lodop】02 C-Lodop手册阅读上手

    版本:4.0.6.2 一.概述 C-Lodop云打印是一款精巧快捷的云打印服务产品,以Lodop功能语句为基础,JS语句实现远程打印 移动设备+Wifi+普通打印机+集中打印 C-Lodop对客户端浏 ...

  10. 深度学习需要float64精度吗 —— 为什么各大深度学习框架均不支持float64的深度学习运算呢 —— 商用NVIDIA显卡的float64性能是否多余呢

    首先要知道这么几个事实,也是交代一下本文要讨论的问题的背景: 各大深度学习框架均支持float64类型的简单运算,但是均不支持float64的深度学习的运算操作: 作为深度学习运行的加速设备,各种GP ...