RavenDB中的任意搜索和索引

时间:2014-04-03 21:52:54

标签: linq lucene ravendb

我的数据由几乎扁平的JSON对象组成。大多数字段都有单个值,但有些字段具有单个值的数组。它永远不会比那更深。我有大约100个顶级字段,我希望能够搜索它们的任何组合。用户将在运行时创建一些搜索参数的临时组合。这些可能有点复杂,例如

A&& (B || C)&& 〜d

因此处理括号,ands和ors,A,B,C和D可以是equals,contains,nots和numeric比较。我不认为我可以用Linq实现这样的动态搜索。似乎Lucene可以接受这样的搜索,但Lucene只能搜索索引。由于我有大约100个字段,建议创建索引的方法是什么?我应该创建一个包含100个字段的索引吗?或100个个人指数?这些对我来说听起来非常昂贵且效率低下。还有更好的方法吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

让RavenDB处理它,它会为你创建和维护适当的索引