Sqoop将hive处理的数据导出到MySQL

这篇具有很好参考价值的文章主要介绍了Sqoop将hive处理的数据导出到MySQL。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

部署前提

一、创建数据上传到hive中

创建学生表数据:vim stu.txt

创建课程表数据:vim course.txt

在hive中创建学生表和课程表:

上传数据到hdfs上的hive中:

二、处理hive中的数据

查询学生姓名和课程信息,创建结果表stu_result:

插入数据:

三、在mysql中创建结果表

四、将hive中处理好的结果同步到mysql

处理mysql乱码(1)

处理mysql乱码(2)


部署前提:

启动Hadoop集群,MySQL

一、创建数据上传到hive中

sqoop export hive,hive,hadoop,大数据,sqoop

  • 创建学生表数据:vim stu.txt

name,id,age(姓名,学号,年龄):

张三,2001,18

李四,2002,22

王五,2003,20

老六,2004,22

  • 创建课程表数据:vim course.txt

id,kcmc,xf(学号,课程名称,学分):

2001,大数据,2

2002,ETL,3

2003,python,1

2004,C语言,2

sqoop export hive,hive,hadoop,大数据,sqoop

  • 在hive中创建学生表和课程表:

create table hive_db03.stu
(
name string,
id string,
age string
)
row format delimited fields terminated by ',' stored as textfile;
create table hive_db03.course
(
id string,
kcmc string,
xf string
)
row format delimited fields terminated by ',' stored as textfile;

查看创建的两个表:

show tables;

sqoop export hive,hive,hadoop,大数据,sqoop

  • 上传数据到hdfs上的hive中:

hdfs dfs -put stu.txt /user/hive/warehouse/hive_db03.db/stu

sqoop export hive,hive,hadoop,大数据,sqoop

hdfs dfs -put course.txt /user/hive/warehouse/hive_db03.db/course

sqoop export hive,hive,hadoop,大数据,sqoop

二、处理hive中的数据

  • 查询学生姓名和课程信息,创建结果表stu_result:

create table hive_db03.stu_result
(
name string,
kcmc string,
xf string
)
row format delimited fields terminated by ',' stored as textfile;

sqoop export hive,hive,hadoop,大数据,sqoop

  • 插入数据:

insert into hive_db03.stu_result select m.name,n.kcmc,n.xf from hive_db03.stu m join hive_db03.course n on m.id=n.id;

sqoop export hive,hive,hadoop,大数据,sqoop

sqoop export hive,hive,hadoop,大数据,sqoop

三、在mysql中创建结果表:

  • 登录:

sqoop export hive,hive,hadoop,大数据,sqoop

create table db3.stu_result
(
name varchar(50),
kcmc varchar(50),
xf varchar(20)
);

(注:hive中的string对应MySQL中的varchar)

sqoop export hive,hive,hadoop,大数据,sqoop

四、将hive中处理好的结果同步到mysql

sqoop export -connect jdbc:mysql://192.168.43.21:3306/db3 -username sqoop03 -password 123456 -table stu_result -export-dir /user/hive/warehouse/hive_db03.db/stu_result -input-fields-terminated-by ','

sqoop export hive,hive,hadoop,大数据,sqoop

  • 处理mysql乱码(1)

  • 修改mysql配置文件/etc/my.cnf,增加如下信息

[mysqld]

character-set-server=utf8

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

  • 重启mysql:

sqoop export hive,hive,hadoop,大数据,sqoop

  • 重新创建数据库(注意:一定要重新创建数据库,以前创建的数据库编码并未改变)

sqoop export hive,hive,hadoop,大数据,sqoop

  • 调用数据库:

sqoop export hive,hive,hadoop,大数据,sqoop

  • 创建表:

sqoop export hive,hive,hadoop,大数据,sqoop

  • 查看新建的数据库与表编码,已经变成utf8:

sqoop export hive,hive,hadoop,大数据,sqoop

sqoop export hive,hive,hadoop,大数据,sqoop

  • 重新同步数据:

sqoop export -connect jdbc:mysql://192.168.43.21:3306/db3 -username sqoop03 -password 123456 -table stu_result -export-dir /user/hive/warehouse/hive_db03.db/stu_result -input-fields-terminated-by ','
  • 查询:

sqoop export hive,hive,hadoop,大数据,sqoop

  • 处理mysql乱码(2)

将原数据库编码格式改变(与上面方法不同的是需要每个数据库修改编码)

  1. 删除原表:drop table xxx;
  2. 改变数据库编码:alter database db03 character set "utf8";
  3. 重新创表:create table xxx;

以上就是简单的sqoop导出过程!

sqoop export hive,hive,hadoop,大数据,sqoop文章来源地址https://www.toymoban.com/news/detail-774514.html

到了这里,关于Sqoop将hive处理的数据导出到MySQL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用sqoop从Hive导出数据到MySQL

    1、启动hadoop:start-all.sh。 2、启动mysql:support-files/mysql.server start。 3、启动hive:hive。 4、在hive中创建表。 (学生信息:学号xh,姓名xm)xsxx: create table bigdata03.xsxx ( xh String, xm String ) row format delimited fields terminated by \\\',\\\'stored as textfile; (课程信息:课程号kch,学号xh,课程名称

    2024年02月11日
    浏览(41)
  • 基于Hadoop的MapReduce网站日志大数据分析(含预处理MapReduce程序、hdfs、flume、sqoop、hive、mysql、hbase组件、echarts)

    需要本项目的可以私信博主!!! 本项目包含:PPT,可视化代码,项目源码,配套Hadoop环境(解压可视化),shell脚本,MapReduce代码,文档以及相关说明教程,大数据集! 本文介绍了一种基于Hadoop的网站日志大数据分析方法。本项目首先将网站日志上传到HDFS分布式文件系统

    2024年02月16日
    浏览(45)
  • 大数据环境搭建 Hadoop+Hive+Flume+Sqoop+Azkaban

    Hadoop:3.1.0 CentOS:7.6 JDK:1.8 这里网上教程很多,就不贴图了 【内存可以尽量大一些,不然Hive运行时内存不够】 创建tools目录,用于存放文件安装包 将Hadoop和JDK的安装包上传上去 创建server目录,存放解压后的文件 解压jdk 配置环境变量 配置免密登录 配置映射,配置ip地址和

    2024年02月09日
    浏览(28)
  • 使用Sqoop将数据从Hadoop导出到关系型数据库

    当将数据从Hadoop导出到关系型数据库时,Apache Sqoop是一个非常有用的工具。Sqoop可以轻松地将大数据存储中的数据导出到常见的关系型数据库,如MySQL、Oracle、SQL Server等。本文将深入介绍如何使用Sqoop进行数据导出,并提供详细的示例代码,以帮助大家更全面地理解和实施这一

    2024年02月20日
    浏览(27)
  • Sqoop【实践 01】Sqoop1最新版 MySQL与HDFS\Hive\HBase 核心导入导出案例分享+多个WRAN及Exception问题处理(一篇即可学会在日常工作中使用Sqoop)

    1️⃣ 查看所有命令【 sqoop help 】 2️⃣ 查看某条命令的具体使用方法【 sqoop help COMMAND 】 查询MySQL所有数据库,通常用于 Sqoop 与 MySQL 连通测试: 【具体参数可以使用 sqoop help list-databases 查看】实例: 结果: 【2个】WARN处理: 查询指定数据库中所有数据表,这里要注意一下

    2024年03月18日
    浏览(41)
  • [sqoop]hive3.1.2 hadoop3.1.1安装sqoop1.4.7

    Hadoop3.2.4+Hive3.1.2+sqoop1.4.7安装部署_hadoop sqoop安装_alicely07的博客-CSDN博客 sqoop-env.sh 末尾添加 环境变量 先创建目录,解决警告:accumulo does not exist! (1)添加jdbc驱动包:将MySQL数据库的JDBC驱动包mysql-connector-java-5.1.37.jar添加到Sqoop安装目录的lib目录中。 (2)删除Sqoop安装目录的

    2024年02月07日
    浏览(49)
  • 用sqoop导出hive parquet 分区表到mysql

    确保你已经安装并配置好了Sqoop工具,并且可以连接到Hadoop集群和MySQL数据库。 创建一个MySQL表来存储导出的数据。请确保MySQL表的结构与Hive Parquet分区表的结构匹配。 使用Sqoop的export命令来执行导出操作。以下是一个示例命令: 替换 mysql_host、database_name、mysql_username 和 mysq

    2024年02月14日
    浏览(33)
  • 【头歌】Sqoop数据导出 - 详解

    【提示】 点击每一关 参考答案 可以快速复制。 目录 第1关:Sqoop数据导出语法学习 任务描述 相关知识 编程要求 测试说明 参考答案 第2关:HDFS数据导出至Mysql内 任务描述 相关知识 编程要求 测试说明 参考答案 第3关:Hive数据导出至MySQL中 任务描述 相关知识 编程要求 测试

    2024年02月04日
    浏览(32)
  • 大数据bug-sqoop(二:sqoop同步mysql数据到hive进行字段限制。)

    新增加三个参数 –query “${sql}” 这个参数添加对应表的sql语句。注意结尾必须添加 $CONDITIONS ,必须添加where 条件,如果没有where条件,写成where 1=1。案例如下: \\\"select id,key_id,key_type,\\\'\\\' as encryption_cert_chain,device_type,account_id_hash,user_identifier,user_id,request_id,device_id,vehicle_id,vehicl

    2024年02月12日
    浏览(32)
  • [大数据 Sqoop,hive,HDFS数据操作]

    目录 🥗前言: 🥗实现Sqoop集成Hive,HDFS实现数据导出 🥗依赖: 🥗配置文件: 🥗代码实现: 🥗控制器调用: 🥗Linux指令导入导出: 🥗使用Sqoop将数据导入到Hive表中。例如: 🥗使用Sqoop将数据从Hive表导出到MySQL中。例如: 🥗使用Sqoop将数据导入到HDFS中。例如: 🥗使用Sqoop将数据

    2024年02月09日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包