术语和字段之间的Lucene差异
我读了很多关于Lucene索引和搜索的书,但仍然不明白什么是术语?术语和字段之间的区别是什么?一个非常粗略的类比是字段就像数据库表中的列,而术语就像每个数据库列中的内容 更具体地说,对于Lucene: 条款 术语是索引标记。见: Lucene分析器是将文本分解为索引标记(也称为术语)的处理管道 例如,如果你在文档中有以下句子术语和字段之间的Lucene差异,lucene,search-engine,lucene.net,Lucene,Search Engine,Lucene.net,我读了很多关于Lucene索引和搜索的书,但仍然不明白什么是术语?术语和字段之间的区别是什么?一个非常粗略的类比是字段就像数据库表中的列,而术语就像每个数据库列中的内容 更具体地说,对于Lucene: 条款 术语是索引标记。见: Lucene分析器是将文本分解为索引标记(也称为术语)的处理管道 例如,如果你在文档中有以下句子 "This is a list of terms" …然后将其传递给空白标记器,这将生成以下术语: This is a list of terms
"This is a list of terms"
…然后将其传递给空白标记器,这将生成以下术语:
This
is
a
list
of
terms
因此,在执行搜索时,术语也是您放入查询中的内容。有关如何在经典查询解析器中使用它们的定义,请参见
领域
字段是文档的一部分
一个简单的例子是文档标题与文档正文(剩余文本/内容)的对比。这些字段可以定义为Lucene索引中的两个单独的Lucene字段
(显然,您需要能够解析源文档,以便能够将标题与正文分开—否则,在构建Lucene索引时,无法正确填充每个单独的字段。)
然后,您可以将标题的所有术语放入标题字段中;身体的术语进入身体领域
现在,您可以单独搜索标题数据和正文数据
您可以阅读有关字段和属性的信息。有各种不同类型的字段,具体取决于它们将保存的数据类型(术语)