接触搜索引擎、lucene已经3年了,当时什么都不懂,幻想着可以为lucene做一套管理系统,适用于中低端垂直搜索,可以快速搭建检索服务,甚至认为可以做成一个产品。
但是,有市场吗?用户群体是什么?接着认识了solr,发现和它的思想如出一辙。
为了不忘却那段苦逼的岁月,于是......
SWT已经淡忘了......
实例管理,类似数据库的实例,每个实例可以包含多个索引(core)。
每个实例可以动态配置。
这里主要对字段进行配置,类似solr的schema.xml。包括字段名称、存储方式、分词方式、索引方式。
这里相当于是一个查看配置的功能。
支持数据的导入,当时只实现了sqlserver数据库的导入。确定好数据条件即可。
当然少不了数据库表和索引字段的对应关系。
实例管理其实主要是配置管理。具体的数据操作如下。
可以直接给指定core导入数据、合并数据、优化索引等。合并索引支持将两个索引(core)进行合并,这主要是当时的一种数据增量更新方式。当然还提供自动的更新方式。
点击某个core,可以查看具体信息。
索引管理没有全部完成,主要和luke类似。
当时,由于数据更新的需求是:周期性更新数据,一周一次。因此我们提供两份索引a、b,一份提供检索服务,一份做备份。例如当a提供检索服务时,b就是备份索引。当更新时,先做一个增量索引c,让b和c合并,完成后让他提供检索服务,切换a为备份索引,并完成a和c的合并。以后依次类推。
这个控制比较粗糙,仅能完成特定的需求,如果更新的实时性要求比较高就不能这么做了!
无聊回忆下以前的东西,感慨啊!正在自己寂寞、苦逼的做着搜索的朋友们能理解这种心情吗?