HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,实现的编程语言为 Java。它是Apache软件基金会的Hadoop项目的一部分,运行于HDFS文件系统之上,为 Hadoop 提供类似于BigTable 规模的服务。因此,它可以對稀疏文件提供極高的容錯率。
HBase在列上实现了BigTable论文提到的压缩算法、内存操作和布隆过滤器。HBase的表能够作为MapReduce任务的输入和输出,可以通过Java API (页面存档备份,存于互联网档案馆)来存取数据,也可以通过REST、Avro或者Thrift的API来访问。
虽然最近性能有了显著的提升,HBase 还不能直接取代SQL数据库。如今,它已经应用于多个数据驱动型网站[1][2],包括 Facebook的消息平台[3][4]。
在 Eric Brewer的CAP理论中,HBase属于CP类型的系统。
历史
Apache HBase最初是Powerset公司为了处理自然语言搜索产生的海量数据而开展的项目。不过现在它已经是Apache基金会的顶级项目,并且引起了广泛的关注[5]。
Facebook在2010年11月选用了HBase来实现它新的消息平台[3]。
参考资料
参考书目