HBase即hadoop数据库,不同于一般的关系数据库,它是非结构化数据存储的数据库,而且它是基于列的而不是基于行的模式。HBase是一个分布式的、面向列的、基于Google Bigtable的开源实现。利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服务。HBase 是 BigTable 的开源 java 版本。是建立在 HDFS 之上,提供高可靠性、高性能、列存储、 可伸缩、实时读写 NoSQL 的数据库系统。
表Table HBase是用表来存储数据的。
命名空间namespace namespace命名空间指对一组表的逻辑分组,类似RDBMS中的database,方便对表在业务上划分。 HBase系统默认定义了两个缺省的namespace:
hbase:系统内建表,包含namespace和meta表 default:用户建表时未指定namespace的表都创建在此
行键 Row Key 行键,每一行的主键列,每行的行键要唯一,行键的值为任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes),在HBase内部,rowKey保存为字节数组byte[]。行的一次读写是原子操作 (不论一次读写多少列)
与 nosql 数据库们一样,row key 是用来检索记录的主键。访问 hbase table 中的行,只有三种 方式: (1) 通过单个 row key 访问 (2) 通过 row ke