存储将被筛选的数据(内存中)的最佳方式



我需要存储一个项目集合(C# 类型在内存中),其中包含许多字段,例如:语言、所有者、键等。我想以一种允许快速过滤的方式存储它们。例如,我可能想要所有语言 = "en" 和 key = "key1" 的条目。它不会经常被过滤,它的大小可能在 10k 个条目左右,一个简单的列表/字典就足够了吗?我很好奇如何解决这个问题,因为对于将更频繁地过滤的更大列表。

如果将其存储在内存中就足够了,并且没有那么多过滤变体,则可以创建基于字典的数据结构。

不使用经典关系数据库的另一种解决方案是使用 Lucene.net,这是一个非常快速的搜索引擎库。虽然它有一个陡峭的学习曲线和一个有改进空间的文档;-)https://www.nuget.org/packages/Lucene.Net/

或者 - 只需使用经典数据库并注意正确设置索引。

最新更新