mysql整理18-MySQL,HBase,Hive比较

理解Hive和HBase

hive是分布式的关系型数据库。主要用来并行分布式处理大量数据

Hive是为了简化编写MapReduce程序而生的,使用MapReduce做过数据分析的人都知道,很多分析程序除业务逻辑不同外,程序流程基本一样。在这种情况下,就需要Hive这样的用戶编程接口。Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑,就是些表的定义等,也就是表的元数据。使用SQL实现Hive是因为SQL大家都熟悉,转换成本低,类似作用的Pig就不是SQL。

HBase是一个分布式的基于列存储的非关系型数据库。HBase的查询效率很高,主要由于查询和展示结果

HBase为查询而生的,它通过组织起节点內所有机器的內存,提供一個超大的內存Hash表,它需要组织自己的数据结构,包括磁盘和內存中的,而Hive是不做这个的,表在HBase中是物理表,而不是逻辑表,搜索引擎使用它來存储索引,以满足查询的实时性需求。

hive是什么?

白话一点再加不严格一点,hive可以认为是map-reduce的一个包装。hive的意义就是把好写的hive的sql转换为复杂难写的map-reduce程序。

hbase是什么?

同样白话一点加不严格一点,hbase可以认为是hdfs的一个包装。他的本质是数据存储,是个NoSql数据库;hbase部署于hdfs之上,并且克服了hdfs在随机读写方面的缺点。

所以要问hive和hbase的区别,就应该问问map-reduce和hdfs之间的区别,问区别,就要先说说他俩哪里像。

Hive - MySQL区别

HiveMySQL
查询语言HQLSQL
数据存储HDFS磁盘上
执行MRExcutor
延迟
处理规模
索引0.8版本之后加入位图索引有复杂的索引

Hive - HBase区别

HbaseHive
类型列式数据库数据仓库
内部机制数据库引擎MR
增删改查都支持只支持导入跟查询
Schema只需要预先定义列族,不需要具体到列可以动态修改需要预先定义表格
应用场景实时离线
特点k-v类SQL

MySQL- HBase区别

MySQLHbase
数据库NoSQL数据库关系型数据库
存储
数据量
结构操作非结构式数据跟结构化的数据.
插入修改查询一些简单操作
结构化的数据.
复杂操作

部分原文出自:这里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值