从数据库中获取一些数据,并使用lucene对其进行索引和存储。
稍后,一些更多的数据被添加到数据库中,我只需要索引这些新添加的数据并附加到现有的索引文件。
你能用程序解释一下吗?
答案 0 :(得分:0)
您要问的是增量索引,这在索引方面较少,而在数据库(目标文档)的选择方法上则较少。
您需要使SQL SELECT
查询足够灵活,以使用标识新添加/更新行的列。
该列通常是DATE
列,例如 - LAST_ADDED_DT
,LAST_UPDT_DT
,因此您可以获取在过去x天,x小时等内添加/更新的记录。
e.g。在DB2上,WHERE DATE(LAST_UPDT_DT) >= CURRENT DATE - 2 DAY
将在最近两天更新您的记录等。
然后使用Lucene编写器的updateDocument(...)
方法而不是addDocument(...)
,因为如果文档是新文档,updateDocument(...)
将添加文档,如果文档已存在则会更新文档。
因此,此方法会处理更新的现有行以及新行。
Lucene创建新文件或附加到现有文件并不是您的头疼,Lucene将根据其版本的设置和结构来组织文件。
您应该以{{1}}模式打开您的作家。
希望这会有所帮助!!