Tryb natywny: limity

Na tej stronie podajemy limity żądań i limity wersji Enterprise w przypadku Cloud Firestore w trybie natywnym.

Wykorzystanie na poziomie bezpłatnym

Cloud Firestore w trybie natywnym oferuje poziom bezpłatny, który umożliwia rozpoczęcie korzystania z tej usługi bezpłatnie. W poniższej tabeli znajdziesz limity poziomu bezpłatnego.

Limity poziomu bezpłatnego są stosowane codziennie i resetowane o północy czasu pacyficznego.

Poziom bezpłatny dotyczy tylko 1 Cloud Firestore bazy danych na projekt. Pierwsza baza danych utworzona w projekcie bez bazy danych na poziomie bezpłatnym będzie korzystać z tego poziomu. Jeśli baza danych z zastosowanym poziomem bezpłatnym zostanie usunięta, następna utworzona baza danych będzie korzystać z tego poziomu.

Poziom bezpłatny Limit
Przechowywane dane 1 GiB
Odczyt jednostek 50 000 dziennie
Jednostki aktualizacji w czasie rzeczywistym 50 000 dziennie
Zapis jednostek 40 000 dziennie
Przesyłanie danych na zewnątrz 10 GiB miesięcznie

Limity standardowe

W poniższych tabelach znajdziesz limity, które obowiązują w przypadku Cloud Firestore w trybie natywnym. O ile nie wskazano 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
  • Muszą to być prawidłowe znaki UTF-8.
  • Nie mogą być dłuższe niż 1500 bajtów.
  • Nie mogą zawierać ukośnika (/).
  • Nie mogą składać się wyłącznie z pojedynczej kropki (.) ani podwójnych kropek (..).
  • Nie mogą pasować do wyrażenia regularnego __.*__.
Maksymalna głębokość podkolekcji 100
Ograniczenia dotyczące identyfikatorów dokumentów
  • Muszą to być prawidłowe znaki UTF-8.
  • Nie mogą być dłuższe niż 1500 bajtów.
  • Nie mogą zawierać ukośnika (/).
  • Nie mogą składać się wyłącznie z pojedynczej kropki (.) ani podwójnych kropek (..).
  • Nie mogą pasować do wyrażenia regularnego __.*__.
  • Jeśli importujesz encje Datastore do bazy danych Firestore, numeryczne identyfikatory encji są udostępniane jako __id[0-9]+__.
Maksymalny rozmiar nazwy dokumentu 6 KiB
Maksymalny rozmiar dokumentu 1 MiB (1 048 576 bajtów)
Ograniczenia dotyczące nazw pól
  • Muszą to być prawidłowe znaki UTF-8.
  • Nie mogą pasować do wyrażenia regularnego __.*__.
Maksymalny rozmiar nazwy pola 1500 bajtów
Ograniczenia dotyczące ścieżek pól
  • Nazwy pól muszą być oddzielone pojedynczą kropką (.)
  • Można je przekazywać jako ciąg segmentów oddzielonych kropkami (.), gdzie każdy segment jest prostą nazwą pola lub nazwą pola w cudzysłowie (zdefiniowaną poniżej).
Prosta nazwa pola to nazwa, która spełnia wszystkie te warunki:
  • Zawiera tylko znaki a-z, A-Z, 0-9, i podkreślenie (_).
  • Nie zaczyna się od 0-9.
Nazwa pola w cudzysłowie zaczyna się i kończy znakiem grawisu (`). 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 (\). Dla wygody możesz unikać nazw pól w cudzysłowie, przekazując ś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:


{
  nested_map: {         #depth 1
    nested_array: [     #depth 2
      {
        foo: "bar"      #depth 3
      }
    ]
  }
}
      

Zapisy i transakcje

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

Limit Szczegóły
Maksymalna liczba indeksów w bazie danych

Maksymalna liczba wpisów indeksu dla każdego dokumentu

40 000

Maksymalna liczba pól w indeksie 100
Maksymalny rozmiar wpisu indeksu

7,5 KiB

Maksymalna suma rozmiarów wpisów indeksu dokumentu

8 MiB

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

W przypadku zarządzanych operacji importu i eksportu obowiązują te limity:

Limit Szczegóły
Maksymalna łączna liczba żądań eksportu i importu dozwolona na minutę w projekcie 20
Maksymalna liczba jednoczesnych eksportów i importów 50
Maksymalna liczba filtrów identyfikatorów kolekcji w przypadku żądań eksportu i importu 100

Reguły zabezpieczeń

Limit Szczegóły
Maksymalna liczba wywołań exists(), get() i getAfter() na żądanie
  • 10 w przypadku żądań dotyczących pojedynczych dokumentów i żądań zapytań.
  • 20 w przypadku odczytów wielu dokumentów, transakcji, i zapisów zbiorczych. Poprzedni limit wynoszący 10 obowiązuje też w przypadku każdej operacji.

    Załóżmy na przykład, że tworzysz zbiorcze żądanie zapisu z 3 operacjami zapisu i że reguły zabezpieczeń używają 2 wywołań dostępu do dokumentu , aby zweryfikować każdy zapis. W takim przypadku każdy zapis wykorzystuje 2 z 10 wywołań dostępu, a zbiorcze żądanie zapisu wykorzystuje 6 z 20 wywołań dostępu.

Przekroczenie któregokolwiek z tych limitów powoduje błąd odmowy dostępu.

Niektóre wywołania dostępu do dokumentu mogą być buforowane, a wywołania buforowane 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:
  • Limit 256 KB na rozmiar tekstu zbioru reguł opublikowanego w konsoli Firebase lub w interfejsie wiersza poleceń za pomocą polecenia firebase deploy.
  • Limit 250 KB na rozmiar skompilowanego zbioru reguł, który powstaje gdy Firebase przetwarza źródło i aktywuje je w backendzie.