目前,我正在管理一组包含许多成员的列表。当涉及到字段和这些字段的命名时,每个列表看起来都不同。
通常,基本列表成员可能如下所示(来自我的成员集合):
{
"_id" : ObjectId("52284ae408edcb146200009f"),
"list_id" : 1,
"status" : "active",
"imported" : 1,
"fields" : {
"firstname" : "John",
"lastname" : "Doe",
"email" : "john@example.com",
"birthdate" : ISODate("1977-09-03T23:08:20.000Z"),
"favorite_color" : "Green",
"interests" : [
{
"id" : 8,
"value" : "Books"
},
{
"id" : 10,
"value" : "Travel"
},
{
"id" : 12,
"value" : "Cooking"
},
{
"id" : 15,
"value" : "Wellnes"
}
]
},
"created_at" : ISODate("2012-05-06T15:12:26.000Z"),
"updated_at" : ISODate("2012-05-06T15:12:26.000Z")
}
“字段”索引下的所有字段都是当前列表 ID 唯一的字段 - 这些字段可以针对每个列表 ID 更改,这意味着新列表可能如下所示:
{
"_id" : ObjectId("52284ae408edcb146200009f"),
"list_id" : 2,
"status" : "active",
"imported" : 1,
"fields" : {
"fullname" : "John Doe",
"email" : "john@example.com",
"cell" : 123456787984
},
"created_at" : ISODate("2012-05-06T15:12:26.000Z"),
"updated_at" : ISODate("2012-05-06T15:12:26.000Z")
}
目前,我的应用程序允许用户在每个海关字段中进行动态搜索,但由于它们没有索引,因此这个过程可能非常缓慢。
我不认为允许列表创建者选择应该索引哪些字段是一个选项 - 但我真的需要加快速度。
有什么解决办法吗?