hive和数据库的区别

2020-04-03  本文已影响0人  VincentLeon

四、Hive和数据库的区别

(1)数据存储位置不同

Hive中处理的结构化数据存储在HDFS中,元数据存储在mysql的Meta store中;

数据库将数据保存在块设备或本地文件系统中;

(2)数据更新

Hive是针对数据仓库设计的,主要用于读,所有的数据在加载时已经确定好,适合处理静态数据;

数据库通常是实时进行修改的,增删改查,适合处理动态数据;

(3)执行机制

Hive大多数查询的执行是通过Hadoop提供的MapReduce实现的;

数据库通常是用自己的引擎innodb;

(4)执行延迟

Hive因为没有索引、利用MapReduce框架执行查询,所以Hive本身的延迟较高;

数据库的延迟较低,但是不太适合处理PB级别以上海量数据;

处理海量数据时,Hive的优势就显出来了;

(5)可扩展性

Hive是建立在Hadoop上的,所以Hive也具备可扩展性,并发运行;

数据库由于ACID语义的严格限制,扩展性非常有限,例如目前最先进的并行数据库oracle在理论上扩展能力也就只有100台左右。

很明显,除了都用sql语句,Hive和数据库其实没啥太大关系。
————————————————
版权声明:本文为CSDN博主「攻城狮Kevin」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wx1528159409/java/article/details/84667658

上一篇下一篇

猜你喜欢

热点阅读