行键设计
高表与宽表
- 高表:表中列少行多
- 宽表:表中列多行少
Hbase只能按行分片,因此高表更有优势。
把需要检索的条件尽量放到行键rowkey里面去
宽表适合需要行级原子性的需求
辅助索引
- 由客户端管理索引:缺点比优点更多
- 带索引的事务型Hbase: ITHbase (个人认为要远离在原本就不成熟的HBase上的更不成熟的封装)
- 带索引的Hbase: IHbase (个人认为要远离在原本就不成熟的HBase上的更不成熟的封装)
- 协处理器: 用钩子维护索引
搜索集成
- 用HBase存储数据,用MapReduce任务建立索引,索引使用Lucene 或者 Solr。并且Lucene的后台存储用HBase
- BuildTableIndex类可以扫描整个表,并建立Lucene索引,存储在HDFS上
- HBasene: 直接在HBase内部建立搜索索引
布隆过滤器
布隆过滤器可以减少 I/O操作的层面,但是消耗很大的性能,默认不要用
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-12-17 19:28:06