- 11
- 0
- 约2.02千字
- 约 5页
- 2021-01-28 发布于北京
- 举报
实验4:使用Sqoop将数据导入到hdfs
PAGE 2
[文档标题
实验4:使用sqoop将数据导入到hdfs
本次课程介绍实验4:使用sqoop将数据导入到hdfs。
一、Sqoop将数据导入到hdfs
在导入开始之前,Sqoop使用JDBC来检查将要导入的表。他检索出表中所有的列以及列的SQL数据类型。这些SQL类型(varchar、integer)被映射到Java数据类型(String、Integer等),在MapReduce应用中将使用这些对应的Java类型来保存字段的值。Sqoop的代码生成器使用这些信息来创建对应表的类,用于保存从表中抽取的记录。Sqoop启动的MapReduce作业用到一个InputFormat,他可以通过JDBC从一个数据库表中读取部分内容。
Hadoop提供的DataDriverDB InputFormat能为查询结果进行划分传给指定个数的map任务。为了获取更好的导入性能,查询会根据一个“划分列”来进行划分。Sqoop会选择一个合适的列作为划分列(通常是表的主键)。在生成反序列化代码和配置InputFormat之后,Sqoop将作业发送到MapReduce集群。Map任务将执行查询并将ResultSet中的数据反序列化到生成类的实例,这些数据要么直接保存在SequenceFile文件中,要么在写到HDFS之前被转换成分割的文本。Sqoop不需要每次都导入整张表,用户也可以在查询中加入到where子句,以此来限定需要导入的记录。
(一)步骤
1. 首先检查Hadoop相关进程,是否已经启动。若未启动,切换到/apps/hadoop/sbin目录下,启动Hadoop。。
jps
cd?/apps/hadoop/sbin
./start-all.sh
2.在Linux本地新建/data/sqoop2目录
mkdir -p /data/sqoop2
切换到/data/sqoop2目录下将buyer_log文件放在此目录下。
3. 开启mysql服务
service mysql start
4.开启mysql(密码:strongs)
mysql -u root -p
5.创建数据库mydb,并使用mydb数据库。
create database mydb;
use mydb;
6.在mydb数据库中创建表record
create table record(id varchar(100), buyer_id varchar(100),dt varchar(100),ip varchar(100),opt_type varchar(100));
7.将Linux本地/data/sqoop2/buyer_log里的内容,导入的mydb数据库record表中
load data infile /data/sqoop2/buyer_log into table record fields terminated by \t;
8.查看record表中内容
select * from record;
9.另开一个窗口,使用Sqoop查看Mysql中的数据库。此步目的是检查Sqoop以及Mysql是否可以正常使用。
sqoop list-databases \
--connect jdbc:mysql://localhost:3306/ \
--username root \
--password strongs
10.使用Sqoop查看Mysql中的表 (在jdbc连接字符串中添加了数据库的名称。用于直接访问数据库实例)。
sqoop list-tables \
--connect jdbc:mysql://localhost:3306/mydb \
--username root \
--password strongs
11.使用Sqoop将Mysql中mydb数据库record表里的数据导入到HDFS/mysqoop2目录里。(HDFS上的/mysqoop2目录,不需要提前创建)。
sqoop import \
--connect jdbc:mysql://localhost:3306/mydb \
--username root \
--password strongs \
--table record -m 1 \
--target-dir /mysqoop2
12.查看HDFS上/mysqoop2目录下的文件内容
Hadoop fs -ls /mysqoop2
hadoop fs -cat /mysqoop2/part-m-000
您可能关注的文档
- 贵金属首饰检验 K金材料 3足金、K金试金石条痕及点酸观测.doc
- 国际船舶代理业务 1.2.2通过船讯网查询船舶规范并识别重要参数 1.2.2.2船舶载重线解读电子教材.doc
- 国际货运代理实务 4.2.1航空普货运费计算 国际货运代理贸易术语.docx
- 国际交流 辅具开发 峰力耳背式助听器说明.doc
- 国际视野 国际交流 学院与吉尔吉斯斯坦教育部就开展国际交流合作达成初步意向.docx
- 果树生产技术(北方) 授粉技术 案例 核桃人工授粉.doc
- 果树生产技术(北方) 夏季修剪技术 案例 红提葡萄夏季修剪.doc
- 行企动态 大连来宝现代农业科技生态园 大连来宝生态基地简介.docx
- 行企信息库 知名企业 华测检测简介.docx
- 行企信息库 知名企业 诺安检测简介.docx
- 基于Spark构建数据分析系统-习题 基于Spark构建数据分析系统-习题 15.3.1 SDK与Android Java SDK的实例程序代码.docx
- 激光成套设备与维护 激光焊接设备焊接工作原理 12.激光焊接设备焊接工作原理7.27.doc
- 激光切割工艺实践 拓展材料 空气切割测试报告.doc
- 激光设备控制系统集成与开发 激光雕刻机应用软件介绍 Moshidraw2015 竹简排版.docx
- 集装箱运输 集装箱运输船舶及配积载 船舶配积载实训报告.doc
- 计算机病毒与木马防护 课中:任务讲解与实施 分离捆绑文件实验指导书(文档附件).docx
- 计算机监控系统组态与调试 添加动画 4-3动画连接-滑动输入器.doc
- 计算机视觉 模块3:语音信号特征提取 特征提取方法.docx
- 计算机网络基础及局域网构建 计算机网络基础及局域网构建 计算机网络基础及局域网构建教学设计(2017).doc
- 计算机园林景观效果图表现(三维) 任务一:小游园CAD文件导入与封面处理 01SketchUp界面设置.docx
原创力文档

文档评论(0)