Limity dotyczące baz danych czasu rzeczywistego

Poniżej znajdziesz ograniczenia dotyczące przechowywania danych i operacji w Bazie danych czasu rzeczywistego Firebase. Aby móc przekraczać te limity, używaj wielu baz danych.

Globalny

Operacja Limit Opis
Połączenia jednoczesne 200 000*

Jednoczesne połączenie jest równoważne z podłączeniem do bazy danych 1 urządzenia mobilnego, jednej karty przeglądarki lub jednej aplikacji serwera.

To nie jest to samo co łączna liczba użytkowników Twojej aplikacji, ponieważ nie wszyscy użytkownicy łączą się ze sobą naraz. Na przykład aplikacje, które mają 10 mln aktywnych użytkowników miesięcznie,zwykle mają mniej niż 200 tys. połączeń jednocześnie. Maksymalna liczba równoczesnych połączeń zależy od łącznej liczby użytkowników i średniego czasu spędzanego przez nich w aplikacji.

Jeśli jednak chcesz skalować więcej niż ten limit, spróbuj używać wielu baz danych.

*Limit jednoczesnych połączeń w abonamencie Spark wynosi 100.

Jednoczesne odpowiedzi wysyłane z jednej bazy danych. ~100 000/s Odpowiedzi obejmują jednoczesne operacje transmisji i odczytu wysyłane przez serwer z jednej bazy danych w danym momencie. Limit odnosi się do pakietów danych reprezentujących poszczególne operacje odczytu lub przesyłania, w tym powiadomień push, wysyłanych z bazy danych. Te wskazówki dotyczą ciągłego obciążenia, ale baza danych może czasami obsłużyć większe impulsy.
Liczba funkcji w Cloud Functions aktywowanych przez pojedynczy zapis 1000; lub 500 w przypadku Cloud Functions w wersji 2 na region Nie ma limitu liczby operacji odczytu i zapisu, które możesz aktywować w ramach pojedynczej funkcji, ale w przypadku Cloud Functions w wersji 2 pojedyncza operacja zapisu w bazie danych może aktywować tylko 1000 funkcji lub 500 funkcji na region.

Funkcje w Cloud Functions mogą być aktywowane tylko przez operacje zapisu, a każda z nich może też aktywować więcej operacji zapisu, które aktywują więcej funkcji (z których każda ma własny limit 1000 funkcji lub 500 na region).

Rozmiar pojedynczego zdarzenia wywołanego przez zapis 1 MB Rozmiar zdarzenia składa się z tych wartości:
  1. Istniejące dane w lokalizacji zapisu.
  2. Wartość aktualizacji lub delta danych niezbędne do zapisania nowych danych w lokalizacji.
Operacje zapisu większe niż 1 MB odnoszą się do bazy danych, ale nie uruchamiają wywołania funkcji.
Przenoszenie danych do Cloud Functions 10 MB/s bez przerwy Częstotliwość danych zdarzenia, które można przekazać do Cloud Functions.

Drzewo danych

Właściwość Limit Opis
Maksymalna głębokość węzłów podrzędnych 32 Każda ścieżka w drzewie danych musi mieć mniej niż 32 poziomy.
Długość klucza 768 bajtów Klucze są zakodowane w formacie UTF-8 i nie mogą zawierać nowych wierszy ani tych znaków:
. $ # [ ] / lub dowolne znaki sterujące ASCII (0x00 - 0x1F i 0x7F)
Maksymalny rozmiar ciągu znaków 10 MB Dane są zakodowane w formacie UTF-8.

Odczyty

Opis Limit Uwagi
Rozmiar pojedynczej odpowiedzi obsługiwanej przez bazę danych 256 MB Rozmiar danych pobieranych z bazy danych w pojedynczej lokalizacji nie powinien przekraczać 256 MB na każdą operację odczytu.

Aby przeprowadzić operację odczytu w większej lokalizacji, wypróbuj jedną z tych opcji:

Łączna liczba węzłów na ścieżce z detektorami lub zapytaniami 75 mln* Nie można nasłuchiwać ścieżek ani wysyłać zapytań dotyczących łącznie ponad 75 milionów węzłów. Nadal możesz jednak nasłuchiwać węzłów podrzędnych lub wysyłać do nich zapytania. Spróbuj bardziej szczegółowo przeanalizować ścieżkę lub utworzyć osobne detektory lub zapytania dotyczące konkretnych fragmentów ścieżki.

*W przeglądarce danych w konsoli Firebase nie można wyświetlać ścieżek,które mają łącznie ponad 30 tys. węzłów.

Czas trwania pojedynczego zapytania 15 minut* Pojedyncze zapytanie może działać przez maksymalnie 15 minut, zanim zakończy się niepowodzeniem.

*Pojedyncze zapytanie wykonane w konsoli Firebase może działać przez maksymalnie 5 sekund, zanim zakończy się niepowodzeniem.

Zapisy

Opis Limit Uwagi
Częstotliwość zapisu 1000 zapisów/s Limit operacji zapisu na sekundę w pojedynczej bazie danych. Limit nie jest sztywny, ale jeśli będziesz wykonywać ponad 1000 zapisów na sekundę, Twoja aktywność zapisu może zostać ograniczona.
Rozmiar pojedynczego żądania zapisu do bazy danych 256 MB z interfejsu API typu REST; 16 MB z pakietów SDK. Łączna ilość danych w każdej operacji zapisu powinna być mniejsza niż 256 MB. Aktualizacje z wieloma ścieżkami podlegają tym samym ograniczeniom rozmiaru.
Zapisane bajty 64 MB/min Łączna liczba bajtów zapisanych w ramach jednoczesnych operacji zapisu w bazie danych w dowolnym momencie.