前言
hbase是一个列式存储数据库(以列为单位聚合数据,然后将列值顺序地存入磁盘;它的有点是减少IO以及利于压缩;它基于对于一个查询,并不是所有的值都是必须的),可存储海量数据,解决大数据中的实时处理的问题。离线批量处理的存储可以用hive(数据仓库),pig(数据分析引擎)等工具。
第一章 简介
1.1 海量数据的黎明
在面对一些特殊的场景时关系模型并不是最佳的解决方案。
Hadoop这样的系统可以提供PB级别数据存储和处理的能力。
大多数RDBMS遵从科德12定律
Hbase适合键值对的数据的存取或有序的数据存取。
1.2 关系数据库系统的问题
RDBMS适合非常有限的数据量。
1.3 非关系行数据库
1.4 结构
hbase实现了bigtable存储架构。
基本的单位是列,一列或多列(形成列簇)形成一行,并由唯一的行键来确定存储。一张表有若干行。
hbase的典型应用是存储从互联网中抓取的网页。
行数据的存储是原子的。
hbase中扩展和负载均衡的基本单元叫region。region可以被分配到若干台物理服务器上均摊负载,因此可以提供较强的扩展性。每个region只可以由一台region服务器加载。每个region服务器可以加载多个region.
数据存储在存储文件中,即hfile(默认64KB).存储文件通常保存在HDFS中。
Hbase(PB或TB级别数据存储)由三个主要的主键:客户端库、一台主服务器、多台region服务器。主服务器主要通过zookeeper为region服务器分配region.
网友评论