Hive为什么适合做数据仓库

Posted DataRyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive为什么适合做数据仓库相关的知识,希望对你有一定的参考价值。


Hive最适合于数据仓库应用程序,使用该应用程序进行相关的静态数据分析,不需要快速响应给出结果,而且数据本身不会频繁变化。

Hive不是一个完整的数据库。Hadoop以及HDFS的设计本身约束和局限性地限制了Hive所胜任的工作。其中最大的限制就是Hive不支持记录级别更新、插入、或者删除操作。但是用户可以通过查询生成新表或者将查询结果导入文件中。同时,因为Hadoop是一个面向批处理的系统,而MapReduce任务(Job)的启动过程需要消耗较长的时间,所以Hive查询延时比较严重。传统数据库中在秒级别可以完成的查询,在Hive中,即使数据集相对较小,往往也需要执行更长的时间。最后需要说明的是,Hive不支持事务。

因此,Hive不支持OLTP(联机事务处理)所需要的关键功能,而更接近成为一个OLAP(连接分析处理)工具。但是我们看到,由于Hadoop本身的时间开销很大,并且Hadoop所被设计用来处理数据规模非常大,因此提交查询和返回结果是可能具有非常大的延时的,所以Hive并没有满足OLAP中“联机”部分,至少目前没有满足。

如果用户需要对大规模的数据使用OLTP功能的话,那么应该选择使用一个NoSQL数据库,例如,和Hadoop解释使用的HBase以及Cassandra。如果用户使用的是Amazon弹性MapReduce计算系统(EMR)或者弹性计算云服务(EC2)的话,也可以使用DynamoDB。用户甚至可以和这些数据库(包括其他的一些数据库)结合来使用Hive。

因此,Hive是最适合数据库仓应用程序的,其可以维护海量数据,而且可以对数据进行挖掘,然后形成意见和报告等。 


以上是关于Hive为什么适合做数据仓库的主要内容,如果未能解决你的问题,请参考以下文章

Hive数据仓库工具安装

大数据技术hive介绍

hive学习

数据仓库Hive

hadoop--hive数据仓库

基于Hadoop生态圈的数据仓库实践 —— ETL