hvie与关系型数据库有什么区别

hvie与关系型数据库有什么区别,第1张

hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。

优点:学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

hive与关系型数据库的区别

1、数据加载

关系数据库:表的加载模式是在数据加载时候强制确定的(表的加载模式是指数据库存储数据的文件格式),如果加载数据时候发现加载的数据不符合模式,关系数据库则会拒绝加载数据,这个就叫“写时模式”,写时模式会在数据加载时候对数据模式进行检查校验的 *** 作

Hive:hive在加载数据时候不会对数据进行检查,也不会更改被加载的数据文件,而检查数据格式的 *** 作是在查询 *** 作时候执行,这种模式叫“读时模式”。

在实际应用中,写时模式在加载数据时候会对列进行索引,对数据进行压缩,因此加载数据的速度很慢,但是当数据加载好了,我们去查询数据的时候,速度很快。

但是当我们的数据是非结构化,存储模式也是未知时候,关系数据 *** 作这种场景就麻烦多了,这时候hive就会发挥它的优势。

2、

关系数据库:可以对某一行或某些行的数据进行更新、删除 *** 作。更新、事务和索引等等。

hive:不支持对某个具体行的 *** 作,也不支持事务和索引,hive对数据的 *** 作只支持覆盖原数据和追加数据。

hive的设计是对海量数据进行处理,全数据的扫描时常态。针对某些具体数据进行 *** 作的效率是很差的,对于更新 *** 作,hive是通过查询将原表的数据进行转化最后存储在新表里,这和传统数据库的更新 *** 作有很大不同。

3、

Hive也可以在hadoop做实时查询上做一份自己的贡献,那就是和hbase集成,hbase可以进行快速查询,但是hbase不支持类SQL的语句,那么此时hive可以给hbase提供sql语法解析的外壳,可以用类sql语句 *** 作hbase数据库。

全不同应用场景吧,HBase

速度比

Hive

快了不知道多少。HBase

是非关系型数据库(KV型),

key

做索引,查询速度非常快(相比较

Hive

),适合实时查询;而Hive是关系型数据结构,适合做后期数据分析。和单机的MySQL,Oracle比较的话,Hive的优点是可以存储海量数据,只是查询速度比较慢。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9997772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存