MongoDB管理一个集合中多个字段的索引
在MongoDB中,我们可以为获取准确数据的特定字段创建索引。但是如果我们有一个像下面的Book_Features collection这样的场景呢 在这个集合中,每个字段都是为用户提供的,用于排序和列出他们所需的项目。我们如何索引这些字段?我们是否应该索引此集合中的所有字段?这是个好主意吗 书 书刊特色MongoDB管理一个集合中多个字段的索引,mongodb,indexing,nosql,Mongodb,Indexing,Nosql,在MongoDB中,我们可以为获取准确数据的特定字段创建索引。但是如果我们有一个像下面的Book_Features collection这样的场景呢 在这个集合中,每个字段都是为用户提供的,用于排序和列出他们所需的项目。我们如何索引这些字段?我们是否应该索引此集合中的所有字段?这是个好主意吗 书 书刊特色 我认为当用户基于上述字段对数据进行排序时,您希望提高性能。 一般来说,将这么多的字段作为索引不是一个好主意,但是如果您有更多的数据是基于上述搜索词检索的,并且如果这是查询中非常常用的词,您可以
我认为当用户基于上述字段对数据进行排序时,您希望提高性能。
一般来说,将这么多的字段作为索引不是一个好主意,但是如果您有更多的数据是基于上述搜索词检索的,并且如果这是查询中非常常用的词,您可以继续将它们全部作为索引 现在还不清楚您的意图是什么,但是这里有一些关于复合索引的方法。如果您的查询限制了结果的数量,那么您可以在可接受的时间内不使用索引进行排序。结合分页,这应该足以满足速度要求。然而,我看不出在单独的收藏中保留一本书的特点有什么意义。
_id, book_name, description, price, quantity, author
_id,
book_id,
format: [pdf, ebook, hard-copy],
hard_copy: [soft-bind, hard-bind],
category: [fantasy, horror, adventurous],
languages: [English, Kannada, Hindi],
reviews: {[user: user_id, stars: 5, comment: '', date: '']},
released: [2015, 03, 16],
volumes: [1, 2, 3],
total_pages: 200,
.... and more ....