我们正在为我们的hbase集群使用phoenix和hbase-indexer,并且我们发现了一个关于phoenix二级索引的奇怪现象:
我们将数据(使用psql导入csv数据)与来自phoenix的两个全局可变索引表(C_PICRECORD_IDX1和C_PICRECORD_IDX2)放入一个表(C_PICRECORD)中,并使用hbase-indexer将数据复制到solr中。数据导入完成后,我们发现solr document numfound与hbase表行数不同。当我们删除索引表,清除数据并再次放入数据时,我们发现solr document numfound与hbase表的行数相同。
最近,我们发现了solr文档号与hbase表行数不同的原因: 1)删除文档会出错,但实际上我们只是用phoenix的两个全局索引表导入数据(psql)!
2) solr和hbase之间的行数不一致的奇怪现象只有在我们对数据表使用二级索引时才会发生。
它困扰了我们很长一段时间,似乎在使用phoenix二级索引时有所不同。
那么,我的问题是: Phoenix二级索引是否专门处理WAL日志?
我们的env:
cdh5.4.2 hbase-1.0.0-cdh5.4.2 phonenix 4.6 hbase-solr-1.5-cdh5.4.2(hbase-indexer)
集群:3个hbase区域服务器和3个hbase索引器
提示
hbase-indexer基于hbase复制将数据放入solr。它将捕获WAL日志并将感兴趣的数据放入solr中。hbase-索引器github:https://github.com/NGDATA/hbase-indexer
发布于 2016-06-03 17:28:02
我们最近解决了这个问题。请查看另一个堆栈溢出问题:
hbase-indexer solr numFound different from hbase table rows size
关于的问题,菲尼克斯二级索引是专门处理WAL日志的吗?,请看:
http://www.slideshare.net/jesse_yates/phoenix-secondary-indexing-la-hug-sept-9th-2013
有关phoenix二级索引的更多详细信息。
https://stackoverflow.com/questions/37560484
复制相似问题