Indeks
Firestore
(interfejs)AggregationResult
(komunikat)ArrayValue
(komunikat)BatchGetDocumentsRequest
(komunikat)BatchGetDocumentsResponse
(komunikat)BatchWriteRequest
(komunikat)BatchWriteResponse
(komunikat)BeginTransactionRequest
(komunikat)BeginTransactionResponse
(komunikat)BitSequence
(komunikat)BloomFilter
(komunikat)CommitRequest
(komunikat)CommitResponse
(komunikat)CreateDocumentRequest
(komunikat)Cursor
(komunikat)DeleteDocumentRequest
(komunikat)Document
(komunikat)DocumentChange
(komunikat)DocumentDelete
(komunikat)DocumentMask
(komunikat)DocumentRemove
(komunikat)DocumentTransform
(komunikat)DocumentTransform.FieldTransform
(komunikat)DocumentTransform.FieldTransform.ServerValue
(wyliczenie)ExecutionStats
(komunikat)ExistenceFilter
(komunikat)ExplainMetrics
(komunikat)ExplainOptions
(komunikat)GetDocumentRequest
(komunikat)ListCollectionIdsRequest
(komunikat)ListCollectionIdsResponse
(komunikat)ListDocumentsRequest
(komunikat)ListDocumentsResponse
(komunikat)ListenRequest
(komunikat)ListenResponse
(komunikat)MapValue
(komunikat)PartitionQueryRequest
(komunikat)PartitionQueryResponse
(komunikat)PlanSummary
(komunikat)Precondition
(komunikat)RollbackRequest
(komunikat)RunAggregationQueryRequest
(komunikat)RunAggregationQueryResponse
(komunikat)RunQueryRequest
(komunikat)RunQueryResponse
(komunikat)StructuredAggregationQuery
(komunikat)StructuredAggregationQuery.Aggregation
(komunikat)StructuredAggregationQuery.Aggregation.Avg
(komunikat)StructuredAggregationQuery.Aggregation.Count
(komunikat)StructuredAggregationQuery.Aggregation.Sum
(komunikat)StructuredQuery
(komunikat)StructuredQuery.CollectionSelector
(komunikat)StructuredQuery.CompositeFilter
(komunikat)StructuredQuery.CompositeFilter.Operator
(wyliczenie)StructuredQuery.Direction
(wyliczenie)StructuredQuery.FieldFilter
(komunikat)StructuredQuery.FieldFilter.Operator
(wyliczenie)StructuredQuery.FieldReference
(komunikat)StructuredQuery.Filter
(komunikat)StructuredQuery.FindNearest
(komunikat)StructuredQuery.FindNearest.DistanceMeasure
(wyliczenie)StructuredQuery.Order
(komunikat)StructuredQuery.Projection
(komunikat)StructuredQuery.UnaryFilter
(komunikat)StructuredQuery.UnaryFilter.Operator
(wyliczenie)Target
(komunikat)Target.DocumentsTarget
(komunikat)Target.QueryTarget
(komunikat)TargetChange
(komunikat)TargetChange.TargetChangeType
(wyliczenie)TransactionOptions
(komunikat)TransactionOptions.ReadOnly
(komunikat)TransactionOptions.ReadWrite
(komunikat)UpdateDocumentRequest
(komunikat)Value
(komunikat)Write
(komunikat)WriteRequest
(komunikat)WriteResponse
(komunikat)WriteResult
(komunikat)
Firestore
Usługa Cloud Firestore.
Cloud Firestore to szybka, w pełni zarządzana, bezserwerowa, chmurowa baza danych dokumentów NoSQL, która upraszcza przechowywanie i synchronizowanie danych oraz wykonywanie na nich zapytań z aplikacji mobilnych, internetowych i aplikacji IoT na globalną skalę. Biblioteki klienta umożliwiają synchronizację na żywo i pomoc w trybie offline, a funkcje zabezpieczeń oraz integracje z Firebase i Google Cloud Platform przyspieszają tworzenie aplikacji naprawdę bezserwerowych.
BatchGetDocuments |
---|
Pobiera wiele dokumentów. Nie ma gwarancji, że dokumenty zwrócone za pomocą tej metody zostaną zwrócone w kolejności, w jakiej je żądano.
|
Tworzenie wsadowego |
---|
Stosuje grupę operacji zapisu. Metoda BatchWrite nie stosuje operacji zapisu atomowo i może zastosować je w kolejności. Metoda nie pozwala na więcej niż jeden zapis na dokument. Każdy zapis jest sprawdzany lub kończy się niepowodzeniem niezależnie. Informacje o stanie powodzenia każdego zapisu znajdziesz w sekcji Jeśli potrzebujesz atomowego zestawu zapisów, użyj zamiast tego
|
Rozpoczęcie transakcji |
---|
rozpoczyna nową transakcję;
|
Zatwierdzenie |
---|
Potwierdza transakcję i opcjonalnie aktualizują dokumenty.
|
Utwórz dokument |
---|
Tworzy nowy dokument.
|
Usuń dokument |
---|
Usuwa dokument.
|
GetDocument |
---|
Pobiera jeden dokument.
|
Identyfikatory kolekcji list |
---|
Zawiera listę wszystkich identyfikatorów kolekcji pod dokumentem.
|
Wyświetlanie listy dokumentów |
---|
Wyświetla listę dokumentów.
|
Posłuchaj |
---|
Wykrywa zmiany. Ta metoda jest dostępna tylko przez gRPC lub WebChannel (ale nie REST).
|
Zapytanie partycjonowania |
---|
Partycjonuje zapytanie, zwracając kursory partycji, których można używać do równoległego uruchamiania zapytania. Zwrócone kursory partycji to punkty podziału, których RunQuery może używać jako punktów początkowych i końcowych wyników zapytania.
|
Przywróć |
---|
Wycofuje transakcję.
|
Uruchomienie zapytania agregacji |
---|
Uruchamia zapytanie agregacji. Zamiast generować wyniki Ogólny przykład:
|
Uruchom zapytanie |
---|
Uruchamia zapytanie.
|
ZaktualizujDokument |
---|
Aktualizuje lub wstawia dokument.
|
Zapis |
---|
Strumieniuje po kolei partie aktualizacji i usunięć dokumentów. Ta metoda jest dostępna tylko przez gRPC lub WebChannel (ale nie REST).
|
Wynik agregacji
Wynik pojedynczego zasobnika z zapytania agregacji Firestore.
Klucze funkcji aggregate_fields
są takie same w przypadku wszystkich wyników w zapytaniu agregowanym. W odróżnieniu od zapytań dokumentów, w których przypadku każdy wynik może zawierać inne pola.
Pola | |
---|---|
aggregate_fields |
Wynik funkcji agregacji, np. Klucz to element |
ArrayValue
Wartość tablicowa.
Pola | |
---|---|
values[] |
Wartości w tablicy. |
BatchGetDocumentsRequest
Prośba dotycząca usługi Firestore.BatchGetDocuments
.
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
documents[] |
Nazwy dokumentów do pobrania. W formacie: |
mask |
Pola do zwrócenia. Jeśli zasada nie jest skonfigurowana, zwraca wszystkie pola. Jeśli dokument ma pole, którego nie ma w tej masce, nie zostanie ono zwrócone w odpowiedzi. |
Pole sumy consistency_selector . Tryb spójności tej transakcji. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
transaction |
Odczytywanie dokumentów w ramach transakcji. |
new_transaction |
Rozpoczyna nową transakcję i odczytuje dokumenty. Domyślnie jest to transakcja tylko do odczytu. Nowy identyfikator transakcji zostanie zwrócony jako pierwsza odpowiedź w strumieniu. |
read_time |
Odczytuje dokumenty w takiej postaci, w jakiej były w danym momencie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Odpowiedź BatchGetDocuments
Przesłana odpowiedź na zapytanie Firestore.BatchGetDocuments
.
Pola | |
---|---|
transaction |
Transakcja rozpoczęta w ramach tego żądania. Zostanie ustawiona tylko w pierwszej odpowiedzi i tylko wtedy, gdy w żądaniu ustawiono atrybut |
read_time |
Czas odczytu dokumentu. Liczba ta może rosnąć monotycznie. W tym przypadku w tym przypadku wcześniejsze dokumenty w strumieniu wyników nie zmienią się między czasem odczytu a tym. |
Pole sumy result . Jeden wynik. To pole może być puste, jeśli serwer tylko zwraca transakcję. result może mieć tylko jedną z tych wartości: |
|
found |
Dokument, o który poproszono. |
missing |
Nazwa dokumentu, która została wysłana, ale nie istnieje. W formacie: |
BatchWriteRequest
Prośba dotycząca usługi Firestore.BatchWrite
.
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
writes[] |
Zapisy, które mają zostać zastosowane. Metoda nie stosuje atomowych zapisów i nie gwarantuje kolejności. Każdy zapis jest sprawdzany lub kończy się niepowodzeniem niezależnie. Nie możesz zapisać w tym samym dokumencie więcej niż raz na jedno żądanie. |
labels |
Etykiety powiązane z tym zapisem wsadowym. |
BatchWriteResponse
Odpowiedź od użytkownika Firestore.BatchWrite
.
Pola | |
---|---|
write_results[] |
Wynik zastosowania zapisów. Ten wynik i-tego zapisu odpowiada i-temu zapisowi w żądaniu. |
status[] |
Stan zastosowania zapisów. Ten stan i-tego zapisu odpowiada i-temu zapisowi w żądaniu. |
StartTransactionRequest
Prośba dotycząca usługi Firestore.BeginTransaction
.
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
options |
Opcje transakcji. Domyślnie jest to transakcja do odczytu i zapisu. |
StartTransactionResponse
Odpowiedź dla: Firestore.BeginTransaction
.
Pola | |
---|---|
transaction |
Transakcja, która została rozpoczęta. |
BitSequence
Sekwencja bitów zakodowana w tablicy bajtów.
Każdy bajt w tablicy bajtów bitmap
zawiera 8 bitów sekwencji. Jedynym wyjątkiem jest ostatni bajt, który może przechowywać maksymalnie 8 bitów. Pole padding
określa liczbę bitów ostatniego bajtu, które mają być ignorowane jako „ dopełnienie”. Wartości wypełnienia bity są nieokreślone i muszą być ignorowane.
Aby pobrać pierwszy bit, bit 0, oblicz: (bitmap[0] & 0x01) != 0
. Aby pobrać drugi bit, bit 1, oblicz: (bitmap[0] & 0x02) != 0
. Aby pobrać trzeci bit (bit 2), oblicz: (bitmap[0] & 0x04) != 0
. Aby pobrać czwarty bit (bit 3), obliczenie: (bitmap[0] & 0x08) != 0
. Aby pobrać bit n, oblicz: (bitmap[n / 8] & (0x01 << (n % 8))) != 0
.
Rozmiar z BitSequence
(liczby bitów, które zawiera) oblicza się według tego wzoru: (bitmap.length * 8) - padding
.
Pola | |
---|---|
bitmap |
Bajty, które kodują sekwencję bitów. Jego długość może wynosić zero. |
padding |
Liczba bitów ostatniego bajtu w argumencie |
Filtr BloomFiltr
Filtr kwitnienia (https://en.wikipedia.org/wiki/Bloom_filter).
Filtr kwitnienia haszuje wpisy za pomocą MD5 i traktuje wynikowy 128-bitowy hasz jako 2 różne 64-bitowe wartości skrótu, interpretowane jako nieoznaczone liczby całkowite z użyciem kodowania uzupełniającego 2.
Te 2 wartości skrótu, o nazwach h1
i h2
, są następnie używane do obliczania wartości skrótu hash_count
za pomocą wzoru, zaczynając od i=0
:
h(i) = h1 + (i * h2)
Otrzymane wartości są następnie pobierane modulo z liczbą bitów w filtrze rozkwitu, aby pobrać elementy filtra rozkwitu do przetestowania dla danego wpisu.
Pola | |
---|---|
bits |
Dane filtra kwitnienia. |
hash_count |
Liczba haszy używanych przez algorytm. |
CommitRequest
Prośba dotycząca usługi Firestore.Commit
.
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
writes[] |
Zapisy, które mają zostać zastosowane. Zawsze wykonywany atomowo i w określonej kolejności. |
transaction |
Jeśli jest ustawione, stosuje wszystkie zapisy w tej transakcji i je zatwierdza. |
Odpowiedź zatwierdzenia
Odpowiedź dla: Firestore.Commit
.
Pola | |
---|---|
write_results[] |
Wynik zastosowania zapisów. Ten wynik i-tego zapisu odpowiada i-temu zapisowi w żądaniu. |
commit_time |
Czas realizacji zatwierdzenia. Każdy odczyt o wartości |
CreateDocumentRequest
Prośba dotycząca usługi Firestore.CreateDocument
.
Pola | |
---|---|
parent |
Wymagane. Zasób nadrzędny. Na przykład: |
collection_id |
Wymagane. Identyfikator kolekcji względem |
document_id |
Przypisany przez klienta identyfikator dokumentu, który ma być używany w tym dokumencie. Opcjonalnie. Jeśli go nie podasz, usługa otrzyma identyfikator. |
document |
Wymagane. Dokument do utworzenia. Pole |
mask |
Pola do zwrócenia. Jeśli zasada nie jest skonfigurowana, zwraca wszystkie pola. Jeśli dokument zawiera pole, którego nie ma w tej masce, nie zostanie ono zwrócone w odpowiedzi. |
Kursor
Pozycja w zestawie wyników zapytania.
Pola | |
---|---|
values[] |
Wartości reprezentujące pozycję w kolejności, w jakiej występują w kolejności klauzuli zapytania. Może zawierać mniej wartości niż określono w klauzuli kolejności. |
before |
Określa, czy pozycja znajduje się tuż przed podanymi wartościami lub tuż po nich, zależnie od kolejności sortowania zdefiniowanej przez zapytanie. |
DeleteDocumentRequest
Prośba dotycząca usługi Firestore.DeleteDocument
.
Pola | |
---|---|
name |
Wymagane. Nazwa zasobu dokumentu do usunięcia. W formacie: |
current_document |
Opcjonalny warunek wstępny dotyczący dokumentu. Jeśli ta wartość zostanie ustawiona, a dokument docelowy nie spełni tego żądania, żądanie zakończy się niepowodzeniem. |
Dokument
Dokument Firestore.
Maksymalny rozmiar to 1 MiB–4 bajty.
Pola | |
---|---|
name |
Nazwa zasobu dokumentu, na przykład |
fields |
|
create_time |
Tylko dane wyjściowe. Czas utworzenia dokumentu. Ta wartość zwiększa się monotonicznie, gdy dokument jest usuwany, a następnie odtworzony. Można je też porównywać z wartościami z innych dokumentów i elementem |
update_time |
Tylko dane wyjściowe. Czas ostatniej modyfikacji dokumentu. Początkowo ta wartość jest ustawiona na |
Zmiana dokumentu
Element Document
został zmieniony.
Może to być wynikiem wielu writes
, w tym usunięcia, które ostatecznie spowodowało utworzenie nowej wartości w polu Document
.
W przypadku tej samej zmiany logicznej może zostać zwróconych wiele wiadomości DocumentChange
, jeśli ma to wpływ na wiele celów.
Pola | |
---|---|
document |
Nowy stan Jeśli ustawiona jest wartość |
target_ids[] |
Zestaw identyfikatorów celów, które pasują do tego dokumentu. |
removed_target_ids[] |
Zestaw identyfikatorów celów, które nie pasują już do tego dokumentu. |
Usuwanie dokumentu
Element Document
został usunięty.
Może to być wynikiem wielu writes
(w tym aktualizacji), z których ostatni usunął element Document
.
W przypadku tego samego logicznego usunięcia może zostać zwróconych wiele wiadomości DocumentDelete
, jeśli problem dotyczy wielu celów.
Pola | |
---|---|
document |
Nazwa zasobu usuniętego obiektu |
removed_target_ids[] |
Zestaw identyfikatorów wartości docelowych, które wcześniej pasowały do tej encji. |
read_time |
Sygnatura czasowa odczytu, w którym zaobserwowano usunięcie. Większe lub równe |
DocumentMask (Maska dokumentu)
Zbiór ścieżek pól w dokumencie. Służy do ograniczania operacji pobierania lub aktualizowania dokumentu do podzbioru jego pól. Różni się ona od standardowych masek pól, ponieważ zawsze ma zakres ograniczony do pola Document
i uwzględnia dynamiczny charakter obiektu Value
.
Pola | |
---|---|
field_paths[] |
Lista ścieżek pól w masce. Informacje o składni ścieżek pól znajdziesz w |
Usuwanie dokumentu
Element Document
został usunięty z widoku celów.
Wysyłane, jeśli dokument nie jest już odpowiedni dla elementu docelowego i jest niewidoczny. Może być wysyłana zamiast DocumentDelete lub DocumentChange, jeśli serwer nie może wysłać nowej wartości dokumentu.
W przypadku tego samego logicznego zapisu lub usunięcia może zostać zwróconych wiele wiadomości DocumentRemove
.
Pola | |
---|---|
document |
Nazwa zasobu elementu |
removed_target_ids[] |
Zestaw identyfikatorów celów, które wcześniej pasowały do tego dokumentu. |
read_time |
Sygnatura czasowa odczytu, w której zaobserwowano usunięcie. Większe lub równe |
DocumentTransform
Przekształcenie dokumentu.
Pola | |
---|---|
document |
Nazwa dokumentu do przekształcenia. |
field_transforms[] |
Lista przekształceń, które mają zostać zastosowane do pól dokumentu w określonej kolejności. To pole nie może być puste. |
Przekształcenie pola
Przekształcenie pola dokumentu.
Pola | |
---|---|
field_path |
Ścieżka pola. Informacje o składni ścieżek pól znajdziesz na |
Pole sumy transform_type . Przekształcenie, które zostanie zastosowane w polu. transform_type może mieć tylko jedną z tych wartości: |
|
set_to_server_value |
Ustawia w polu podaną wartość serwera. |
increment |
Dodaje podaną wartość do bieżącej wartości pola. Musi to być liczba całkowita lub liczba zmiennoprzecinkowa. Jeśli pole nie jest liczbą całkowitą ani zmiennoprzecinkową albo jeśli pole jeszcze nie istnieje, przekształcenie ustawi w polu podaną wartość. Jeśli jedna z podanych wartości lub obecna wartość pola to wartości zmiennoprzecinkowe, obie te wartości zostaną zinterpretowane jako liczby zmiennoprzecinkowe. Podwójna arytmetyka i reprezentacja wartości podwójnej precyzji są zgodne ze standardem IEEE 754. Jeśli występuje dodatnie/ujemne przekroczenie liczby całkowitej, pole jest przekształcane na największą dodatnią/ujemną liczbę całkowitą. |
maximum |
Ustawia maksymalną wartość pola na jego bieżącą i podaną wartość. Musi to być liczba całkowita lub liczba zmiennoprzecinkowa. Jeśli pole nie jest liczbą całkowitą ani zmiennoprzecinkową albo jeśli pole jeszcze nie istnieje, przekształcenie ustawi w polu podaną wartość. W przypadku zastosowania maksymalnej operacji, w której pole i wartość wejściowa są różnych typów (tzn. jedna jest liczbą całkowitą, a druga to podwójna), pole przyjmuje typ większego operandu. Jeśli operandy są równoważne (np. 3 i 3.0), pole nie zmienia się. 0, 0,0 i -0,0 to zero. Maksymalna wartość środków przedpłaconych i 0 wartości wejściowej to zawsze wartość przedpłacona. Maksymalna wartość liczbowa x i NaN to NaN. |
minimum |
Ustawia w polu minimalną wartość bieżącej i podaną wartość. Musi to być liczba całkowita lub liczba zmiennoprzecinkowa. Jeśli pole nie jest liczbą całkowitą ani zmiennoprzecinkową albo jeśli pole jeszcze nie istnieje, przekształcenie ustawi w polu wartość wejściową. Jeśli stosowana jest operacja minimalna, w której pole i wartość wejściowa są różnych typów (tzn. jedna jest liczbą całkowitą, a drugą jest liczbą podwójną), pole przyjmuje typ mniejszego operandu. Jeśli operandy są równoważne (np. 3 i 3.0), pole nie zmienia się. 0, 0,0 i -0,0 to zero. Najniższa wartość przedpłaconej i 0 wejściowa to zawsze wartość przedpłacona. Minimalną wartością każdej wartości liczbowej x i NaN jest NaN. |
append_missing_elements |
Dołącz podane elementy w kolejności, jeśli nie występują jeszcze w bieżącej wartości pola. Jeśli pole nie jest tablicą lub jeśli pole jeszcze nie istnieje, najpierw ustawiane jest puste pole. Liczby równoważne różnych typów (np. 3L i 3,0) są uznawane za równe podczas sprawdzania, czy brakuje wartości. NaN jest równa NaN, a Null jest równa null. Jeśli dane wejściowe zawierają kilka równoważnych wartości, brana jest pod uwagę tylko pierwsza z nich. Powiązany wynik przekształcenia będzie miał wartość null. |
remove_all_from_array |
Usuń z tablicy w polu wszystkie podane elementy. Jeśli pole nie jest tablicą lub jeśli pole jeszcze nie istnieje, jest ustawione na pustą tablica. Przy podejmowaniu decyzji o usunięciu elementu uznaje się, że liczby równoważne różnych typów (np. 3L i 3.0). NaN jest równa NaN, a Null jest równa null. Spowoduje to usunięcie wszystkich równoważnych wartości, jeśli istnieją duplikaty. Powiązany wynik przekształcenia będzie miał wartość null. |
Wartość serwera
Wartość obliczana przez serwer.
Wartości w polu enum | |
---|---|
SERVER_VALUE_UNSPECIFIED |
Nie określono. Tej wartości nie można używać. |
REQUEST_TIME |
Godzina, w której serwer przetworzył żądanie, z dokładnością do milisekund. Jeśli użyjesz go w wielu polach (tych samych lub różnych dokumentach) w transakcji, wszystkie pola będą miały tę samą sygnaturę czasową serwera. |
Statystyki wykonania
Statystyki wykonania dla zapytania.
Pola | |
---|---|
results_returned |
Łączna liczba zwróconych wyników, w tym dokumentów, prognoz, wyników agregacji i kluczy. |
execution_duration |
Całkowity czas wykonania zapytania w backendzie. |
read_operations |
Łączna liczba płatnych operacji odczytu. |
debug_stats |
Debugowanie statystyk wykonania zapytania. Pamiętaj, że statystyki debugowania mogą się zmieniać wraz z rozwojem Firestore. Może to obejmować: { "indexes_entries_scanned": "1000", "documents_scanned": "20", "billing_details" : { "documents_billable": "20", "index_entries_billable": "1000", "min_query_cost": "0" } |
Filtr ExistenceFilter
Skrót wszystkich dokumentów pasujących do danego miejsca docelowego.
Pola | |
---|---|
target_id |
Identyfikator celu, do którego ma zastosowanie ten filtr. |
count |
Łączna liczba dokumentów, które pasują do: Jeśli liczba pasujących dokumentów na koncie klienta różni się od liczby pasujących dokumentów, klient musi ręcznie określić, które dokumenty nie pasują już do wartości docelowej. Aby ułatwić sobie to ustalenie, klient może użyć filtra kwitnienia |
unchanged_names |
Filtr rozkwitu, który pomimo swojej nazwy zawiera kodowanie bajtowe UTF-8 nazw zasobów WSZYSTKICH dokumentów pasujących do reguły Ten filtr rozkwitu może zostać pominięty przez serwer według własnego uznania, na przykład w przypadku stwierdzenia, że klient nie będzie go używać, lub gdy obliczenia i transmisje są zbyt kosztowne pod względem obliczeń. Klienci muszą właściwie radzić sobie z brakiem tego pola, wracając do logiki użytej przed jego stworzeniem. czyli ponownie dodaj środowisko docelowe bez tokena wznowienia, aby sprawdzić, które dokumenty w pamięci podręcznej klienta są niezsynchronizowane. |
ExplainMetrics
Przedstaw dane dotyczące zapytania.
Pola | |
---|---|
plan_summary |
Informacje o fazie planowania dla zapytania. |
execution_stats |
Zbiorcze statystyki z wykonania zapytania. Występuje tylko wtedy, gdy zasada |
ExplainOptions
Wyjaśnij opcje zapytania.
Pola | |
---|---|
analyze |
Opcjonalnie. Określa, czy to zapytanie ma zostać wykonane. Jeśli wartość domyślna to fałsz (domyślnie), zapytanie zostanie zaplanowane i zwróci tylko dane z etapów planowania. Jeśli wybrano opcję prawda, zapytanie zostanie zaplanowane i wykonane, tak aby zwracały pełne wyniki zapytania wraz ze wskaźnikami dotyczącymi etapu planowania i wykonania. |
GetDocumentRequest
Prośba dotycząca usługi Firestore.GetDocument
.
Pola | |
---|---|
name |
Wymagane. Nazwa zasobu dokumentu do pobrania. W formacie: |
mask |
Pola do zwrócenia. Jeśli zasada nie jest skonfigurowana, zwraca wszystkie pola. Jeśli dokument zawiera pole, którego nie ma w tej masce, nie zostanie ono zwrócone w odpowiedzi. |
Pole sumy consistency_selector . Tryb spójności tej transakcji. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
transaction |
Odczytywanie dokumentu w ramach transakcji. |
read_time |
Odczytuje wersję dokumentu w danym momencie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Żądanie dotyczące identyfikatorów kolekcji
Prośba dotycząca usługi Firestore.ListCollectionIds
.
Pola | |
---|---|
parent |
Wymagane. Dokument nadrzędny. W formacie: |
page_size |
Maksymalna liczba wyników do zwrócenia. |
page_token |
Token strony. Wymagana jest wartość z zakresu od |
Pole sumy consistency_selector . Tryb spójności dla tego żądania. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
read_time |
Odczytuje dokumenty w takiej postaci, w jakiej były w danym momencie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Odpowiedź identyfikatora kolekcji
Odpowiedź od użytkownika Firestore.ListCollectionIds
.
Pola | |
---|---|
collection_ids[] |
Identyfikatory kolekcji. |
next_page_token |
Token strony, który może służyć do kontynuowania listy. |
Wyświetlanie listy dokumentów
Prośba dotycząca usługi Firestore.ListDocuments
.
Pola | |
---|---|
parent |
Wymagane. Nazwa zasobu nadrzędnego. W formacie: Na przykład: |
collection_id |
Opcjonalnie. Identyfikator kolekcji względem Na przykład: Jest to opcjonalne. Jeśli nie zostanie podany, Firestore będzie wyświetlać dokumenty ze wszystkich kolekcji w ramach podanego |
page_size |
Opcjonalnie. Maksymalna liczba dokumentów do zwrócenia w jednej odpowiedzi. Firestore może zwrócić mniej niż ta wartość. |
page_token |
Opcjonalnie. Token strony otrzymany z poprzedniej odpowiedzi Podaj go, aby pobrać kolejną stronę. Podczas dzielenia na strony wszystkie pozostałe parametry (z wyjątkiem |
order_by |
Opcjonalnie. Opcjonalna kolejność zwracanych dokumentów. Na przykład: Powiela to pole |
mask |
Opcjonalnie. Pola do zwrócenia. Jeśli zasada nie jest skonfigurowana, zwraca wszystkie pola. Jeśli dokument ma pole, którego nie ma w tej masce, nie zostanie ono zwrócone w odpowiedzi. |
show_missing |
Czy na liście powinny być widoczne brakujące dokumenty. Brakuje dokumentu, jeśli nie istnieje, ale znajdują się pod nim umieszczone dokumenty podrzędne. Jeśli ma wartość prawda, takie brakujące dokumenty są zwracane z kluczem, ale nie mają ustawionych pól oraz pól Żądania z |
Pole sumy consistency_selector . Tryb spójności tej transakcji. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
transaction |
Wykonaj odczyt w ramach już aktywnej transakcji. |
read_time |
Wykonaj odczyt w podanym czasie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Odpowiedź ListDocumentsResponse
Odpowiedź dla: Firestore.ListDocuments
.
Pola | |
---|---|
documents[] |
Znalezione dokumenty. |
next_page_token |
Token umożliwiający pobranie następnej strony dokumentów. Jeśli pominiesz to pole, nie będzie kolejnych stron. |
Żądanie nasłuchiwania
Prośba dotycząca: Firestore.Listen
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
labels |
Etykiety powiązane z tą zmianą docelową. |
Pole sumy target_change . Zmienia się obsługiwana wartość docelowa. target_change może mieć tylko jedną z tych wartości: |
|
add_target |
Cel do dodania do tego strumienia. |
remove_target |
Identyfikator elementu docelowego do usunięcia z tego strumienia. |
Odsłuchaj odpowiedź
Odpowiedź dla: Firestore.Listen
.
Pola | |
---|---|
Pole sumy response_type . Obsługiwane odpowiedzi. response_type może mieć tylko jedną z tych wartości: |
|
target_change |
Cele uległy zmianie. |
document_change |
Element |
document_delete |
Element |
document_remove |
Wymiar |
filter |
Filtr, który ma być stosowany do zbioru dokumentów zwróconych wcześniej w przypadku danego miejsca docelowego. Zwracany, gdy dokumenty mogły zostać usunięte z danego miejsca docelowego, ale dokładne dokumenty są nieznane. |
Wartość mapy
Wartość mapy.
Pola | |
---|---|
fields |
Pola mapy. Klawisze mapy reprezentują nazwy pól. Nazwy pól pasujące do wyrażenia regularnego |
Żądanie partycji
Prośba dotycząca usługi Firestore.PartitionQuery
.
Pola | |
---|---|
parent |
Wymagane. Nazwa zasobu nadrzędnego. W formacie: |
partition_count |
Żądana maksymalna liczba punktów partycji. Partycje mogą być zwracane na wielu stronach wyników. Liczba musi być liczbą dodatnią. Rzeczywista liczba zwróconych partycji może być mniejsza. Na przykład można ustawić 1 mniej niż liczba równoległych zapytań do wykonania lub podczas uruchamiania zadania potoku danych wartość ta może być o 1 mniej niż liczba dostępnych instancji roboczych lub instancji obliczeniowych. |
page_token |
Wartość Na przykład 2 kolejne wywołania z użyciem parametru page_token mogą zwrócić:
Aby uzyskać pełny zestaw wyników uporządkowany według wyników zapytania dostarczonego w narzędziu PartitionQuery, musisz je scalać: kursor A, kursor B, kursor M, kursor Q, kursor U, kursor W. |
page_size |
Maksymalna liczba partycji do zwrócenia w ramach tego wywołania (podlega ona zasadom Na przykład jeśli |
Pole sumy query_type . Zapytanie do partycjonowania. query_type może mieć tylko jedną z tych wartości: |
|
structured_query |
Uporządkowane zapytanie. Zapytanie musi określać kolekcję ze wszystkimi elementami podrzędnymi i być uporządkowane rosnąco według nazwy. Inne filtry, kolejność według kolejności, granice, przesunięcia ani kursory początku/końca nie są obsługiwane. |
Pole sumy consistency_selector . Tryb spójności dla tego żądania. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
read_time |
Odczytuje dokumenty w takiej postaci, w jakiej były w danym momencie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Odpowiedź na zapytanie partycji
Odpowiedź dla: Firestore.PartitionQuery
.
Pola | |
---|---|
partitions[] |
Wyniki partycjonowania. Każda partycja jest punktem podziału, którego RunQuery może używać jako punktu początkowego lub końcowego wyników zapytania. Żądania RunQuery muszą być wysyłane przy użyciu tego samego zapytania, które zostało dostarczone do tego żądania PartitionQuery. Kursory partycji zostaną uporządkowane w tej samej kolejności co wyniki zapytania dostarczonego do PartitionQuery. Jeśli na przykład żądanie PartitionQuery zwraca kursory A i B, wykonanie tych 3 zapytań spowoduje zwrócenie całego zestawu wyników pierwotnego zapytania:
Pusty wynik może oznaczać, że zapytanie zawiera zbyt mało wyników do partycjonowania lub że zapytanie nie jest jeszcze obsługiwane do partycjonowania. |
next_page_token |
Token strony, który może być używany do żądania dodatkowego zestawu wyników, maksymalnie do liczby określonej przez |
Podsumowanie planu
Informacje o fazie planowania dla zapytania.
Pola | |
---|---|
indexes_used[] |
Indeksy wybrane dla zapytania. Na przykład: [ {"query_scope": "Collection", "properties": "(foo ASC, nazwa ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, nazwa ASC)"} ] |
Warunek wstępny
Warunek wstępny dokumentu używany w operacjach warunkowych.
Pola | |
---|---|
Pole sumy condition_type . Typ warunku wstępnego. condition_type może mieć tylko jedną z tych wartości: |
|
exists |
Gdy ustawiona jest wartość |
update_time |
Jeśli jest ustawiony, dokument docelowy musi istnieć i miał być ostatnio aktualizowany. Sygnatura czasowa musi być wyrównana w mikrosekundach. |
Żądanie wycofania
Prośba dotycząca usługi Firestore.Rollback
.
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
transaction |
Wymagane. Transakcja do wycofania. |
Żądanie RunAggregationQueryRequest
Prośba dotycząca usługi Firestore.RunAggregationQuery
.
Pola | |
---|---|
parent |
Wymagane. Nazwa zasobu nadrzędnego. W formacie: |
explain_options |
Opcjonalnie. Wyjaśnij opcje zapytania. Jeśli jest ustawione, zwracane są dodatkowe statystyki zapytań. W przeciwnym razie zwracane będą tylko wyniki zapytania. |
Pole sumy query_type . Zapytanie do uruchomienia. query_type może mieć tylko jedną z tych wartości: |
|
structured_aggregation_query |
Zapytanie agregujące. |
Pole sumy consistency_selector . Tryb spójności zapytania domyślnie ma silną spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
transaction |
Uruchom agregację w ramach już aktywnej transakcji. Wartość w tym miejscu to nieprzejrzysty identyfikator transakcji, w której ma zostać wykonane zapytanie. |
new_transaction |
Uruchamia nową transakcję w ramach zapytania z domyślnym ustawieniem „tylko do odczytu”. Nowy identyfikator transakcji zostanie zwrócony jako pierwsza odpowiedź w strumieniu. |
read_time |
Wykonuje zapytanie o podanej sygnaturze czasowej. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Odpowiedź na zapytanie RunAggregationQuery
Odpowiedź dla: Firestore.RunAggregationQuery
.
Pola | |
---|---|
result |
Jeden wynik agregacji. Nie występuje w przypadku raportowania częściowego postępu. |
transaction |
Transakcja rozpoczęta w ramach tego żądania. Widoczny tylko w pierwszej odpowiedzi, gdy żądanie dotyczyło rozpoczęcia nowej transakcji. |
read_time |
Godzina obliczenia wyniku zagregowanego. Ta wartość jest zawsze monotonicznie rosnąca. w tym przypadku poprzedni wynik AggregationResult w strumieniu wyników nie zmieni się między Jeśli zapytanie nie zwróci żadnych wyników, zostanie wysłana odpowiedź z parametrem |
explain_metrics |
Wskaźniki wyjaśnień zapytania. Ten parametr występuje tylko wtedy, gdy podano |
RunQueryRequest
Prośba dotycząca usługi Firestore.RunQuery
.
Pola | |
---|---|
parent |
Wymagane. Nazwa zasobu nadrzędnego. W formacie: |
explain_options |
Opcjonalnie. Wyjaśnij opcje zapytania. Jeśli jest ustawione, zwracane są dodatkowe statystyki zapytań. W przeciwnym razie zwracane będą tylko wyniki zapytania. |
Pole sumy query_type . Zapytanie do uruchomienia. query_type może mieć tylko jedną z tych wartości: |
|
structured_query |
Uporządkowane zapytanie. |
Pole sumy consistency_selector . Tryb spójności tej transakcji. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
transaction |
Uruchom zapytanie w ramach już aktywnej transakcji. Wartość w tym miejscu to nieprzejrzysty identyfikator transakcji, w której ma zostać wykonane zapytanie. |
new_transaction |
Rozpoczyna nową transakcję i odczytuje dokumenty. Domyślnie jest to transakcja tylko do odczytu. Nowy identyfikator transakcji zostanie zwrócony jako pierwsza odpowiedź w strumieniu. |
read_time |
Odczytuje dokumenty w takiej postaci, w jakiej były w danym momencie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
RunQueryResponse
Odpowiedź dla: Firestore.RunQuery
.
Pola | |
---|---|
transaction |
Transakcja rozpoczęta w ramach tego żądania. Można go ustawić tylko w pierwszej odpowiedzi i tylko wtedy, gdy w żądaniu ustawiono atrybut |
document |
Wynik zapytania, który nie jest ustawiany podczas raportowania częściowego postępu. |
read_time |
Czas odczytu dokumentu. Może narastać monotonicznie. w takim przypadku poprzednie dokumenty w strumieniu wyników nie zostaną zmienione między dokumentem Jeśli zapytanie nie zwróci żadnych wyników, zostanie wysłana odpowiedź z parametrem |
skipped_results |
Liczba wyników, które zostały pominięte z powodu przesunięcia między ostatnią i bieżącą odpowiedzią. |
explain_metrics |
Wskaźniki wyjaśnień zapytania. Ten parametr występuje tylko wtedy, gdy podano |
Pole sumy continuation_selector . Tryb kontynuacji zapytania. Jeśli występuje, oznacza to, że bieżący strumień odpowiedzi na zapytanie został zakończony. Tę opcję można ustawić z użyciem parametru document lub bez niego, ale gdy jest ustawiony, nie są zwracane żadne więcej wyników. continuation_selector może mieć tylko jedną z tych wartości: |
|
done |
Jeśli jest dostępny, Firestore zakończył wykonywanie żądania i żadne dokumenty nie będą zwracane. |
Zapytanie agregacji uporządkowanych danych
Zapytanie Firestore dotyczące uruchomienia agregacji w zasobniku StructuredQuery
.
Pola | |
---|---|
aggregations[] |
Opcjonalnie. Seria agregacji, które zostaną zastosowane do wyników funkcji Wymagane:
|
Pole sumy query_type . Podstawowe zapytanie do agregacji. query_type może mieć tylko jedną z tych wartości: |
|
structured_query |
Zagnieżdżone uporządkowane zapytanie. |
Agregacja
Definiuje agregację, która skutkuje jednym wynikiem.
Pola | |
---|---|
alias |
Opcjonalnie. Opcjonalna nazwa pola, w którym mają być przechowywane wynik agregacji. Jeśli nie zostanie podana, Firestore wybierze nazwę domyślną w formacie
zmienia się w:
Wymagane:
|
Pole sumy operator . Wymagany typ agregacji do wykonania. operator może mieć tylko jedną z tych wartości: |
|
count |
Agregator liczb. |
sum |
Agregator sum. |
avg |
Przeciętny agregator. |
Średnio
Średnia wartości żądanego pola.
Agregowane będą tylko wartości liczbowe. Wszystkie wartości nieliczbowe, w tym
NULL
, są pominięte.Jeśli zagregowane wartości zawierają wartość
NaN
, funkcja zwracaNaN
. Funkcja matematyki Infinity jest zgodna ze standardami IEEE-754.Jeśli zbiór zagregowanych wartości jest pusty, zwraca
NULL
.Zawsze zwraca wynik w postaci liczby zmiennoprzecinkowej.
Pola | |
---|---|
field |
Pole do agregacji. |
Liczba
Liczba dokumentów pasujących do zapytania.
Funkcja agregacji COUNT(*)
działa w całym dokumencie, więc nie wymaga odwołania do pola.
Pola | |
---|---|
up_to |
Opcjonalnie. Opcjonalne ograniczenie maksymalnej liczby dokumentów do zliczania. Umożliwia to ustawienie górnej granicy liczby dokumentów do skanowania, co pozwala ograniczyć czas oczekiwania i koszty. Wartość nieokreślona jest interpretowana jako brak zakresu. Ogólny przykład:
Wymagane:
|
Suma
Suma wartości żądanego pola.
Agregowane będą tylko wartości liczbowe. Wszystkie wartości nieliczbowe, w tym
NULL
, są pominięte.Jeśli zagregowane wartości zawierają wartość
NaN
, funkcja zwracaNaN
. Funkcja matematyki Infinity jest zgodna ze standardami IEEE-754.Jeśli zbiór zagregowanych wartości jest pusty, zwraca 0.
Zwraca 64-bitową liczbę całkowitą, jeśli wszystkie zagregowane liczby są liczbami całkowitymi, a wynik sumy nie przekroczy wartości. W przeciwnym razie wynik jest liczbą zmiennoprzecinkową. Nawet jeśli wszystkie zagregowane wartości są liczbami całkowitymi, wynik jest zwracany jako liczba zmiennoprzecinkowa, jeśli nie mieści się w 64-bitowej liczbie znaków ze znakiem. W takim przypadku zwracana wartość utraci precyzję.
Gdy występuje niedopełnienie, agregacja zmiennoprzecinkowa jest niedeterministyczna. Oznacza to, że wielokrotne wykonywanie tego samego zapytania bez zmian w wartościach może za każdym razem dawać nieco inne wyniki. W takich przypadkach wartości powinny być przechowywane w postaci liczb całkowitych zamiast liczb zmiennoprzecinkowych.
Pola | |
---|---|
field |
Pole do agregacji. |
Zapytanie strukturalne
Zapytanie Firestore.
Etapy zapytania są wykonywane w tej kolejności: 1. od 2. gdzie 3. wybierz 4. order_by + start_at + end_at 5. przesunięcie 6. limit
Pola | |
---|---|
select |
Opcjonalny podzbiór pól do zwrócenia. Działa jako element |
from[] |
Kolekcje, których ma dotyczyć zapytanie. |
where |
Filtr, który ma zostać zastosowany. |
order_by[] |
Kolejność, która ma być stosowana do wyników zapytania. Firestore umożliwia wywołującym użytkownikom określenie pełnego sortowania, częściowego sortowania lub całkowity brak zamówień. We wszystkich przypadkach Firestore gwarantuje stabilną kolejność na podstawie tych reguł:
Pola są dodawane z tym samym kierunkiem sortowania co w przypadku ostatniego określonego porządku, czyli „ASCENDING” jeśli nie określono zamówienia. Przykład:
|
start_at |
Potencjalny prefiks pozycji w zestawie wyników, od której ma się rozpoczynać zapytanie. Kolejność w zbiorze wyników jest określana na podstawie klauzuli
Wyniki tego zapytania są uporządkowane według: Kursory mogą odwoływać się do pełnej kolejności lub do prefiksu lokalizacji, ale nie mogą odwoływać się do większej liczby pól niż podano w Wracając do powyższego przykładu, umieszczenie następujących kursorów początkowych będzie miało różny wpływ:
W przeciwieństwie do funkcji Wymagane:
|
end_at |
Potencjalny prefiks pozycji w zestawie wyników, na której kończy się zapytanie. Jest to podobne do funkcji Wymagane:
|
offset |
Liczba dokumentów do pominięcia przed zwróceniem pierwszego wyniku. Ma to zastosowanie po ograniczeniach określonych przez Wymagane:
|
limit |
Maksymalna liczba wyników do zwrócenia. Ma zastosowanie po wszystkich innych ograniczeniach. Wymagane:
|
find_nearest |
Opcjonalnie. Wyszukiwanie potencjalnych najbliższych sąsiadów. Ma zastosowanie po wszystkich innych filtrach i kolejności. Znajduje wektory dystrybucyjne najbliższe danemu wektorowi zapytania. |
Selektor kolekcji
Wybór kolekcji, np. messages as m1
.
Pola | |
---|---|
collection_id |
Identyfikator kolekcji. Jeśli jest ustawiony, wybiera tylko kolekcje o tym identyfikatorze. |
all_descendants |
Jeśli zasada ma wartość Fałsz, wybiera tylko kolekcje, które są bezpośrednimi elementami podrzędnymi elementu |
Filtr złożony
Filtr, który łączy wiele innych filtrów za pomocą podanego operatora.
Pola | |
---|---|
op |
Operator łączący wiele filtrów. |
filters[] |
Lista filtrów do połączenia. Wymagane:
|
Operator
Operator filtra złożonego.
Wartości w polu enum | |
---|---|
OPERATOR_UNSPECIFIED |
Nie określono. Tej wartości nie można używać. |
AND |
Dokumenty są wymagane w przypadku wszystkich połączonych filtrów. |
OR |
Dokumenty muszą spełniać warunki co najmniej 1 z połączonych filtrów. |
Kierunek
Kierunek sortowania.
Wartości w polu enum | |
---|---|
DIRECTION_UNSPECIFIED |
Nie określono. |
ASCENDING |
Rosnąco. |
DESCENDING |
Malejąco. |
Filtr pól
Filtr określonego pola.
Pola | |
---|---|
field |
Pole, według którego chcesz filtrować. |
op |
Operator, według którego chcesz filtrować. |
value |
Wartość do porównania. |
Operator
Operator filtra pól.
Wartości w polu enum | |
---|---|
OPERATOR_UNSPECIFIED |
Nie określono. Tej wartości nie można używać. |
LESS_THAN |
Podana wartość Wymagane:
|
LESS_THAN_OR_EQUAL |
Podana wartość Wymagane:
|
GREATER_THAN |
Podana wartość Wymagane:
|
GREATER_THAN_OR_EQUAL |
Podana wartość Wymagane:
|
EQUAL |
Podana wartość field jest równa wartości podanej jako value . |
NOT_EQUAL |
Podana wartość Wymagane:
|
ARRAY_CONTAINS |
Podana wartość field jest tablicą, która zawiera podaną wartość value . |
IN |
Podana wartość Wymagane:
|
ARRAY_CONTAINS_ANY |
Podana tablica Wymagane:
|
NOT_IN |
Wartości funkcji Wymagane:
|
FieldReference
Odwołanie do pola w dokumencie, np. stats.operations
.
Pola | |
---|---|
field_path |
Odwołanie do pola w dokumencie. Wymagane:
|
Filtr
Filtr.
Pola | |
---|---|
Pole sumy filter_type . Typ filtra. filter_type może mieć tylko jedną z tych wartości: |
|
composite_filter |
Filtr złożony. |
field_filter |
Filtr w polu dokumentu. |
unary_filter |
Filtr, który przyjmuje dokładnie 1 argument. |
Najbliższe
Konfiguracja wyszukiwania najbliższych sąsiadów.
Pola | |
---|---|
vector_field |
Wymagane. Zindeksowane pole wektora do wyszukania. Zwracane mogą być tylko dokumenty zawierające wektory, których wymiarowość pasuje do parametru query_vector. |
query_vector |
Wymagane. Wektor zapytania, którego szukamy. Musi być wektorem o maksymalnie 2048 wymiarach. |
distance_measure |
Wymagane. Miara odległości do użycia, wymagana. |
limit |
Wymagane. Liczba najbliższych sąsiadów do zwrócenia. Wartość musi być dodatnią liczbą całkowitą nie większą niż 1000. |
Odległość
Miara odległości używana przy porównywaniu wektorów.
Wartości w polu enum | |
---|---|
DISTANCE_MEASURE_UNSPECIFIED |
Nie należy go ustawiać. |
EUCLIDEAN |
Mierzy odległość UECLIDEAN między wektorami. Więcej informacji: euklidesowa. |
COSINE |
Porównuje wektory na podstawie kąta między nimi, co pozwala zmierzyć podobieństwo, które nie jest oparte na wielkości wektorów. Zalecamy używanie parametru DOT_PRODUCT z wektorami znormalizowanymi jednostkami zamiast odległości COSINE, co jest odpowiednikiem matematycznym o większej wydajności. Więcej informacji znajdziesz w sekcji Podobieństwo cosinusowe. |
DOT_PRODUCT |
Podobny do cosinusa, ale zależy od wielkości wektorów. Więcej informacji znajdziesz w artykule Produkt skalarny. |
Zamówienie
Kolejność na polu.
Pola | |
---|---|
field |
Pole, według którego ma być ustalana kolejność. |
direction |
Kierunek sortowania. Domyślna wartość to |
Odwzorowanie
Odwzorowanie pól dokumentu do zwrócenia.
Pola | |
---|---|
fields[] |
Pola do zwrócenia. Jeśli pole jest puste, zwracane są wszystkie pola. Aby zwrócić tylko nazwę dokumentu, użyj |
Filtr jednoargumentowy
Filtr z jednym operandem.
Pola | |
---|---|
op |
Jednoargumentowy operator do zastosowania. |
Pole sumy operand_type . Argument filtra. operand_type może mieć tylko jedną z tych wartości: |
|
field |
Pole, do którego ma zostać zastosowany operator. |
Operator
Operator jednoargumentowy.
Wartości w polu enum | |
---|---|
OPERATOR_UNSPECIFIED |
Nie określono. Tej wartości nie można używać. |
IS_NAN |
Podana wartość field jest równa NaN . |
IS_NULL |
Podana wartość field jest równa NULL . |
IS_NOT_NAN |
Podana wartość Wymagane:
|
IS_NOT_NULL |
Podana wartość Wymagane:
|
Cel
Specyfikacja zestawu dokumentów do odsłuchania.
Pola | |
---|---|
target_id |
Identyfikator elementu docelowego, który określa obiekt docelowy w strumieniu. Musi być liczbą dodatnią i inną niż zero. Jeśli Pamiętaj, że jeśli klient wysyła wiele żądań Jeśli |
once |
Czy cel powinien zostać usunięty, gdy będzie aktualny i spójny. |
expected_count |
Liczba dokumentów, które ostatnio pasowały do zapytania przy tokenie wznowienia lub czasie odczytu. Ta wartość ma znaczenie tylko wtedy, gdy podano |
Pole sumy target_type . Typ elementu docelowego do odsłuchania. target_type może mieć tylko jedną z tych wartości: |
|
query |
Cel określony przez zapytanie. |
documents |
Cel określony przez zestaw nazw dokumentów. |
Pole sumy Jeśli zostanie określony, zwracane będą tylko pasujące dokumenty, które zostały zaktualizowane PO |
|
resume_token |
Token wznowienia z poprzedniego Użycie tokena CV z innym miejscem docelowym nie jest obsługiwane i może się nie powieść. |
read_time |
Zacznij słuchać po określonym W tej chwili klient musi znać stan pasujących dokumentów. |
Cel dokumentów
Miejsce docelowe określone przez zestaw nazw dokumentów.
Pola | |
---|---|
documents[] |
Nazwy dokumentów do pobrania. W formacie: |
Cel zapytania
Cel określony przez zapytanie.
Pola | |
---|---|
parent |
Nazwa zasobu nadrzędnego. W formacie: |
Pole sumy query_type . Zapytanie do uruchomienia. query_type może mieć tylko jedną z tych wartości: |
|
structured_query |
Uporządkowane zapytanie. |
Docelowa zmiana
Obserwowane cele uległy zmianie.
Pola | |
---|---|
target_change_type |
Typ zmiany, która wystąpiła. |
target_ids[] |
Identyfikatory celów, które uległy zmianie. Jeśli pole będzie puste, zmiana zostanie zastosowana do wszystkich wartości docelowych. Kolejność identyfikatorów elementów docelowych nie jest zdefiniowana. |
cause |
Błąd, który spowodował tę zmianę (w stosownych przypadkach). |
resume_token |
Token, którego można użyć do wznowienia strumienia dla danej Nie jest ustawiany przy każdej zmianie wartości docelowej. |
read_time |
Spójna wartość Strumień gwarantuje, że za każdym razem, gdy cały strumień uzyska nowy spójny zrzut, wyśle żądanie W przypadku danego strumienia |
Typ zmiany docelowej
rodzaj zmiany.
Wartości w polu enum | |
---|---|
NO_CHANGE |
Nie wprowadzono żadnych zmian. Służy tylko do wysłania zaktualizowanego elementu resume_token . |
ADD |
Cele zostały dodane. |
REMOVE |
Cele zostały usunięte. |
CURRENT |
Wartości docelowe odzwierciedlają wszystkie zmiany zatwierdzone przed dodaniem celów do transmisji. Zostanie on wysłany po czasie dodania celów lub razem z nim ( Detektory mogą zaczekać na tę zmianę, jeśli wymagana jest semantyka odczyt po zapisie. |
RESET |
Cele zostały zresetowane, a w kolejnych zmianach zwracany jest dla nich nowy stan początkowy. Po zakończeniu stanu początkowego parametr |
Opcje transakcji
Opcje tworzenia nowej transakcji.
Pola | |
---|---|
Pole sumy mode . Tryb transakcji. mode może mieć tylko jedną z tych wartości: |
|
read_only |
Tej transakcji można używać tylko do operacji odczytu. |
read_write |
Transakcje można używać w operacjach odczytu i zapisu. |
Tylko do odczytu
Opcje transakcji, których można używać tylko do odczytu dokumentów.
Pola | |
---|---|
Pole sumy consistency_selector . Tryb spójności tej transakcji. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
read_time |
Odczytuje dokumenty w określonym czasie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. |
Odczyt/zapis
Opcje transakcji, których można używać do odczytu i zapisu dokumentów.
Firestore nie zezwala na tworzenie żądań uwierzytelniania do odczytu i zapisu. transakcji.
Pola | |
---|---|
retry_transaction |
Opcjonalna transakcja do ponowienia. |
Żądanie UpdateDocumentRequest
Prośba dotycząca usługi Firestore.UpdateDocument
.
Pola | |
---|---|
document |
Wymagane. Zaktualizowany dokument. Tworzy dokument, jeśli jeszcze nie istnieje. |
update_mask |
Pola do zaktualizowania. Żadna ze ścieżek pól w masce nie może zawierać zarezerwowanej nazwy. Jeśli dokument znajduje się na serwerze, a jego pola nie zawierają odniesień w masce, pozostaną one niezmienione. Pola, do których odwołuje się maska, ale nie ma ich w dokumencie wejściowym, są usuwane z dokumentu na serwerze. |
mask |
Pola do zwrócenia. Jeśli zasada nie jest skonfigurowana, zwraca wszystkie pola. Jeśli dokument zawiera pole, którego nie ma w tej masce, nie zostanie ono zwrócone w odpowiedzi. |
current_document |
Opcjonalny warunek wstępny dotyczący dokumentu. Jeśli ta wartość zostanie ustawiona, a dokument docelowy nie spełni tego żądania, żądanie zakończy się niepowodzeniem. |
Wartość
Komunikat, który może zawierać dowolne obsługiwane typy wartości.
Pola | |
---|---|
Pole sumy value_type . Musisz ustawić wartość. value_type może mieć tylko jedną z tych wartości: |
|
null_value |
Wartość null. |
boolean_value |
Wartość logiczna. |
integer_value |
Wartość całkowita. |
double_value |
Wartość podwójnej precyzji. |
timestamp_value |
Wartość sygnatury czasowej. Dokładny tylko z dokładnością do mikrosekund. Zapisana dodatkowa precyzja jest zaokrąglana w dół. |
string_value |
Wartość ciągu znaków. Ciąg znaków w formacie UTF-8 nie może przekraczać 1 MiB–89 bajtów. Zapytania uwzględniają tylko pierwsze 1500 bajtów reprezentacji UTF-8. |
bytes_value |
Wartość w bajtach. Maksymalny rozmiar to 1 MiB–89 bajtów. Zapytania uwzględniają tylko pierwsze 1500 bajtów. |
reference_value |
Odwołanie do dokumentu. Na przykład: |
geo_point_value |
Wartość punktu geograficznego reprezentującego punkt na powierzchni Ziemi. |
array_value |
Wartość tablicowa. Nie może zawierać bezpośrednio innej wartości tablicy, chociaż może zawierać mapę zawierającą inną tablicę. |
map_value |
Wartość mapy. |
Zapis
Zapis w dokumencie.
Pola | |
---|---|
update_mask |
Pola do zaktualizowania w tym zapisie. To pole można ustawić tylko wtedy, gdy operacja to |
update_transforms[] |
Przekształcenia, które mają zostać wykonane po aktualizacji. To pole można ustawić tylko wtedy, gdy operacja to |
current_document |
Opcjonalny warunek wstępny dotyczący dokumentu. Jeśli ta wartość jest ustawiona, a dokument docelowy nie spełnia tego warunku, zapis się nie uda. |
Pole sumy operation . Operacja do wykonania. operation może mieć tylko jedną z tych wartości: |
|
update |
Dokument do pisania. |
delete |
Nazwa dokumentu do usunięcia. W formacie: |
transform |
Stosuje przekształcenie do dokumentu. |
Żądanie zapisu
Prośba dotycząca usługi Firestore.Write
.
Pierwsze żądanie tworzy strumień lub wznawia istniejący strumień za pomocą tokena.
Podczas tworzenia nowego strumienia serwer odpowiada, wysyłając odpowiedź zawierającą tylko identyfikator i token do wykorzystania w następnym żądaniu.
W trakcie wznawiania strumienia serwer najpierw przesyła strumieniowo odpowiedzi później niż podany przez Ciebie token, a potem odpowiedź zawierającą tylko aktualny token do wykorzystania w kolejnym żądaniu.
Pola | |
---|---|
database |
Wymagane. Nazwa bazy danych. W formacie: |
stream_id |
Identyfikator strumienia zapisu do wznowienia. Można to ustawić tylko w pierwszej wiadomości. Jeśli pozostawisz to pole puste, zostanie utworzony nowy strumień zapisu. |
writes[] |
Zapisy, które mają zostać zastosowane. Zawsze wykonywany atomowo i w określonej kolejności. To pole musi być puste w pierwszym żądaniu. To pole może być puste w ostatnim żądaniu. To pole nie może być puste w przypadku wszystkich innych żądań. |
stream_token |
Token strumienia, który został wcześniej wysłany przez serwer. Klient powinien ustawić w tym polu token z ostatniego otrzymanego przez siebie zasobu Serwer może zamknąć strumień, jeśli jest zbyt wiele niepotwierdzonych odpowiedzi. Pozostaw to pole nieskonfigurowane podczas tworzenia nowego strumienia. Aby wznowić strumieniowanie w określonym momencie, ustaw to pole oraz pole Pozostaw to pole nieskonfigurowane podczas tworzenia nowego strumienia. |
labels |
Etykiety powiązane z tym żądaniem zapisu. |
Odpowiedź do zapisu
Odpowiedź dla: Firestore.Write
.
Pola | |
---|---|
stream_id |
Identyfikator strumienia. Ustawienie tylko dla pierwszej wiadomości po utworzeniu nowego strumienia. |
stream_token |
Token reprezentujący pozycję tej odpowiedzi w strumieniu. Klient może go użyć, aby wznowić strumieniowanie w tym momencie. To pole jest zawsze ustawione. |
write_results[] |
Wynik zastosowania zapisów. Ten wynik i-tego zapisu odpowiada i-temu zapisowi w żądaniu. |
commit_time |
Czas realizacji zatwierdzenia. Każdy odczyt o wartości |
Zapis wyniku
Wynik zastosowania zapisu.
Pola | |
---|---|
update_time |
Czas ostatniej aktualizacji dokumentu po zastosowaniu zapisu. Nie ustawiono po Jeśli zapis nie spowodował zmiany dokumentu, to jest to poprzedni czas aktualizacji. |
transform_results[] |
Wyniki zastosowania wszystkich elementów typu |