Indexing Lucene列CLOB索引

Indexing Lucene列CLOB索引,indexing,lucene,clob,Indexing,Lucene,Clob,嗨 我们正在应用程序中寻找一种搜索机制,它包含大量包含CLOB内容的关系表。我们有允许用户搜索此信息的要求。我们正在研究Oracle文本,但到目前为止还没有发现有关此产品的任何好消息 我们正在考虑在某个过程中读取CLOB,提取数据并索引这些数据。我们的用户将进行搜索,并将索引映射到表中的rowid,然后将结果呈现给用户 这对Lucene来说是一个好任务,还是我没有正确思考?您应该能够将CLOB中的文本添加到一个字段,将行id添加到另一个字段。如果CLOB已存储在数据库中,则在添加文本字段时,不要

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

我们正在考虑在某个过程中读取CLOB,提取数据并索引这些数据。我们的用户将进行搜索,并将索引映射到表中的rowid,然后将结果呈现给用户


这对Lucene来说是一个好任务,还是我没有正确思考?

您应该能够将CLOB中的文本添加到一个字段,将行id添加到另一个字段。如果CLOB已存储在数据库中,则在添加文本字段时,不要将其再次存储在Lucene索引use 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));