前言
最近接触的项目中,需要针对HBase的数据进行索引查询,主要支持中文查询,分页查询等。在此情况下,学习了搜索服务器solr。总结了一些方法和经验,正好可以分享个大家,鼓励自己,共同学习。
使用目的
HBase目前只支持对rowkey的一级索引,对于二级索引还不支持,当然可以把所有要索引的字段都拼接到rowkey中,根据hbase的filter功能进行查询,但是这样操作数据会涉及到全表扫描,效率很低,速度慢,不利于后期扩展。并且,通过HBase自己的索引,实现数据量统计,分页,中文索引几乎不可能。所以,基于solr为HBase创建索引,就显得更有价值。
名词解析
Solr: Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索