Package google.firestore.admin.v1beta2

Indeks

Administrator Firestore

Operacje są tworzone przez usługę FirestoreAdmin, ale dostęp do nich uzyskuje się przez usługę google.longrunning.Operations.

Utwórz indeks

rpc CreateIndex(CreateIndexRequest) returns (Operation)

Tworzy indeks złożony. Spowoduje to zwrócenie kodu google.longrunning.Operation, którego można użyć do śledzenia stanu tworzenia. Metadane tej operacji będą typu IndexOperationMetadata.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Usuń indeks

rpc DeleteIndex(DeleteIndexRequest) returns (Empty)

Usuwa indeks złożony.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

ExportDocuments

rpc ExportDocuments(ExportDocumentsRequest) returns (Operation)

Eksportuje kopię wszystkich lub niektórych dokumentów z Google Cloud Firestore do innego systemu pamięci masowej, na przykład Google Cloud Storage. Ostatnie zmiany w dokumentach mogą nie zostać uwzględnione w eksporcie. Eksport odbywa się w tle, a jego postęp można monitorować i zarządzać nim za pomocą tworzonego zasobu operacji. Danych wyjściowych eksportu można użyć dopiero po zakończeniu powiązanej operacji. Jeśli operacja eksportu zostanie anulowana przed ukończeniem, może pozostawić w Google Cloud Storage częściowe dane.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

GetField

rpc GetField(GetFieldRequest) returns (Field)

Pobiera metadane i konfigurację pola.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

GetIndex

rpc GetIndex(GetIndexRequest) returns (Index)

Pobiera indeks złożony.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

ImportDocuments

rpc ImportDocuments(ImportDocumentsRequest) returns (Operation)

Importuje dokumenty do Google Cloud Firestore. Istniejące dokumenty o takiej samej nazwie zostaną zastąpione. Import odbywa się w tle, a jego postęp może być monitorowany i można nim zarządzać za pomocą tworzonego zasobu operacji. Jeśli operacja ImportDocuments zostanie anulowana, podzbiór danych może zostać już zaimportowany do Cloud Firestore.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Wyświetlanie listy pól

rpc ListFields(ListFieldsRequest) returns (ListFieldsResponse)

Zawiera konfigurację pól i metadane tej bazy danych.

Obecnie FirestoreAdmin.ListFields obsługuje tylko te pola, które zostały jawnie zastąpione. Aby wysłać to zapytanie, wywołaj funkcję FirestoreAdmin.ListFields z filtrem ustawionym na indexConfig.usesAncestorConfig:false.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Wyświetlanie listy indeksów

rpc ListIndexes(ListIndexesRequest) returns (ListIndexesResponse)

Wyświetla listę indeksów złożonych.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Pole aktualizacji

rpc UpdateField(UpdateFieldRequest) returns (Operation)

Aktualizuje konfigurację pola. Obecnie aktualizacje pól mają zastosowanie tylko do konfiguracji indeksu z jednym polem. Jednak wywołania funkcji FirestoreAdmin.UpdateField powinny zawierać maskę pola, aby uniknąć zmiany konfiguracji, której rozmówca nie wie. Maską pola należy określić jako: { paths: "index_config" }.

To wywołanie zwraca wartość google.longrunning.Operation, która może służyć do śledzenia stanu aktualizacji pola. Metadane tej operacji będą typu FieldOperationMetadata.

Aby skonfigurować domyślne ustawienia pola bazy danych, użyj specjalnego elementu Field o nazwie zasobu: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Tworzenie żądania indeksu

Prośba dotycząca usługi FirestoreAdmin.CreateIndex.

Pola
parent

string

Nazwa elementu nadrzędnego formularza projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}

index

Index

Indeks złożony do utworzenia.

DeleteIndexRequest

Prośba dotycząca usługi FirestoreAdmin.DeleteIndex.

Pola
name

string

Nazwa formularza projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}

ExportDocumentsMetadata

Metadane google.longrunning.Operation wyniku z FirestoreAdmin.ExportDocuments.

Pola
start_time

Timestamp

Czas rozpoczęcia tej operacji.

end_time

Timestamp

Czas zakończenia tej operacji. Ustawienie nie zostanie ustawione, jeśli operacja jest nadal wykonywana.

operation_state

OperationState

Stan operacji eksportu.

progress_documents

Progress

Postęp tej operacji w dokumentach.

progress_bytes

Progress

Postęp tej operacji w bajtach.

collection_ids[]

string

Które identyfikatory kolekcji są eksportowane.

output_uri_prefix

string

Miejsce, do którego są eksportowane elementy.

Żądanie ExportDocumentsRequest

Prośba dotycząca usługi FirestoreAdmin.ExportDocuments.

Pola
name

string

Baza danych do wyeksportowania. Powinien mieć format: projects/{project_id}/databases/{database_id}.

collection_ids[]

string

Identyfikatory kolekcji do wyeksportowania. „Nieokreślony” oznacza wszystkie kolekcje.

output_uri_prefix

string

Identyfikator URI wyjściowy. Obecnie obsługuje tylko identyfikatory URI Google Cloud Storage w formacie: gs://BUCKET_NAME[/NAMESPACE_PATH], gdzie BUCKET_NAME to nazwa zasobnika Google Cloud Storage, a NAMESPACE_PATH to opcjonalna ścieżka przestrzeni nazw Google Cloud Storage. Wybierając nazwę, pamiętaj o przestrzeganiu wytycznych dotyczących nazewnictwa w Google Cloud Storage: https://cloud.google.com/storage/docs/naming. Jeśli identyfikator URI jest zasobnikiem (bez ścieżki przestrzeni nazw), na podstawie czasu rozpoczęcia zostanie wygenerowany prefiks.

Odpowiedź na eksport Dokumentów

Zwrócony w polu odpowiedzi google.longrunning.Operation.

Pola
output_uri_prefix

string

Lokalizacja plików wyjściowych. W ten sposób możesz rozpocząć importowanie do Cloud Firestore (w tym lub innym projekcie) po pomyślnym zakończeniu operacji.

Pole

Reprezentuje jedno pole w bazie danych.

Pola są pogrupowane według „grupy kolekcji”, która reprezentuje wszystkie kolekcje w bazie danych o tym samym identyfikatorze.

Pola
name

string

Nazwa pola w formacie projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_path}

Ścieżka pola może być prostą nazwą pola, np. address lub ścieżka do pól w obrębie wartości map_value , np. address.city lub specjalną ścieżkę pola. Jedyne prawidłowe pole specjalne to *, które reprezentuje dowolne pole.

Ścieżki pól można cytować za pomocą znaków (backtick). The only character that needs to be escaped within a quoted field path is the backtick character itself, escaped using a backslash. Special characters in field paths that must be quoted include:*,., ``` (backtick),[,]oraz dowolnych znaków ASCII.

Przykłady: (uwaga: komentarze w tym miejscu są napisane w składni języka markdown, dlatego pojawia się dodatkowa warstwa znaków grawisowych reprezentujących blok kodu) \address.city`represents a field namedadres.miasto, not the map key miastoin the fieldadres. `*`represents a field named*`, a nie żadne pole.

Specjalny identyfikator Field zawiera domyślne ustawienia indeksowania wszystkich pól. Nazwa zasobu tego pola to: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/* Indeksy zdefiniowane w tym elemencie Field zostaną zastosowane do wszystkich pól, które nie mają własnej konfiguracji indeksów Field.

index_config

IndexConfig

Konfiguracja indeksu dla tego pola. Jeśli jej nie skonfigurujesz, indeksowanie pól zostanie przywrócone do konfiguracji zdefiniowanej przez zasadę ancestor_field. Aby bezpośrednio usunąć wszystkie indeksy dla tego pola, określ konfigurację indeksu z pustą listą indeksów.

Konfiguracja indeksu

Konfiguracja indeksu dla tego pola.

Pola
indexes[]

Index

Indeksy obsługiwane przez to pole.

uses_ancestor_config

bool

Tylko dane wyjściowe. Jeśli zasada ma wartość prawda, konfiguracja indeksu Field jest ustawiana na podstawie konfiguracji określonej w zasadzie ancestor_field. Jeśli ma wartość Fałsz, konfiguracja indeksu Field jest zdefiniowana.

ancestor_field

string

Tylko dane wyjściowe. Określa nazwę zasobu pola Field, z którego skonfigurowana jest konfiguracja indeksu tego pola (gdy uses_ancestor_config ma wartość prawda) lub wartości, od której wartość ta jest ustawiana, jeśli to pole nie ma konfiguracji indeksu (gdy uses_ancestor_config ma wartość fałsz).

reverting

bool

Tylko dane wyjściowe, jeśli ma wartość prawda, konfiguracja indeksu Field jest w trakcie przywracania. Po zakończeniu konfiguracja indeksu zmieni się na taki sam jak pole określone przez pole ancestor_field. W tym momencie uses_ancestor_config będzie mieć wartość true, a revertingfalse.

Metadane operacji

Metadane google.longrunning.Operation wyniku z FirestoreAdmin.UpdateField.

Pola
start_time

Timestamp

Czas rozpoczęcia tej operacji.

end_time

Timestamp

Czas zakończenia tej operacji. Ustawienie nie zostanie ustawione, jeśli operacja jest nadal wykonywana.

field

string

Zasób pola, na który działa ta operacja. Na przykład: projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_path}

index_config_deltas[]

IndexConfigDelta

Lista elementów IndexConfigDelta opisujących intencję tej operacji.

state

OperationState

Stan operacji.

document_progress

Progress

Postęp tej operacji w dokumentach.

bytes_progress

Progress

Postęp tej operacji w bajtach.

IndexConfigDelta

Informacje o zmianie konfiguracji indeksu.

Pola
change_type

ChangeType

Określa sposób zmiany indeksu.

index

Index

Zmieniany indeks.

Typ zmiany

Określa sposób zmiany indeksu.

Wartości w polu enum
CHANGE_TYPE_UNSPECIFIED Typ zmiany nie został określony lub nie jest znany.
ADD Dodaję indeks pojedynczego pola.
REMOVE Usuwam indeks pojedynczego pola.

GetFieldRequest

Prośba dotycząca usługi FirestoreAdmin.GetField.

Pola
name

string

Nazwa formularza projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_id}

Żądanie GetIndexRequest

Prośba dotycząca usługi FirestoreAdmin.GetIndex.

Pola
name

string

Nazwa formularza projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}

Metadane importu dokumentów

Metadane google.longrunning.Operation wyniku z FirestoreAdmin.ImportDocuments.

Pola
start_time

Timestamp

Czas rozpoczęcia tej operacji.

end_time

Timestamp

Czas zakończenia tej operacji. Ustawienie nie zostanie ustawione, jeśli operacja jest nadal wykonywana.

operation_state

OperationState

Stan operacji importu.

progress_documents

Progress

Postęp tej operacji w dokumentach.

progress_bytes

Progress

Postęp tej operacji w bajtach.

collection_ids[]

string

Które identyfikatory kolekcji mają być importowane.

input_uri_prefix

string

Lokalizacja importowanych dokumentów.

Żądanie ImportDocumentsRequest

Prośba dotycząca usługi FirestoreAdmin.ImportDocuments.

Pola
name

string

Baza danych, do której ma zostać zaimportowany. Powinien mieć format: projects/{project_id}/databases/{database_id}.

collection_ids[]

string

Identyfikatory kolekcji do zaimportowania. „Nie określono” oznacza, że wszystkie zbiory uwzględnione do importu.

input_uri_prefix

string

Lokalizacja wyeksportowanych plików. Ten atrybut musi być zgodny z wartością event_uri_prefix odpowiedzi ExportDocumentsResponse z zakończonego powodzeniem. Zobacz: google.firestore.admin.v1beta2.ExportDocumentsResponse.output_uri_prefix.

Indeks

Indeksy Cloud Firestore umożliwiają proste i złożone zapytania dotyczące dokumentów w bazie danych.

Pola
name

string

Tylko dane wyjściowe. Zdefiniowana przez serwer nazwa tego indeksu. W przypadku indeksów złożonych postać tej nazwy będzie miała postać: projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{composite_index_id} W przypadku indeksów z pojedynczym polem to pole będzie puste.

query_scope

QueryScope

Indeksy z określonym zakresem zapytań kolekcji umożliwiają wykonywanie zapytań na zbiorze podrzędnym określonego dokumentu, określonym w czasie wykonywania zapytania i o tym samym identyfikatorze kolekcji.

Indeksy z określonym zakresem zapytań dotyczącym grupy kolekcji zezwalają na wykonywanie zapytań dotyczących wszystkich kolekcji pochodzących z określonego dokumentu, określonych w czasie wykonywania zapytania i mających ten sam identyfikator kolekcji co ten indeks.

fields[]

IndexField

Pola obsługiwane przez ten indeks.

W przypadku indeksów złożonych jest to zawsze co najmniej 2 pola. Ostatni wpis w polu dotyczy zawsze ścieżki pola __name__. Jeśli podczas tworzenia pole __name__ nie zostało określone jako ostatnie pole, zostanie ono dodane automatycznie z tym samym kierunkiem co ostatnie zdefiniowane pole. Jeśli ostatnie pole w indeksie złożonym nie jest kierunkowe, pole __name__ zostanie uporządkowane ASCENDING (chyba że wyraźnie określono inaczej).

W przypadku indeksów z pojedynczym polem zawsze będzie to dokładnie 1 wpis ze ścieżką pola równą ścieżce powiązanego pola.

state

State

Tylko dane wyjściowe. Stan obsługi indeksu.

Pole indeksu

Pole w indeksie. Parametr pola_path określa, które pole jest indeksowane, a pole value_mode opisuje sposób indeksowania wartości pola.

Pola
field_path

string

Może być wartością name. W przypadku indeksów z pojedynczym polem wartość ta musi być zgodna z nazwą pola lub może zostać pominięty.

Pole sumy value_mode. Sposób indeksowania wartości pola. value_mode może mieć tylko jedną z tych wartości:
order

Order

Wskazuje, że to pole obsługuje porządkowanie według określonej kolejności lub porównywanie przy użyciu znaków =, <, <=, >, >=.

array_config

ArrayConfig

Wskazuje, że to pole obsługuje operacje na array_value.

Konfiguracja tablicy

Obsługiwane konfiguracje wartości tablicy.

Wartości w polu enum
ARRAY_CONFIG_UNSPECIFIED Indeks nie obsługuje dodatkowych zapytań dotyczących tablic.
CONTAINS Indeks obsługuje zapytania obejmujące tablicę.

Zamówienie

Obsługiwane kolejności.

Wartości w polu enum
ORDER_UNSPECIFIED Kolejność nie jest określona. Nieprawidłowa opcja.
ASCENDING Pole jest uporządkowane według wartości pola rosnącego.
DESCENDING Pole jest uporządkowane według wartości pola malejącego.

Zakres zapytania

Zakres zapytania definiuje zakres, w którym uruchamiane jest zapytanie. Określa się to w polu from StructuredQuery.

Wartości w polu enum
QUERY_SCOPE_UNSPECIFIED Zakres zapytania jest nieokreślony. Nieprawidłowa opcja.
COLLECTION Indeksy z określonym zakresem zapytań kolekcji umożliwiają wykonywanie zapytań na zbiorze podrzędnym określonego dokumentu, określonym w czasie wykonywania zapytania i o identyfikatorze kolekcji określonym przez indeks.
COLLECTION_GROUP Indeksy z określonym zakresem zapytań dotyczącym grupy kolekcji umożliwiają wykonywanie zapytań dotyczących wszystkich kolekcji, które mają identyfikator kolekcji określony przez indeks.

Stan

Stan indeksu. Podczas tworzenia indeksu indeks będzie miał stan CREATING. Jeśli indeks zostanie utworzony, przejdzie do stanu READY. Jeśli podczas tworzenia indeksu wystąpi problem, zostanie on przeniesiony do stanu NEEDS_REPAIR.

Wartości w polu enum
STATE_UNSPECIFIED Stan nie jest określony.
CREATING Tworzę indeks. Istnieje aktywna długo trwająca operacja dla indeksu. Indeks jest aktualizowany podczas tworzenia dokumentu. Niektóre dane indeksu mogą istnieć.
READY Indeks jest gotowy do użycia. Indeks jest aktualizowany podczas tworzenia dokumentu. Indeks jest w pełni wypełniany ze wszystkich zapisanych dokumentów, których dotyczy.
NEEDS_REPAIR Trwa tworzenie indeksu, ale coś poszło nie tak. Nie ma żadnej aktywnej długo trwającej operacji dla indeksu, a ostatnia zakończona długo trwająca operacja zakończyła się niepowodzeniem. Indeks nie jest aktualizowany podczas tworzenia dokumentu. Niektóre dane indeksu mogą istnieć. Użyj interfejsu google.longrunning.Operations API, aby ustalić, dlaczego operacja, podczas której ostatnia próba utworzenia tego indeksu zakończyła się niepowodzeniem, a następnie ponownie utwórz indeks.

Metadane operacji indeksowania

Metadane google.longrunning.Operation wyniku z FirestoreAdmin.CreateIndex.

Pola
start_time

Timestamp

Czas rozpoczęcia tej operacji.

end_time

Timestamp

Czas zakończenia tej operacji. Ustawienie nie zostanie ustawione, jeśli operacja będzie nadal wykonywana.

index

string

Zasób indeksu, na którym działa ta operacja. Na przykład: projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}

state

OperationState

Stan operacji.

progress_documents

Progress

Postęp tej operacji w dokumentach.

progress_bytes

Progress

Postęp tej operacji w bajtach.

Żądanie listy pól

Prośba dotycząca usługi FirestoreAdmin.ListFields.

Pola
parent

string

Nazwa elementu nadrzędnego formularza projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}

filter

string

Filtr, który ma być stosowany do listy wyników. Obecnie FirestoreAdmin.ListFields obsługuje tylko te pola, które zostały jawnie zastąpione. Aby wysłać to zapytanie, wywołaj funkcję FirestoreAdmin.ListFields z filtrem ustawionym na indexConfig.usesAncestorConfig:false.

page_size

int32

Liczba wyników do zwrócenia.

page_token

string

Token strony zwrócony z poprzedniego wywołania funkcji FirestoreAdmin.ListFields, który może zostać użyty do wyświetlenia następnej strony wyników.

Odpowiedź z polami listy

Odpowiedź dla: FirestoreAdmin.ListFields.

Pola
fields[]

Field

Wymagane pola.

next_page_token

string

Token strony, który może być używany do żądania innej strony wyników. Jeśli pole jest puste, oznacza to, że jest to ostatnia strona.

Żądanie ListyIndeksów

Prośba dotycząca usługi FirestoreAdmin.ListIndexes.

Pola
parent

string

Nazwa elementu nadrzędnego formularza projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}

filter

string

Filtr, który ma być stosowany do listy wyników.

page_size

int32

Liczba wyników do zwrócenia.

page_token

string

Token strony zwrócony z poprzedniego wywołania funkcji FirestoreAdmin.ListIndexes, który może zostać użyty do wyświetlenia następnej strony wyników.

Odpowiedź Wyświetlanie indeksów

Odpowiedź dla: FirestoreAdmin.ListIndexes.

Pola
indexes[]

Index

Żądane indeksy.

next_page_token

string

Token strony, który może być używany do żądania innej strony wyników. Jeśli pole jest puste, oznacza to, że jest to ostatnia strona.

Stan operacji

Opisuje stan operacji.

Wartości w polu enum
OPERATION_STATE_UNSPECIFIED Nie określono.
INITIALIZING Prośba jest przygotowywana do przetworzenia.
PROCESSING Żądanie jest obecnie przetwarzane.
CANCELLING Żądanie jest w trakcie anulowania po tym, jak użytkownik wywołał w tej operacji funkcję google.longrunning.Operations.CancelOperation.
FINALIZING Prośba została przetworzona i jest w fazie finalizacji.
SUCCESSFUL Żądanie zostało zrealizowane.
FAILED Żądanie zostało przetworzone, ale wystąpił błąd.
CANCELLED Żądanie zostało anulowane, gdy użytkownik wywołał funkcję google.longrunning.Operations.CancelOperation.

Postęp

Opisuje postęp operacji. Jednostka pracy jest ogólna i należy ją interpretować w zależności od tego, gdzie jest używany element Progress.

Pola
estimated_work

int64

Szacowany czas pracy.

completed_work

int64

Ilość wykonanych zadań.

UpdateFieldRequest

Prośba dotycząca usługi FirestoreAdmin.UpdateField.

Pola
field

Field

Pole do zaktualizowania.

update_mask

FieldMask

Maska względem pola. Jeśli określisz wartość, tylko konfiguracja określona przez tę maskę pola zostanie zaktualizowana w tym polu.