RavenDB 中的短路评估



ravenDB会自动短路查询吗?如果没有,有没有办法实现这一目标。

例:我使用全文搜索在我的数据库中搜索。但是此搜索还有其他字段应满足特定值。那么,在进行昂贵的全文搜索之前,我将如何首先确定其他字段的优先级。

自动取款机我的查询看起来像这样:

condition1 AND condition2 AND FTS

我在 .Net 4.5 框架上使用 Raven 嵌入式客户端

No.Lucene,底层的索引实现,有时会尽最大努力重新排列查询。但是没有可用的短路行为,也没有办法实现这一目标。

你认为全文搜索"昂贵"的假设是错误的。短语搜索,有时通配符/前缀查询,由于要枚举的术语列表很大或需要加载位置数据,执行成本可能有点高,但 RavenDB 中的所有查询实际上都是 Lucene 查询,因此查询中的condition1FTS实际上是相同的。

最新更新