Z tego przewodnika dowiesz się więcej o limitach Cloud Firestore. Znajdziesz w nim też cennik Cloud Firestore Pricing, w którym szczegółowo wyjaśniono koszty Cloud Firestore i opisano kwestie, na które należy zwrócić uwagę.
Monitorowanie wykorzystania
Aby monitorować wykorzystanie Cloud Firestore, otwórz kartę Cloud Firestore Wykorzystanie w konsoli Firebase. Użyj panelu, aby ocenić wykorzystanie w różnych okresach.
Szczegółowe informacje o wykorzystaniu w Google Cloud konsoli
Gdy tworzysz projekt w Firebase, tworzysz też projekt Google Cloud. Na stronach Cloud Firestore Limity interfejsu API i App Engine Limity w konsoli Google Cloud możesz śledzić wykorzystanie Cloud Firestore i informacje o limitach.
Bezpłatny limit
Cloud Firestore oferuje bezpłatny limit, który umożliwia rozpoczęcie pracy bezpłatnie. Jeśli potrzebujesz większego limitu, musisz włączyć płatności w projekcie Google Cloud.
Limity są stosowane codziennie i resetowane około północy czasu pacyficznego.
W tabeli poniżej podsumowano bezpłatne limity:
| Poziom bezpłatny | Limit |
|---|---|
| Przechowywane dane | 1 GiB |
| Odczyty dokumentów | 50 000 dziennie |
| Zapisy dokumentów | 20 000 dziennie |
| Usunięcia dokumentu | 20 000 dziennie |
| Przesyłanie danych na zewnątrz | 10 GiB miesięcznie |
Te operacje i funkcje nie są objęte bezpłatnym wykorzystaniem. Aby korzystać z tych funkcji, musisz włączyć płatności:
- Usunięcia TTL
- Dane PITR
- Utwórz kopię zapasową danych
- Operacje przywracania
- Operacje klonowania
Więcej informacji o rozliczaniu tych funkcji znajdziesz w cenniku pamięci masowej.
Limity standardowe
W tabelach poniżej znajdziesz limity obowiązujące w Cloud Firestore. O ile nie zaznaczono inaczej, są to limity stałe.
Bazy danych
| Limit | Szczegóły |
|---|---|
| Maksymalna liczba baz danych na projekt |
100 Możesz poprosić o zwiększenie tego limitu , kontaktując się z zespołem pomocy. |
| Maksymalna liczba baz danych z kluczami szyfrowania zarządzanymi przez klienta (CMEK) na projekt |
0 Domyślnie limit wynosi 0, ponieważ ta funkcja jest dostępna tylko dla użytkowników z listy dozwolonych. Możesz poprosić o zwiększenie limitu, wypełniając formularz prośby o dostęp do CMEK. |
Kolekcje, dokumenty i pola
| Limit | Szczegóły |
|---|---|
| Ograniczenia dotyczące identyfikatorów kolekcji |
|
| Maksymalna głębokość podkolekcji | 100 |
| Ograniczenia dotyczące identyfikatorów dokumentów |
|
| Maksymalny rozmiar nazwy dokumentu | 6 KiB |
| Maksymalny rozmiar dokumentu | 1 MiB (1 048 576 bajtów) |
| Ograniczenia dotyczące nazw pól |
|
| Maksymalny rozmiar nazwy pola | 1500 bajtów |
| Ograniczenia dotyczące ścieżek pól |
`). Na przykład foo.`x&y` odnosi się do pola x&y zagnieżdżonego w polu foo. Aby utworzyć nazwę pola ze znakiem grawisu, poprzedź go znakiem ukośnika odwrotnego (\). Aby uniknąć nazw pól w cudzysłowie, możesz przekazać ścieżkę pola jako obiekt FieldPath (np. zobacz FieldPath w JavaScript).
|
| Maksymalny rozmiar ścieżki pola | 1500 bajtów |
| Maksymalny rozmiar wartości pola | 1 MiB – 89 bajtów (1 048 487 bajtów) |
| Maksymalna głębokość pól w mapie lub tablicy | 20 Pola mapy i tablicy dodają 1 poziom do ogólnej głębokości obiektu. Na przykład ten obiekt ma łączną głębokość 3 poziomów: |
Zapisy i transakcje
Oprócz tych limitów warto też zapoznać się ze sprawdzonymi metodami projektowania na dużą skalę.
| Limit | Szczegóły |
|---|---|
| Maksymalny rozmiar żądania do interfejsu API | 10 MiB |
| Limit czasu na transakcję | 270 sekund z 60-sekundowym czasem wygaśnięcia bezczynności |
Maksymalna liczba przekształceń pól, które można wykonać w jednym dokumencie w ramach operacji Commit lub transakcji |
500 |
Indeksy
Obowiązują te limity dotyczące indeksów pojedynczych pól i indeksów złożonych:
| Limit | Szczegóły |
|---|---|
| Maksymalna liczba indeksów złożonych w bazie danych |
|
| Maksymalna liczba konfiguracji pojedynczych pól w bazie danych |
Konfiguracja na poziomie pola może zawierać wiele konfiguracji tego samego pola. Na przykład, wykluczenie indeksowania pojedynczego pola i zasada TTL w tym samym polu są liczone jako 1 konfiguracja pola w ramach limitu. |
|
Maksymalna liczba wpisów indeksu dla każdego dokumentu |
40 000 Liczba wpisów indeksu to suma tych wartości dla dokumentu:
Aby dowiedzieć się, jak Cloud Firestore przekształca dokument i zestaw indeksów w wpisy indeksu, zapoznaj się z tym przykładem liczby wpisów indeksu. |
| Maksymalna liczba pól w indeksie złożonym | 100 |
| Maksymalny rozmiar wpisu indeksu |
7,5 KiB Aby dowiedzieć się, jak Cloud Firestore oblicza rozmiar wpisu indeksu, zapoznaj się z informacjami o rozmiarze wpisu indeksu. |
| Maksymalna suma rozmiarów wpisów indeksu dokumentu |
8 MiB Łączny rozmiar to suma tych wartości dla dokumentu: |
| Maksymalny rozmiar wartości indeksowanego pola |
1500 bajtów Wartości pól przekraczające 1500 bajtów są obcinane. Zapytania dotyczące obciętych wartości pól mogą zwracać niespójne wyniki. |
Czas życia danych (TTL)
| Limit | Szczegóły |
|---|---|
| Maksymalna liczba konfiguracji pojedynczych pól w bazie danych |
Konfiguracja na poziomie pola może zawierać wiele konfiguracji tego samego pola. Na przykład, wykluczenie indeksowania pojedynczego pola i zasada TTL w tym samym polu są liczone jako 1 konfiguracja pola w ramach limitu. |
Eksport/Import
Obowiązują te limity dotyczące zarządzanych operacji importowania i eksportowania:
| Limit | Szczegóły |
|---|---|
| Maksymalna łączna liczba żądań eksportu i importu dozwolonych na minutę w projekcie | 20 |
| Maksymalna liczba jednoczesnych eksportów i importów | 50 |
| Maksymalna liczba filtrów identyfikatorów kolekcji w żądaniach eksportu i importu | 100 |
Reguły zabezpieczeń
| Limit | Szczegóły |
|---|---|
Maksymalna liczba wywołań exists(), get() i getAfter() na żądanie |
Przekroczenie któregokolwiek z tych limitów spowoduje wyświetlenie błędu odmowy dostępu. Niektóre wywołania dostępu do dokumentu mogą być buforowane, i buforowane wywołania nie są wliczane do limitów. |
Maksymalna głębokość zagnieżdżonego stwierdzenia match |
10 |
Maksymalna długość ścieżki w segmentach ścieżki dozwolona w zbiorze zagnieżdżonych
match stwierdzeń |
100 |
Maksymalna liczba zmiennych przechwytywania ścieżki dozwolona w zbiorze zagnieżdżonych
match stwierdzeń |
20 |
| Maksymalna głębokość wywołania funkcji | 20 |
| Maksymalna liczba argumentów funkcji | 7 |
Maksymalna liczba powiązań zmiennych let na funkcję |
10 |
| Maksymalna liczba rekurencyjnych lub cyklicznych wywołań funkcji | 0 (niedozwolone) |
| Maksymalna liczba wyrażeń ocenianych na żądanie | 1000 |
| Maksymalny rozmiar zbioru reguł | Zbiory reguł muszą spełniać 2 limity rozmiaru:
|
Zarządzanie wydatkami
Aby uniknąć nieoczekiwanych opłat na rachunku, ustaw miesięczne budżety i alerty.
Ustawianie budżetu miesięcznego
Aby śledzić koszty Cloud Firestore, utwórz budżet miesięczny w Google Cloud konsoli. Budżety nie ograniczają wykorzystania, ale możesz ustawić alerty, które będą Cię powiadamiać, gdy zbliżasz się do planowanych kosztów miesięcznych lub je przekraczasz.
Aby ustawić budżet, otwórz sekcję Płatności w konsoli Google Cloud i utwórz budżet na koncie Cloud Billing. Możesz użyć domyślnych ustawień alertów lub zmodyfikować je tak, aby powiadomienia były wysyłane przy różnych procentach budżetu miesięcznego.
Dowiedz się więcej o konfigurowaniu budżetów i alertów dotyczących budżetu.