HBase 入门

HBase是 高可靠、高性能、面向列、可伸缩的分布式数据库,属于BigTable的开源实现,主要用来存储非结果化和半结构化的松散数据。 HBase是Key-Value型

HBase的概念

  1. RowKey: 类似于MySQL的主键列

  2. Column: 类似于MySQL的列

  3. ColumnFamily: 列族 HBase的概念,将多个列聚合成一个列族,可以理解为MySQL的垂直分区。因为一般查询的时候不需要将整行数据全部返回

  4. TimeStamp: 标识一行数据的不同版本

  5. Region: 基于RowKey的分区,可以理解为MySQL的水平切分

HBase shell 命令

  1. 创建table: create <table>, <列名称1>, <列名称2>, <列名称3>...

  2. create: put <table>, , , <值>

  3. get: get <table>,

  4. drop: drop <table>, , ...

  5. put: put <table>, ,

  6. 多版本 get <table>, , {column=>'family:column', timestamp=>1321586238965}

  7. 全表扫描 scan <table>, {column => ‘family:column’, limit => 10, startrow => ‘xyz’}

  8. count: count <table>

  9. filter 过滤器

scan ‘table_name’, {filter => “PrefixFilter(‘rowkey_prefix’)”}

Written on November 19, 2019