我需要在内存中存储大约 500-1000 个条目的 3 个字段,并通过 int 和 str 值进行快速有效的搜索。搜索发生在大约 300-500 个请求的快速突发中。我不确定如何有效地做到这一点。
存储的数据由 3 个字段组成:
有3种可能的情况:
目前,我使用两种不同的类型:
我发现这非常低效,目前正在寻找新的想法。任何提示?
基于mongodb 文档
该ensureIndex()函数仅在不存在时创建索引.
一旦集合在密钥上编入索引,对与指定密钥匹配的查询表达式的随机访问就会很快.如果没有索引,MongoDB必须遍历每个文档,检查查询中指定键的值:
db.things.find({j:2}); // fast - uses index
db.things.find({x:3}); // slow - has to check all because 'x' isn't
Run Code Online (Sandbox Code Playgroud)
这是否意味着第一行代码运行时是big_theta = 1,第二行代码是big_theta = n?