nutch与起点R3集成之笔记(四)
通过“ nutch与起点R3集成之笔记(一、二、 三)”中的步骤,我们可以建立起一个行业内部网的搜索引擎,但搜索引擎一个最重要的功能,就是必须能搜索到网络中最新的内容。这就要求nutch能及时采集到网络中的最新网页信息,同时将这些新采集到的信息更新到solr索引库中。故本篇介绍如何实现索引的更新和去重问题。 我们随时可以使用nutch的crawl命令来爬行网站,例如,今天上午8:00采集一次新浪网站 http://www.sina.com.cn ,并通过nutch 的solrindex索引到solr索引库中,然后上午10:00再采集一次新浪网站,再通过solrindex索引到solr库中。这样做,可以保证用户能搜索到网络中较新的信息。在solr中实现没有什么问题,因为solr使用的是update方式更新索引库,因为索引field名为id的是主键,只要id是唯一的,update到索引库的操作就是成功的。 我们回过头来看看 《nutch与起点R3集成之笔记(二)》,在该篇中,我们是定义了用digest作为id,而没有采用在nutch的conf 的solrconfig.xml中定义用url作为id。其原因在于,如果用url作为id,在起点R3中会出现看不到索引数据等一些问题,我分析了很久,估计是由于url中会出现: / ? & 字符,这些字符不通过escape转换