Ниже перечислены ограничения на хранение данных и операции в Firebase Realtime Database. Чтобы обойти эти ограничения, используйте несколько баз данных.
Все страны
| Операция | Ограничение | Описание |
|---|---|---|
| Одновременные подключения | 200 000* | Одновременное подключение эквивалентно одному мобильному устройству, вкладке браузера или серверному приложению, подключенному к базе данных. Это не то же самое, что общее количество пользователей вашего приложения, поскольку не все пользователи подключаются одновременно. Например, у приложений с 10 миллионами активных пользователей в месяц обычно менее 200 000 одновременных подключений. Максимальное количество одновременных подключений зависит от общего числа пользователей и среднего времени, которое они проводят в приложении. Если вам нужно больше, попробуйте использовать несколько баз данных. *В тарифном плане Spark ограничение на количество одновременных подключений составляет 100. |
| Одновременные ответы, отправленные из одной базы данных. | ~100 000 в секунду | Ответы включают одновременные операции трансляции и чтения, отправленные сервером из одной базы данных в определенное время. Ограничение относится к пакетам данных, которые представляют каждую отдельную операцию чтения или трансляции, включая push-уведомления, отправленные из базы данных. Эти рекомендации предназначены для постоянной нагрузки, но база данных может справляться и с периодическими пиковыми нагрузками. |
| Количество функций Cloud Functions, активируемых одной записью | 1000 или 500 на регион для Cloud Functions версии 2 | Ограничений на количество операций чтения или записи, которые можно запустить из одной функции, нет. Однако одна операция записи в базу данных может запустить только 1000 функций или 500 функций на регион для Cloud Functions версии 2.
Cloud Functions могут запускаться только операциями записи, и каждая функция также может запускать дополнительные операции записи, которые запускают дополнительные функции (каждая со своим собственным ограничением в 1000 функций или 500 на регион). |
| Размер одного события, активированного записью | 1 МБ | Размер события состоит из следующих значений: .
|
| Передача данных в Cloud Functions | 10 МБ/с (постоянная) | Доля данных о событиях, которые можно передать в Cloud Functions. |
Дерево данных
| Ресурс | Ограничение | Описание |
|---|---|---|
| Максимальная глубина дочерних узлов | 32 | Каждый путь в дереве данных должен содержать менее 32 уровней. |
| Длина ключа | 768 байт | Ключи кодируются в UTF-8 и не могут содержать символы новой строки или любые из следующих символов: . $ # [ ] / или любые управляющие символы ASCII (0x00–0x1F и 0x7F). |
| Максимальный размер строки | 10 МБ | Данные закодированы в формате UTF-8. |
Чтение
| Описание | Ограничение | Примечания |
|---|---|---|
| Размер одного ответа, отправленного базой данных. | 256 МБ | Объем данных, скачиваемых из базы данных в одном месте, должен быть меньше 256 МБ для каждой операции чтения.
Чтобы выполнить операцию чтения в более крупном местоположении, попробуйте один из следующих вариантов: |
| Общее количество узлов в пути с прослушивателями или запросами | 75 миллионов* | Вы не можете прослушивать или запрашивать пути, содержащие более 75 миллионов узлов в совокупности. Однако вы по-прежнему можете прослушивать дочерние узлы или запрашивать их. Попробуйте углубиться в путь или создать отдельные прослушиватели или запросы для более конкретных частей пути.
*В средстве просмотра данных в виде таблицы в консоли Firebase нельзя просматривать пути,содержащие более 30 000 узлов. |
| Продолжительность выполнения одного запроса. | 15 минут* | Один запрос может выполняться до 15 минут, после чего регистрируется ошибка.
*Один запрос, выполненный в консоли Firebase, может выполняться не более 5 секунд, после чего он завершается ошибкой. |
Запись
| Описание | Ограничение | Примечания |
|---|---|---|
| Частота записи | 1000 операций записи в секунду | Ограничение на количество операций записи в секунду в одной базе данных. Это не жесткое ограничение, но если вы будете выполнять более 1000 операций записи в секунду, то частота записи может быть ограничена. |
| Размер одного запроса на запись в базу данных. | 256 МБ для REST API; 16 МБ для SDK. | Общий объем данных в каждой операции записи не должен превышать 256 МБ. Для обновлений с несколькими путями действует то же ограничение по размеру. |
| Записано байтов | 64 МБ/мин. | Общее количество байтов, записанных в базу данных в результате одновременных операций записи в любой момент времени. |