mysql数据导入hive_Load将Mysql数据导入Hive样例方案

本文详细介绍了如何使用Loader工具将Mysql中的历史数据导入到Hive,涉及从创建用户、准备Loader和Mysql环境,到配置Loader任务及查看导入结果的全过程。包括设置数据库连接、创建表、生成数据、配置Loader作业和运行任务等步骤。
摘要由CSDN通过智能技术生成

1.1业务场景

模拟使用Loader工具将客户移动电话系统产生的历史数据从原始数据库Mysql导入到Hive中,进行离线分析。

1.2操作步骤

1.2.1创建用户

1.进入FunsionInsight Manager界面,进去系统,创建本次测试用户,给予最大权限即可。

b08bb4400a73a3f090b2318675024819.png

1.2.2Loader准备工作

1.获取关系型数据库对应的驱动jar包保存在Loader服务主备节点的lib路径:“${BIGDATA_HOME}/FusionInsight_Porter_6.5.0/install/FusionInsight-Sqoop-1.99.3/FusionInsight-Sqoop-1.99.3/server/webapps/loader/WEB-INF/ext-lib”。

2.使用root用户在主备节点分别执行以下命令修改权限:

chown omm:wheel jar包文件名

chmod 600 jar包文件名

acf8d1a11586d43c0fed07ca1482dc21.png

3.登录FusionInsight Manager系统,选择“集群 > 服务 > Loader > 更多 > 重启”,输入管理员密码重启Loader服

务。

1.2.3Mysql准备工作

1.登录事先安装好的Mysql数据库,方式如下:

mysql –uroot –p Huawei@123

2.创建并使用数据库

create database inform;

use inform;

3.创建mysql数据表(模拟客户原始数据表)

CREATE TABLE data_temp_demo (

tel_num INT NOT NULL             #电话号码

,user_ip_addr VARCHAR(256)             #IP地址

,device_name VARCHAR(128)             #设备名

,rom_ver VARCHAR(128)                    #ROM版本

,hardware_ver VARCHAR(256)          #硬件版本

,app_name VARCHAR(256)                 #应用名称

,os_ver VARCHAR(256)                      #操作系统版本

,os_language VARCHAR(256)              #语言

,carrier VARCHAR(128)                      #运营商

### 将Hive中的数据导入MySQL 为了实现从HiveMySQL数据迁移,通常采用两种主要方法之一:通过Sqoop导出工具或是借助于中间文件作为桥梁。前者更为直接高效。 #### 使用 Sqoop 导出 Hive 数据MySQL 当使用 Sqoop 进行操作时,命令结构如下所示: ```bash sqoop export \ --connect jdbc:mysql://<mysql_host>:<port>/<database> \ --username <user_name> \ -P \ --table <destination_table> \ --export-dir /path/to/hive/data/in/hdfs \ --input-fields-terminated-by '\001' ``` 此命令会连接指定的 MySQL并创建目标表(如果不存在),随后读取 HDFS 中存储路径下的 Hive数据,并按照字段分隔符将其写入 MySQL 的相应表格内[^1]。 对于更复杂的场景,比如需要转换某些列名或调整数据类型,则可以在上述基础上增加 `--map-column-hive` 和其他参数来满足特定需求。 另外值得注意的是,在执行此类任务前应当确保源端 Hive 表已经成功加载所需处理的数据集,并且这些数据位于默认仓库位置或其他可访问的位置上。 #### 利用临时文件间接传输 另一种方式涉及先将 Hive 查询结果保存成外部文件形式,再利用 LOAD DATA INFILE SQL 语句载入 MySQL。具体步骤包括但不限于编写一段 MapReduce 或 Spark 应用来抽取 Hive 记录存盘;接着修改该文件使之符合 CSV 等标准格式以便被关系型数据库识别解析;最后运用批量插入机制完成最终目的[^2]。 然而这种方法相对繁琐一些,除非有特殊原因一般不推荐优先考虑这种方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值