Hive的基本概念
Hive是基于Hadoop的一个数据仓库工具
Hive的核心工作是把sql语句翻译成MapReduce程序
可以将结构化的数据映射为一张数据库表,并提供HQL(Hive Query Language)查询功能
数据仓库与关系型数据库的区别
HQL的引入仅仅是为了降低学习成本,底层还是MapReduce。Hive本身是数据仓库,并不是数据库系统。
Hive和数据库的主要区别在查询语言、存储位置、数据格式、数据更新、索引、执行、执行延迟、可扩展性和数据规模几方面。
Hive与RDBMS的区别数据库是将数据存储在块设备或本地文件系统中。而Hive是将所有数据存储在HDFS中,并建立在Hadoop之上。
执行延迟
由于Hive在查询数据的时候并没有索引,需要扫描整个表,由此造成的延迟较高,同时,由于MapReduce自身具有较高的延迟,也会导致查询延迟。相比较来说,在数据量规模小的情况下数据库的执行延迟较低。只有当数据规模大到超过数据库的处理能力的时候,Hive的并行计算优势才能体现出来。
网友评论