HBase入门自学教程

Hbase是一种列式数据库,很多时候,Mysql无法解决一些列式存储的问题。例如消息存储,某个人有10000条消息,且不断增多,用关系型数据存储,那么就会存在把不同人,存储在同一张表的情况,从而导致查询某个人的信息的时候,会检索大量信息,从而找到这10000条消息,找到这一万条消息之后还会进行一些排序,或者过滤,效率低下。

在没有Hbase之前,这种场景很难解决,有了Hbase,这种问题,就变得相对简单了。


Hbase的学习

我认为Hbase课程是学习大数据最简单的一个入门课程,他与大数据相关,但是也可以独立于大数据的很多知识体系,所以,我认为无论是传统的开发者,还是大数据开发者,都可以学习一下Hbase。


什么是Hbase

HBase是一个 分布式的、面向列的开源数据库。分布式就是说,可以在多台机器上运行,其架构自身就是集群架构,Mysql可以单击部署,自身不是集群架构,需要集群,就需要自己搭建。

该技术来源于Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

上面一段话的要点:

  • Bigtable表示大表的意思,这个概念后面我们详细介绍,这里先略过。
  • Hbase是一个适合于非结构化数据存储的数据库。非结构化数据,是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、HTML、各类报表、图像和音频/视频信息等等。虽然这里,这么解释非结构化数据,但是并不是说,Hbase可以存储任何非结构化数据。

小结

好了,对Hbase的介绍先到这里,介绍多了,我们反而会更迷惑,通过后面的实践,大家来学习Hbase会更好。

首先,我们来看看如何安装。