大数据入门学习:Hive和HBase的定义及区别

 一、定义

Hive

HBase

Apache HBase 是一个开源的、分布式的、版本化的、非关系型的数据库。

二、区别

使用方面

hive

构建在hadoop平台之上的数据仓库

数据是存放在hdfs上的

数据查询最终被转化为MapReduce执行

hbase

基于hdfs 平台的nosql的数据库

在生产环境中,HBase 一般运行在 HDFS 上,以 HDFS 作为基础的存储设施,天生高可用

基于数据库本身的实时查询,而不是去运行MapReduce

特点

hive

方便熟悉SQL的人,可以快速上手

默认的计算引擎MapReduce,所以面临了查询时间比较长的问题

底层的计算引擎可以更换为spark/Tez

hive中的表纯逻辑表,只是表的定义,本身是不存储的、不计算的,完全依赖于hdfs/MapReduce

hbase

本身不支持SQL的,需要集成Phoenix/hive才可以支持SQL

有自己的一级索引,rowkey,基于一级索引进行数据查询,所以查询速度是比较快的;底层基于scan进行数据扫描,而不是用MapReduce

hbase中的表都是物理表,有独立的物理数据结构,查询的时候可以把数据加载到内存,提升查询效率

局限性

hive

目前仅支持ORC文件格式的数据更新操作,前提是开启事务支持

hive的运行依赖hdfs进行数据的存储,默认依赖MapReduce进行数据计算

hbase

本身不支持SQL查询,需要通过Phoenix实现SQL查询

hbase运行是需要依赖zookeeper(提供协调服务,配置服务,维护元数据,命名空间的维护),依赖于hdfs存储数据的

应用场景

hive

主要用于构建基于hadoop平台的数据仓库,离线处理海量数据

hive是提供完整的SQL实现,用于历史数据的分析、挖掘

hbase

适用于大数据的实时查询,还有海量数据的存储

hbase当做一个近实时数据库,支持线上业务的实时查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值