Hive和关系型数据库的区别
hive和关系型数据库太像了,所以在hive的学习中总是会有一种hive就是数据库的错觉,hive不是数据库。hive是Hadoop的客户端,底层是hdfs,执行引擎是mapreduce,mapreduce执行在yarn上,说白了就是hadoop的客户端包了一层。
一、数据更新
- hive读多写少
- mysql通常经常需要修改
二、数据延迟
- mysql执行通常都是秒回
- hive的时间通常要长:
- hive查询的时候,没有索引,需要扫描整个表,因此延迟比较高
- mapreduce执行hive的时候,会有shuffle,shuffle需要落盘,延迟比较高
三、数据规模
- hive的数据规模较大
- hive存储在HDFS,建立在集群上。可以加机器纵向扩展
- mysql具有存储的瓶颈
- mysql存储在磁盘上