HBase简单介绍

HBase是一种NoSQL数据库,提供强一致性读写、自动分片和故障转移等功能,适合大规模数据存储。它与Hadoop/HDFS集成,但不支持所有RDBMS特性。在设计时要考虑数据规模、对RDBMS特性的需求和硬件资源。HBase的表由行和列族组成,数据模型包括行键、列族、时间戳和版本,支持Get、Put、Scan和Delete操作。
摘要由CSDN通过智能技术生成

(中文)HBase官方文档-0.97
(英文)Apache HBase Reference Guide

概述

NoSQL

HBase是一种”NoSQL”数据库。”NoSQL”是一个通用词表示数据库不是RDBMS(Relation Database Management System,关系型数据库管理系统),后者支持SQL作为主要访问手段。有许多种NoSQL数据库:BerkeleyDB是本地NoSQL数据库例子,而HBase是大型分布式数据库。技术上来说,HBase更像是”数据存储(Data Store)”多于”数据库(Data Base)”。因为缺少很多RDBMS特性,如列类型,第二索引,触发器,高级查询语言等。
然而,HBase有许多特征同时支持线性化和模块化扩充。HBase集群通过增加RegionServers进行扩充。它可以放在普通的服务器中。例如,如果集群从10个扩充到20个RegionServer,存储空间和处理容量都同时翻倍。RDBMS也能很好扩充,但仅对一个点,特别是对一个单独数据库服务器的大小,同时,为了更好的性能,需要特殊的硬件和存储设备。HBase特性:

  • 强一致性读写:HBase不是”最终一致性(eventually consistent)”数据存储。这让它很适合高速计数聚合类任务。
  • 自动分片(Automatic sharding):HBase表通过region分布在集群中。数据增长时,region会自动分割并重新分布。
  • RegionServer自动故障转移
  • Hadoop/HDFS集成:HBase支持本机外HDFS作为它的分布式文件系统。
  • MapReduce:HBase通过MapReduce支持大并发处理,HBase可以同时做源和目标。
  • Java客户端API:HBase支持易于使用的Java API进行编程访问。
  • Thrift/REST API:HBase也支持Thrift和REST作为非Java前端。
  • Block Cache和Bloom Filters:对于大容量查询优化,HBase支持Block Cache和Bloom Filters。
  • 运维管理:HBase提供内置网页用于运维视角和JMX度量。

什么时候用HBase

HBase不适合所有问题。
首先,确信有足够多数据,如果有上亿或上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值