数据采集引擎Sqoop和Flume

本文介绍了数据采集引擎Sqoop和Flume的安装、配置及使用。Sqoop主要用于批量从关系型数据库如Oracle中迁移数据到Hadoop生态,而Flume则实时采集日志数据,适用于实时计算。文中详细展示了Sqoop的命令行操作,包括代码生成、创建Hive表、数据导入等,并简单概述了Flume的体系结构和配置。
摘要由CSDN通过智能技术生成

涉及到的知识点:

  1. Sqoop的安装和配置,及常用命令
  2. Flume的安装和配置,及使用

Sqoop

数据采集引擎Sqoop的特点:

  • 采集的是关系型数据库中的数据(批量)
  • 一般用于离线计算
  • 基于JDBC
  • 用于在Oracle <-> Sqoop <-> HDFS、HBase、Hive间进行数据交换

Sqoop的安装和配置

(1)安装

tar -zxvf sqoop-1.4.5.bin__hadoop-0.23.tar.gz -C ~/training/

(2)配置环境变量

vi ~/.bash_profile

SQOOP_HOME=/root/training/sqoop-1.4.5.bin__hadoop-0.23
export SQOOP_HOME

PATH=$SQOOP_HOME/bin:$PATH
export PATH

source ~/.bash_profile

(3)将Oracle的驱动jar放到sqoop的lib目录(因为我们需要链接到Oracle获取它的模拟数据92万条)。jar包是C:\oracle\product\10.2.0\db_1\jdbc\lib下的ojdbc14.jar,拷贝到/root/training/sqoop-1.4.5.bin__hadoop-0.23/lib下即可

Oracle使用注意点:用户名、表名、列名必须大写

Sqoop的使用

Sqoop的可用命令如下:

命令 说明
codegen 根据数据块中的表结构生成对应的JavaBean
create-hive-table 根据Oracle的表结构创建Hive的表结构
eval 在Sqoop中执行SQL
export 从HDFS中导数据到关系数据库中
help 帮助信息
import 将数据库表的数据导入到HDFS中,本质就是MapReduce程序
import-all-tables 导入某个用户下所有的表 —-> 默认导入到: /user/root
job 用来生成一个sqoop的任务,生成后,该任务并不执行,除非使用命令执行该任务。
list-databases (1)针对Oracle:当前数据库中所有的用户名(2)针对MySQL: 所有的数据库的名字
list-tables 打印出关系数据库某一数据库的所有表名
merge
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值