我可能有数万亿个字符串序列。我正在寻找一个快速的子字符串搜索。

我创建了一个索引。当我尝试获得一些结果(x => x.StartWith)时,在一个300万个对象数据库上大约需要2秒钟。

5亿个对象需要花费多少时间?

是否有可能使RavenDB搜索更快?

 store.DatabaseCommands.PutIndex("KeyPhraseInfoByWord", new Raven.Client.Indexes.IndexDefinitionBuilder<KeyPhraseInfo>
   {
    Map = wordStats => from keyPhraseInfo in keyPhraseInfoCollection
                   select new { keyPhraseInfo.Key },
    Analyzers =
        {
            { x => x.Key, "SimpleAnalyzer"}
        }
    });

最佳答案

Nier0,
您可以使用RavenDB进行真正的NGram快速搜索,是的。
另请:https://gist.github.com/1669767

关于c# - RavenDB快速子字符串搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10791164/

10-13 03:36