我可能有数万亿个字符串序列。我正在寻找一个快速的子字符串搜索。
我创建了一个索引。当我尝试获得一些结果(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/