Firestore Пределы записи в подколлекциях с CollectionGroupQuery - PullRequest
2 голосов
/ 15 июня 2019

В продолжение моего предыдущего поста я узнал об ограничениях записи для отдельных коллекций

Firestore 500+ пишет в секунду в одну коллекцию

Как этот лимит в 500ps применяется к CollectionGroups , которые были недавно введены? (кстати ... Тодд не получил достаточно громкого приветствия здесь !: P)

https://firebase.google.com/docs/firestore/query-data/queries#collection-group-query

Firestore ограничивает все еще только отдельные коллекции:

https://firebase.google.com/docs/firestore/quotas

Максимальная скорость записи в коллекцию , в которой документы содержат последовательные значения в индексированном поле: 500 в секунду

Дэн МакГрат в моем предыдущем посте сказал, что это потому, что индекс для Individual Collections

будет ограничено нагрузкой, которую может обрабатывать один сервер .

Пример модели данных:

  • Коллекция : пользователи
  • Документ : userId1
  • Подколлекция : сообщения
  • Документ : postId1 (поля для postId, img, заголовка, даты)

Если я создаю CollectionGroup Индекс для posts (запрос по всем подколлекциям, называемым "сообщениями") - заказ по убыванию по date

Будет ли мой предел записи для всех этих вложенных коллекций уменьшен с 10 тыс. В секунду до 500 в секунду? Как обрабатывается индексация CollectionGroup? К тому же «отдельному серверу»?

Если это так ... это, по сути, означает, что нет смысла помещать эти "сообщения" в отдельные подколлекции по сравнению с одной отдельной коллекцией корневого уровня с точки зрения ограничения записи.

1 Ответ

0 голосов
/ 16 июля 2019

Спросили в Firebase Google Group - ответ да, вы ограничены 500 записями в секунду в подколлекциях, если вы начнете индексировать их с помощью CollectionGroupQuery

https://groups.google.com/forum/#!topic/firebase-talk/7Raajf8KWg4

Как и во многих ограничениях Cloud Firestore, этот предел основан на нашей способности индексировать данные и поддерживать строгую согласованность.Так что да: если у вас есть индекс CollectionGroup на «date», а в поле даты есть последовательные значения, вы не должны превышать скорость записи 500QPS для обновлений для «posts» документов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...