Hive的基本概念
Hive是什么
hive是基于Hadoop的一个数据仓库工具,能够将结构化的数据映射成为一张表,提供类SQL的查询
本质是转化成mapReduce程序
为什么使用Hive
- 简单容易上手
- 对实时性要求不高的时候使用
- 适合处理大数据
- 可以自定义函数
架构
由上图可以看出一共由5个部分组成,Mapreduce和HDFS可以归属于Hadoop
- Client
- Meta Store:表名、表所属的数据库(默认是default)、表的拥有者、列/分区字段、表的类型(是否是外部表)、表的数据所在目录等
- Driver:
- 解析器
- 优化器
- 编译器
- 执行器
- Hadoop:Hdfs用于存储,MapReduce用于计算
运行机制
hive接收到SQL语句,使用自己的Driver并结合元数据,将SQL翻译成mapReduce,提交到Hadoop中执行,最后将结果返回
Hive和数据库有哪些区别
- 数据存储位置:Hive是存储在HDFS上面,而其他数据库的存储位置一般为磁盘
- Hive不支持数据的修改 比如insert
- Hive没有索引
- 数据库有自己的执行引擎,而Hive是转成MapReduce
- 数据规模,HIve支持大数据
- HIve是建立在Hadoop之上的,所以Hadoop的可扩展性Hive同样拥有
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理