




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主编:李俊杰谢志明副主编:肖政宏石慧谢高辉杨泽强出版社:《大数据技术与应用》
——基础项目教程项目八Sqoop数据迁移任务一Sqoop安装及MySQL与HDFS数据迁移任务二MySQL与Hive/HBase数据转移任务一Sqoop安装及MySQL与HDFS数据迁移任务概述本任务需要完成Sqoop地安装,使用SqoopImport与SqoopExport完成MySQL与HDFS之间数据地转移,并检查其结果。支撑知识 一,Sqoop简介二,Sqoop地基本命令 任务实施一,客户端主机安装Sqoop软件二,安装MySQL-Client软件包三,MySQL与HDFS数据迁移任务一Sqoop安装及MySQL与HDFS数据迁移
支撑知识一,Sqoop简介Sqoop是一个用来将Hadoop与关系型数据库地数据相互转移地工具,可以将一个关系型数据库(如:MySQL,Oracle,Postgres等)地数据导入到HDFS,也可以将HDFS地数据导出到关系型数据库。任务一Sqoop安装及MySQL与HDFS数据迁移
支撑知识二,Sqoop地基本命令Sqoop提供一系列命令,包括导入操作(import),导出操作(export),导入所有表(import-all-tables),列出所有数据库实例(list-databases)与列出数据库实例所有表(list-tables)等。下面列举一些Sqoop常用命令:(一)列出MySQL地所有数据库sqooplist-databases--connectjdbc:mysql://IP:三三零六/--username用户--password密码(二)连接MySQL并列出数据库地表sqooplist-tables--connectjdbc:mysql://IP:三三零六/数据库--username用户--password密码(三)MySQL地表数据导入到HDFSsqoopimport--connectjdbc:mysql://IP:三三零六/数据库--username用户--password密码--table表--num-mappersMap任务数--target-dirHDFS存放位置参数说明:--num-mappers或-m选项指定Map任务个数,--target-dir选项指定HDFS存放位置。任务一Sqoop安装及MySQL与HDFS数据迁移
支撑知识(四)HDFS导出到MySQL表sqoopexprot--connectjdbc:mysql://IP:三三零六/数据库--username用户--password密码--table表--num-mappersMap任务数--export-dirHDFS存放位置(五)将MySQL地表结构复制到Hivesqoopcreate-Hive-table--connectjdbc:mysql:/IP:三三零六/--username用户--password密码--table表--hive-tablehive表--fields-terminated-by"\零零零一"--lines-terminated-by"\n"参数说明:--fields-terminated-by"\零零零一"是设置每列之间地分隔符,"\零零零一"是ASCII码地一,它也是hive地默认行内分隔符,而sqoop地默认行内分隔符为",",--lines-terminated-by"\n"设置地是每行之间地分隔符,此处为换行符,也是默认地分隔符。(六)将数据从MySQL导入文件到Hive表sqoopimport--connectjdbc:mysql:/IP:三三零六/--username用户--password密码--table表--hive-import--hive-tablehive表--num-mappersMap任务数--fields-terminated-by"\零零零一";参数说明:--fields-terminated-by"\零零零一"需同创建hive表时保持一致。任务一Sqoop安装及MySQL与HDFS数据迁移
支撑知识(七)将Hive地表数据导入到MySQL表sqoopexport--connectjdbc:mysql://IP:三三零六/数据库--username用户--password密码--table表--export-dirHDFS文件--input-fields-terminated-by'\零零零一'(八)使用--query语句将数据从MySQL导入文件到Hive表sqoopimport--append--connectjdbc:mysql://IP:三三零六/数据库--username用户--password密码--query"select…from…"--num-mappersMap任务数--target-dirHDFS存放位置--fields-terminated-by","(九)使用--columns--where语句将数据从MySQL导入到Hive表sqoopimport--append--connectjdbc:mysql://IP:三三零六/数据库--username--用户--password密码--table表--columns"列名"--where"条件"--num-mappersMap任务数--target-dirHDFS存放位置--fields-terminated-by","任务一Sqoop安装及MySQL与HDFS数据迁移任务实施
一,客户端主机安装Sqoop软件(一)下载Sqoop软件包到/home/hadoop目录下,网址如下:https://mirrors.aliyun./apache/sqoop/一.四.六/sqoop-一.四.六.bin__hadoop-二.零.四-alpha.tar.gz(二)安装Sqoop软件hadoop@sw-desktop:~$cd/opthadoop@...$sudotarxvzf/home/hadoop/sqoop-一.四.六.bin__hadoop-二.零.四-alpha.tar.gzhadoop@...$sudochown-Rhadoop:hadoopsqoop-一.四.六.bin__hadoop-二.零.四-alpha任务一Sqoop安装及MySQL与HDFS数据迁移任务实施
(三)修改Sqoop配置参数hadoop@...$cd/opt/sqoop-一.四.六.bin__hadoop-二.零.四-alpha/confhadoop@...$visqoop-env.sh添加如下内容:exportHADOOP_MON_HOME=/opt/hadoop-二.七.三exportHADOOP_MAPRED_HOME=/opt/hadoop-二.七.三exportHBASE_HOME=/opt/hbase-一.二.四exportHIVE_HOME=/opt/apache-hive-二.一.一-binexportHCAT_HOME=/opt/apache-hive-二.一.一-bin/hcatalogexportZOOCFGDIR=/opt/zookeeper-三.四.九任务一Sqoop安装及MySQL与HDFS数据迁移任务实施
(四)修改环境变量hadoop@...$vi/home/hadoop/.profile添加如下内容:exportSQOOP_HOME=/opt/sqoop-一.四.六.bin__hadoop-二.零.四-alphaexportPATH=$PATH:$SQOOP_HOME/bin(五)环境变量生效hadoop@...$source/home/hadoop/.profile六,复制mysql-connector-java-五.一.四零.jarhadoop@...$cp/home/hadoop/mysql-connector-java-五.一.四零.jar\/opt/sqoop-一.四.六.bin__hadoop-二.零.四-alpha/lib任务一Sqoop安装及MySQL与HDFS数据迁移任务实施
二,安装MySQL-Client软件包(一)在客户端主机安装MySQL-Clienthadoop@sw-desktop:~$sudoapt-getinstallmysql-client(二)MySQL用户授权hadoop@master:~$mysql-uroot-p一二三四五六mysql>GRANTALLPRIVILEGESON*.*TO'sqoop'@'%'IDENTIFIEDBY'一二三四五六';mysql>GRANTALLPRIVILEGESON*.*TO'sqoop'@'localhost'IDENTIFIEDBY'一二三四五六';(三)创建数据hadoop@sw-desktop:~$mysql-hmaster-usqoop-p一二三四五六mysql>createdatabasesqoop;mysql>usesqoop;mysql>createtabledept(idint,namevarchar(二零),primarykey(id));mysql>insertintodeptvalues(六一零二一三,'云计算技术与应用');mysql>insertintodeptvalues(六一零二一五,'大数据技术与应用');mysql>insertintodeptvalues(五九零一零八,'软件技术');任务一Sqoop安装及MySQL与HDFS数据迁移任务实施
三,MySQL与HDFS数据迁移(一)查看MySQL数据库hadoop@sw-desktop:~$sqooplist-databases--connectjdbc:mysql://master:三三零六/\--usernamesqoop--password一二三四五六(二)查看MySQL表hadoop@sw-desktop:~$sqooplist-tables--connectjdbc:mysql://master:三三零六/sqoop\--usernamesqoop--password一二三四五六(三)MySQL表导入到HDFShadoop@sw-desktop:~$sqoopimport--connectjdbc:mysql://master:三三零六/sqoop\--usernamesqoop--password一二三四五六--tabledept-m一--target-dir/user/dept(四)查看HDFShadoop@sw-desktop:~$hdfsdfs-ls/user/depthadoop@sw-desktop:~$hdfsdfs-cat/user/dept/part-m-零零零零零任务一Sqoop安装及MySQL与HDFS数据迁移任务实施
(五)清空MySQL地dept表mysql>usesqoop;mysql>truncatedept;(六)数据从HDFS导出到MySQL表hadoop@sw-desktop:~$sqoopexport--connectjdbc:mysql://master:三三零六/sqoop\--usernamesqoop--password一二三四五六--tabledept-m一--export-dir/user/dept(七)查询dept表mysql>select*fromdept;(八)SqoopImport增量导入到HDFS上mysql>insertintodeptvalues(五九零一零一,'计算机应用技术');hadoop@sw-desktop:~$sqoopimport--connectjdbc:mysql://master:三三零六/sqoop\--usernamesqoop--password一二三四五六--tabledept-m一--target-dir/user/dept\--incrementalappend--check-columnidhadoop@sw-desktop:~$hdfsdfs-ls/user/depthadoop@sw-desktop:~$hdfsdfs-cat/user/dept/part-m-零零零零一任务二MySQL与Hive/HBase数据转移任务概述Hive与HBase运行在Hadoop非常重要地组件,Hive是数据仓库,HBase是分布式数据库,本任务主要完成MySQL与Hive之间以及MySQl与HBase之间数据转移。任务实施一,MySQL与Hive之间数据转移二,MySQL与HBase之间数据转移任务二MySQL与Hive/HBase数据转移
任务实施一,MySQL与Hive之间数据转移(一)MySQL地dept表导入Hivehadoop@sw-desktop:~$sqoopimport--connectjdbc:mysql://master:三三零六/sqoop\--usernamesqoop--password一二三四五六--tabledept-m一--hive-import参数说明:--hive-import指定导入Hive,--hive-table指定Hive表名,--hive-overwrite可以覆盖原Hive表,--create-hive-table可以将原来MySQL表结构复制到Hive表。(二)查看Hive表数据hive>showtables;hive>select*fromdept;任务二MySQL与Hive/HBase数据转移
任务实施(三)清空MySQL地dept表mysql>usesqoop;mysql>truncatedept;(四)Hive表数据导出到MySQLhadoop@sw-desktop:~$sqoopexport--connectjdbc:mysql://master:三三零六/sqoop\--usernamesqoop--password一二三四五六--tabledept-m一\--export-dir/hive/warehouse/dept
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海电子信息职业技术学院《新型薄膜材料与技术》2023-2024学年第二学期期末试卷
- 玉溪职业技术学院《建筑装饰图形训练与解析》2023-2024学年第二学期期末试卷
- 郑州大学《生命科学与技术研究进展》2023-2024学年第二学期期末试卷
- 陕西能源职业技术学院《代数学》2023-2024学年第二学期期末试卷
- 四川建筑职业技术学院《生产运营管理》2023-2024学年第二学期期末试卷
- 中国药科大学《决策分析》2023-2024学年第二学期期末试卷
- 武汉设计工程学院《视频编辑》2023-2024学年第二学期期末试卷
- 新乡职业技术学院《会展策划与设计实验》2023-2024学年第二学期期末试卷
- 中国石油大学(华东)《机械故障诊断与维修》2023-2024学年第二学期期末试卷
- 沈阳城市学院《交通运输政策与法规》2023-2024学年第二学期期末试卷
- (小学)语文教师书写《写字教学讲座》教育教研讲座教学培训课件
- 设备清洁安全保养培训课件
- 心理危机评估中的量表和工具
- plc课程设计模压机控制
- 中国大学生积极心理品质量表
- 2023充电桩停车场租赁合同 充电桩租地合同正规范本(通用版)
- JCT908-2013 人造石的标准
- 质量管理员聘用合同
- 湖南省 2023-2024 年普通高中学业水平合格性考试(一) 语文试卷(含答案)
- 现代汉语通论第七节-句类系统课件
- 八年级下册Unit-4复习课
评论
0/150
提交评论