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

概述

业务背景

mysql表YHD_CATEG_PRIOR的结构如下:

-- 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的表结构如下:

-- 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中。

业务实现

脚本如下:

####################################
#
# 将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表导出的字段为:
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所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部