我是靠谱客的博主 冷傲皮皮虾,这篇文章主要介绍[Sqoop]将Hive数据表导出到Mysql,现在分享给大家,希望可以做个参考。

业务背景

mysql表YHD_CATEG_PRIOR的结构如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
-- Table "YHD_CATEG_PRIOR" DDL CREATE TABLE `YHD_CATEG_PRIOR` ( `category_id` int(11) NOT NULL COMMENT '类目ID', `category_name` varchar(250) DEFAULT NULL COMMENT '类目名称', `category_level` int(11) DEFAULT '0' COMMENT '类目级别', `default_import_categ_prior` int(11) DEFAULT '0' COMMENT '默认引入优先级', `user_import_categ_prior` int(11) DEFAULT NULL COMMENT '用户引入优先级', `default_eliminate_categ_prior` int(11) DEFAULT NULL COMMENT '默认淘汰优先级', `user_eliminate_categ_prior` int(11) DEFAULT NULL COMMENT '用户淘汰优先级', `UPDATE_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '数据刷新时间', PRIMARY KEY (`category_id`) ) ENGINE=InnoDB AUTO_INCREMENT=61125 DEFAULT CHARSET=utf8;

hive表pms.yhd_categ_prior的表结构如下:

复制代码
1
2
3
4
5
6
7
8
9
-- col_name data_type category_id bigint category_name string category_level int default_import_categ_prior int user_import_categ_prior int default_eliminate_categ_prior int user_eliminate_categ_prior int update_time string

hive表的字段之间以01分隔,行以n分隔,空字段以N填充

现在需要将hive表pms.yhd_categ_prior导出到mysql表YHD_CATEG_PRIOR中。

业务实现

脚本如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#################################### # # 将Hive表同步到Mysql # #################################### rm -rf ./YHD_CATEG_PRIOR.java sqoop-export -Dmapred.job.queue.name=pms --connect jdbc:mysql://127.0.0.1:3306/market --username admin --password 123456 --table YHD_CATEG_PRIOR --export-dir /user/hive/pms/yhd_categ_prior --columns category_id,category_name,category_level,default_import_categ_prior,user_import_categ_prior,default_eliminate_categ_prior,user_eliminate_categ_prior --update-mode allowinsert --update-key category_id --fields-terminated-by '01' --lines-terminated-by 'n' --input-null-string '\N' --input-null-non-string '\N'

上述脚本解析如下:

  • 将hive表pms.yhd_categ_prior导出到mysql的YHD_CATEG_PRIOR表中
  • hive表导出的字段为:
复制代码
1
2
3
4
5
6
7
category_id, category_name, category_level, default_import_categ_prior, user_import_categ_prior, default_eliminate_categ_prior, user_eliminate_categ_prior

最后

以上就是冷傲皮皮虾最近收集整理的关于[Sqoop]将Hive数据表导出到Mysql的全部内容,更多相关[Sqoop]将Hive数据表导出到Mysql内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(86)

评论列表共有 0 条评论

立即
投稿
返回
顶部