sqoop从mysql导入到hive例子 如何用sqoop将hive分区表信息导入到mysql命令?
如何用sqoop将hive分区表信息导入到mysql命令?
问题分析:
hive中主分区表其底层那是HDFS中的多个目录下的单个文件,hive导出数据本质是将HDFS中的文件导出
hive中的分区表,只不过分区字段(静态硬盘分区)不在文件中,因为在sqoop导入的时候,无法将分区字段进行直接导入
思路:在hive中创建角色一个充当表,将分区表剪切粘贴下来后分区字段装换为特殊字段,然后再用sqoop将tmp表文件导入即基于需求
步凑::
文章目录
1.创建家族目标表(主分区表)
1.1一栏表结构
2.导入数据
3.查询表dept_partition
4.修改预备表tmp_dept_partition
5.查询正式表
6.打开系统表结构(这会儿硬盘分区表早就转换的为非磁盘分区表了)
中建表dept_partition
8.在用sqoop再导入到MySQL
网站查询验正有无成功了导出
1.创建家族目标表(分区表)
hivegtCREATETABLE`dept_partition`(
`deptno`int,
`dname`string,
`loc`string)
PARTITIONEDbg(`month`string)rowformatdelimitedfieldsterminatedbyt.1查找表结构
hivegtshowcreatetabledept_partition
1
1
------------------------------------------------------
|createtab_stmt|
------------------------------------------------------
|CREATETABLE`dept_partition`(|
|`deptno`int,|
|`dname`string,|
|`loc`string)|
|PARTITIONEDhe(|
|`month`string)str.lower2.导入数据
hivegtloaddatainpath/user/hive/hive_db/data/dept.txtintotabledept_partition
1
1
10tACCOUNTINGt1700tRESEARCHt1800tSALESt1900 tOPERATIONSt1700.可以查询表dept_partition
hivegtselect*outsidedept_partition
1
1
---------------------------------------------------------------------------------------------
|dept_|dept_partition.dname|dept_partition.loc|dept_|
---------------------------------------------------------------------------------------------
|10|ACCOUNTING|1700|2019-10-19|
|20|RESEARCH|1800|2019-10-19|
|30|SALES|1900|2019-10-19|
|40|OPERATIONS|1700|2019-10-19|
|10|ACCOUNTING|1700|2019-10-20|
|20|RESEARCH|1800|2019-10-20|
|30|SALES|1900|2019-10-20|
|40|OPERATIONS|1700|2019-10-20|
---------------------------------------------------------------------------------------------
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
4.创建预备表tmp_dept_partition
hivegtcreatetabletmp_dept_partitionthoughselect*arounddept_partition
1
1
5.网上查询充当表
hivegtselect*returningtmp_dept_partition
1
1
-------------------------------------------------------------------------------------------------------------
|tmp_dept_|tmp_dept_partition.dname|tmp_dept_partition.loc|tmp_dept_|
-------------------------------------------------------------------------------------------------------------
|10|ACCOUNTING|1700|2019-10-19|
|20|RESEARCH|1800|2019-10-19|
|30|SALES|1900|2019-10-19|
|40|OPERATIONS|1700|2019-10-19|
|10|ACCOUNTING|1700|2019-10-20|
|20|RESEARCH|1800|2019-10-20|
|30|SALES|1900|2019-10-20|
|40|OPERATIONS|1700|2019-10-20|
-------------------------------------------------------------------------------------------------------------
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
6.查看表结构(这会儿分区表早就转换成为非分区表了)
hivegtshowcreatetabletmp_dept_partition
1
1
------------------------------------------------------
|createtab_stmt|
------------------------------------------------------
|CREATETABLE`tmp_dept_partition`(|
|`deptno`int,|
|`dname`string,|
|`loc`string,|
|`month`string)
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
中建表dept_partition
mysqlgtdroptableifexistsdept_partition
createtabledept_partition(
`deptno`int,
`dname`varchar(20),
`loc`varchar(20),
`month`varchar(50))
1
2
3
4
5
6
1
2
3
4
5
6
8.可以使用sqoop导出到MySQL
bin/sqoopexport
--connectjdbc:mysql://hadoop01:3306/partitionTb
--usernameroot
--password123456
--tabledept_partition
--num-mappers1
--export-dir/user/hive/warehouse/hive_db.db/tmp_dept_partition
--input-fields-terminated-by
Hadoop如何快速入门?
简而言之下,我对hadoop的理解。
狭义上说:
Hadoop1.x版本是hdfsmapReduce
Hadoop2.x版本是hdfsyarnmapReduce
广义上说:
haddop是一个生态。
建议您从1.x到2.x,先看架构,打听一下1.x的架构和缺点将近,2.x是怎么设计改进的。现在会推出的3.x又有什么改进呢?
生态圈,都有什么?每个模块是干些什么的?工作中会有什么应用场景?
以上是学习思路,祝成功,多谢了与我在线交流
Hadoop差不多要怎么学习这些内容:
(1)去学习Hadoop的基本要求:
a、完全掌握JavaSE
b、会在用maven工具
c、会使用IDE(eclipse、IDEA)
d、会建议使用Linux系统
(2)Hadoop详细介绍和环境搭建
(3)HDFS底层工作原理、HDFS编程
(4)MapReduce原理、MapReduce实践
(5)YARN原理及实践
(6)Zookeeper原理及实践
(7)Hbase、Hive、FlumeNG、Sqoop原理及实践。
查找:Hadoop环境完全安装可以设置
这个公众号资源挺多的有编程、机电、手绘、摄影、英语等一系列视频教材、天天更新。
公众号:nnmiRS
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。