大数据培训经典面试题分析-Hive与传统数据库的区别

Hive与传统的关系型数据库有很多类似的地方,例如对SQL的支持。但是其基于HDFS与MapReduce的事实使得它与传统的数据库在很多方面有很大的不同,在一些特性的支持下也受到底层架构的限制,但是这些限制随着版本迭代正在不断被消除,使得Hive看起来越来越像传统的数据库。

大数据培训班

1、数据存储位置。Hive是建立在Hadoop之上的,所有的Hive的数据都是存储在HDFS中的。而数据库则可以将数据保存在块设备或本地文件系统中。

2、数据格式。Hive中没有定义专门的数据格式,由用户指定,需要指定三个属性:列分隔符,行分隔符,以及读取文件数据的方法。数据库中,存储引擎定义了自己的数据格式。所有数据都会按照一定的组织存储。

3、数据更新。Hive的内容是读多写少的,因此,不支持对数据的改写和删除,数据都在加载的时候中确定好的。数据库中的数据通常是需要经常进行修改。

4、执行延迟。Hive在查询数据的时候,需要扫描整个表(或分区),因此延迟较高,只有在处理大数据是才有优势。数据库在处理小数据是执行延迟较低。

5、索引。Hive没有,数据库有

6、执行。Hive是MapReduce,数据库是Executor

7、可扩展性。Hive高,数据库低

8、数据规模。Hive大,数据库小