hbase学习(一)hbase简介

1.hadoop生态系统

2.hbase简介

非关系型数据库知识面扩展

cassandra、hbase、mongodb、redis

couchdb,文件存储数据库

Neo4j非关系型图数据库

3.hbase概念

hadoop Database,是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库

利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为其分布式协同服务

主要用来存储非结构化和半结构化的松散数据(列储存的方式)

4.Hbase数据模型

4.1Row Key:

决定一行数据、按照字典顺序排序的、Row key只能存储64k的字节数据

4.2Column Family列族&qualifier列:

HBase表中的每个列都归属某个列族,列族必须作为表模式(schema)定义的一部分预先给出。如 create 'test','course';

列名以列族作为前缀,每个列族都可以有多个列成员(column);如course:math,course:english,新的列族成员(列)可以随时按需、动态加入;

权限控制、存储以及调优都是在列族层面进行的;

Hbase把同一列族里面的数据存储在同一目录下,由几个文件保存。

4.3Timestamp时间戳

在HBase每个cell存储单元对同一份数据有多个版本,根据唯一的时间戳来区分每个版本之间的差异,不同版本的数据按照时间倒序排序,最新的数据版本排在最前面。
时间戳的类型是 64位整型。
时间戳可以由HBase(在数据写入时自动)赋值,此时时间戳是精确到毫秒的当前系统时间。
时间戳也可以由客户显式赋值,如果应用程序要避免数据版本冲突,就必须自己生成具有唯一性的时间戳。

猜你喜欢

转载自www.cnblogs.com/benjamin77/p/10299404.html