Lucene中多个字段的数据结构

时间:2015-11-06 18:47:07

标签: lucene

如果我有一个包含两个字段标题和内容的文档,则数据为:标题为:Java Book,内容为:Java book正在销售。反向索引结构看起来是什么样的,我的意思是它将是一个反向索引,它将字段存储在发布表中的doc对象中,如:

words = %w[
  page.php?
  site=
  blah&
  id=
  1
]    #=> words = ["page.php?", "site=", "blah&", "id=", "1"]

suffix = 'hello'

results = words.map do |word|
  if word.end_with?('=')   
    "#{word}#{suffix}"
  else
    word
  end
end

p results

--output:--
["page.php?", "site=hello", "blah&", "id=hello", "1"]

或者会有两个反向索引代表不同的字段:

java doc1(title,content)
book doc1(title,content)
selling doc1(content)

1 个答案:

答案 0 :(得分:1)

在Lucene术语(索引元素)由两部分组成:字段名称和值。所以在你的情况下,它将是一个倒排索引,看起来像这样:

title:java -> doc1
title:book -> doc1
content:java -> doc1
content:book -> doc1
content:selling -> doc1