Если порядок документов часто меняется, вы можете избежать записи содержимого каждого документа, вместо этого используя совершенно другой документ для поддержания порядка, используя массив строк, содержащий идентификаторы документов. Фактически, вы можете хранить много разных заказов в зависимости от того, как вы хотите отобразить документы.
Допустим, у вас есть коллекция документов:
collection
- docA
- docB
- docC
Теперь вы хотите хранить изменяемые заказы в документе под названием «заказ» в другой коллекции:
collection-meta
- order
- byAlpha: ["docA", "docB", "docC"]
- byScore: ["docC", "docA", "docB"]
Просто сначала запросите документ «заказ», а затем получите каждый документ для отображения в порядке, определенном в массиве. Чтобы изменить порядок документов, просто обновите содержимое одного массива в «порядке», сделайте c.