一文搞懂Hive与数据库(Derby、MySQL)之间的关系

对于Hive的初学者,是否对hive、数据库,hdfs,yarn之间的关系有点搞不懂?这里将详解分析其中的关系。

1.Hive整体架构介绍

Hive可以看做是MapReduce的客户端
因为Hive的底层运算是MapReduce计算框架,Hive只是将可读性强,容易编程的SQL语句通过Hive软件转换成MR程序在集群上执行。hive可以看做mapreduce客户端,能用mapreduce程序完成的任务基本都可以对应的替换成hql(Hive SQL)编写的hive任务。所以因为hadoop和hdfs的本身设计的特点,也限制了hive所能胜任的工作特性。Hive最大的限制特点就是不支持基于行记录的更新,删除,增加。但是用户可以通过查询生成新表,或者将查询结果导入文件中来“实现”hive基于行记录的操作。
在这里插入图片描述
对于实际的数据,则存储在HDFS上。

那么左侧的meta store,则用于存储数据表的元数据信息(数据库,表格名,数据地址等等),这个需要一个数据表来实现,Derby或MySQL。

2.Derby&MySQL

Hive元数据默认保存在内嵌的 Derby 数据库中,但derby数据库只能允许一个会话连接,只适合简单的测试。实际生产环境中不适用,不可能只允许一个会话连接,需要支持多用户会话,通常部署的时候会将hive的元数据修改为保存在mysql中。

  • Derby 只支持一个会话连接
  • MySQL 支持多个会话连接,并且可以独立部署

3.Hive工作流程

这里通过建立数据库,建立表的流程例子,详细介绍了hive的工作流程。
在这里插入图片描述

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力改掉拖延症的小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值