Lucene列CLOB索引

时间:2011-05-06 02:04:05

标签: indexing lucene clob

您好 我们在我们的应用程序中寻找一种包含许多包含CLOB内容的关系表的搜索机制。我们要求允许用户搜索此信息。我们正在研究Oracle Text,但到目前为止还没有发现有关此产品的任何好消息。

我们正在考虑在某些过程中读取CLOB来提取数据并索引这些数据。我们的用户会搜索,我们会将索引映射到表格中的rowid,并将结果显示给我们的用户。

这对Lucene来说是一个很好的任务吗?或者我没有正确思考?

1 个答案:

答案 0 :(得分:0)

您应该能够将CLOB中的文本添加到一个字段,将行ID添加到另一个字段。如果CLOB已存储在您的数据库中,请不要将其再次存储在Lucene索引中(添加文本字段时使用Store.NO)。存储行ID。当文档匹配时,您可以从结果&中拉出行ID字段。用它来引用你的表格。

String rowid = ...; // row id from DB
String text = ...; // data from CLOB;
Document doc = new Document();
doc.add(new Field(FIELD_ID, rowid, Store.YES, Index.NOT_ANALYZED));
doc.add(new Field(FIELD_BODY, text, Store.NO, Index.ANALYZED, TermVector.YES));