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óre mogą być używane przez document.runQuery jako punkt początkowy i końcowy wyników zapytania.
Żądanie HTTP
POST https://firestore.googleapis.com/v1/{parent=projects/*/databases/*/documents}:partitionQuery
Adres URL używa składni transkodowania gRPC.
Parametry ścieżki
Parametry | |
---|---|
parent |
Wymagane. Nazwa zasobu nadrzędnego. W formacie: |
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "partitionCount": string, "pageToken": string, "pageSize": integer, // Union field |
Pola | |
---|---|
partitionCount |
Żą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. |
pageToken |
Wartość Na przykład dwa kolejne wywołania korzystające z parametru pageToken mogą zwrócić:
Aby uzyskać pełny zestaw wyników uporządkowany według wyników zapytania dostarczonego w operacji document.partitionQuery, zestawy wyników powinny zostać scalone: kursor A, kursor B, kursor M, kursor Q, kursor U, kursor W |
pageSize |
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: |
|
structuredQuery |
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: |
|
readTime |
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. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
Treść odpowiedzi
Odpowiedź dla: Firestore.PartitionQuery
.
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{
"partitions": [
{
object ( |
Pola | |
---|---|
partitions[] |
Wyniki partycjonowania. Każda partycja jest punktem podziału, który może być używany przez document.runQuery jako punkt początkowy lub końcowy wyników zapytania. Żądania document.runQuery muszą być wysyłane za pomocą tego samego zapytania, które zostało użyte w tym żądaniu. Kursory partycji zostaną uporządkowane w tej samej kolejności co wyniki zapytania dostarczonego do document.partitionQuery. Jeśli na przykład żądanie document.partitionQuery zwraca kursory A i B partycji, uruchomienie tych 3 zapytań spowoduje zwrócenie całego zbioru 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. |
nextPageToken |
Token strony, który może być używany do żądania dodatkowego zestawu wyników, maksymalnie do liczby określonej przez |
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).