Ограничение размера хранилища Firestore, как хранить большие массивы - PullRequest
0 голосов
/ 26 февраля 2019

Я получил коллекцию users/$userID/followers этот идентификатор пользователя является UID firebase, поэтому его длина составляет 29 байтов (размеры строк рассчитываются как число байтов в кодировке UTF-8 + 1.)

Внутри каждого пользовательского документау меня есть массив с именем последователей и еще один с именем следующим.Оба массива содержат много идентификаторов пользователей, так что вот в чем проблема.

В пожарном хранилище каждый документ имеет максимальный размер 1 Мб, поэтому легко увидеть, что скоро у меня закончится свободное место.Мой вопрос заключается в том, каков наилучший способ управления большими массивами, подобными этим.

Наиболее очевидный вариант: создайте другой документ, содержащий всего пару новых массивов, для продолжения сохранения этих данных (и делайте это рекурсивно, когдапредел документа достигнут).

Итак, есть идея получше?Или, по крайней мере, как немного упростить процесс.

Подробнее об ограничениях размера здесь: https://firebase.google.com/docs/firestore/storage-size?hl=en-419

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

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

Да, это будет стоить дороже.Существует масштабируемость.

0 голосов
/ 26 февраля 2019

1 МБ - 1 миллион байтов.У вас будет достаточно времени, прежде чем хватит места для хранения около 35K UID.

Я сомневаюсь, что у кого-то будет 35 тысяч подписчиков / подписчиков.Даже facebook ограничен 5000, и я думаю, вы еще не там.

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