hindex HBase 二级索引 项目简介
hindex 是华为公司开发的纯 Java 编写的 HBase 二级索引,兼容 Apache HBase 0.94.8。当前的特性如下:多个表索引 多个列索引 基于部分列值的索引 使用索引扫描等于和范围条件 批量加载数据来索引表(索引完成批量加载)工作原理HBase 二级索引是 100% 服务端实现的。Put 操作E.g.:Table –> tab1 column family –> cfIndex –> idx1, cf1:c1 and idx2, cf1:c2Index table –> tab1_idx (user table name with suffix “_idx” )扫描操作使用IndexedHTableDescriptor htd = new IndexedHTableDescriptor(usertableName);
IndexSpecification iSpec = new IndexSpecification(indexName);
HColumnDescriptor hcd = new HColumnDescriptor(columnFamily);
iSpec.addIndexColumn(hcd, indexColumnQualifier, ValueType.String, 10);
htd.addFamily(hcd);
htd.addIndex(iSpec);
admin.createTable(htd);未来会实现的功能:动态添加和删除索引 集成 HBase Shell 的二级索引管理 优化范围扫描 HBCK 工具支持二级索引表 WAL 优化二级索引条目 使得扫描评估情报可导入导出
IndexSpecification iSpec = new IndexSpecification(indexName);
HColumnDescriptor hcd = new HColumnDescriptor(columnFamily);
iSpec.addIndexColumn(hcd, indexColumnQualifier, ValueType.String, 10);
htd.addFamily(hcd);
htd.addIndex(iSpec);
admin.createTable(htd);未来会实现的功能:动态添加和删除索引 集成 HBase Shell 的二级索引管理 优化范围扫描 HBCK 工具支持二级索引表 WAL 优化二级索引条目 使得扫描评估情报可导入导出