Query Execution - Execute Query

Wykonuje zapytanie względem przepływu danych i zwraca wynik.
Wykonuje określone zapytanie względem przepływu danych i przesyła strumieniowo wynik z powrotem do obiektu wywołującego. Obsługuje używanie niestandardowych dokumentów mashup dla zaawansowanych scenariuszy.

Ten interfejs API obsługuje długotrwałych operacji (LRO).

Permissions

Obiekt wywołujący musi mieć uprawnienia do wykonywania dla przepływu danych.

Wymagane zakresy delegowane

Dataflow.Execute.All lub Item.Execute.All.

Ograniczenia

Zapytania mogą być uruchamiane przez maksymalnie 90 sekund.

Tożsamości obsługiwane przez Microsoft Entra

To API obsługuje tożsamości Microsoft wymienione w tej sekcji.

Tożsamość Support
User Tak
Główne usługi i Tożsamości zarządzane Tak

Formaty odpowiedzi

Użyj nagłówka Accept , aby wynegocjować typ nośnika odpowiedzi. Obecnie format przesyłania strumieniowego apache Arrow jest jedynym dostępnym formatem odpowiedzi; w przyszłości mogą być oferowane dodatkowe formaty.

Format przesyłania strumieniowego strzałki apache

Typ nośnika:application/vnd.apache.arrow.stream

Podczas wysyłania tego typu nośnika pq-arrow-versionwymagany jest parametr typu nośnika i wybiera wersję kodowania strzałki:

  • pq-arrow-version=1 — oryginalne kodowanie apache arrow. Zgodność ze wszystkimi przepływami danych, w tym tymi, które łączą się za pośrednictwem lokalnej bramy danych.
  • pq-arrow-version=2 — nowsze kodowanie Apache Arrow z lepszą wydajnością przesyłania strumieniowego. Nieobsługiwane w przypadku przepływów danych łączących się za pośrednictwem lokalnej bramy danych.

Przykład: Accept: application/vnd.apache.arrow.stream;pq-arrow-version=2

Accept Jeśli nagłówek zostanie całkowicie pominięty (lub */* zostanie wysłany), odpowiedź zostanie domyślnie ustawiona na application/vnd.apache.arrow.stream;pq-arrow-version=1.

Interfejs

POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/dataflows/{dataflowId}/executeQuery

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
dataflowId
path True

string (uuid)

Identyfikator przepływu danych.

workspaceId
path True

string (uuid)

Identyfikator przestrzeni roboczej.

Nagłówek żądania

Nazwa Wymagane Typ Opis
Accept

string

Pożądany rodzaj mediów w odpowiedzi. Zobacz opis operacji, aby zapoznać się z listą obsługiwanych formatów odpowiedzi. Obecnie obsługiwany jest tylko application/vnd.apache.arrow.stream parametr ; podczas wysyłania tego typu nośnika pq-arrow-version parametr jest wymagany i musi mieć 1 wartość lub 2 (np. application/vnd.apache.arrow.stream;pq-arrow-version=1). Jeśli nagłówek zostanie całkowicie pominięty, zostanie użyta wartość domyślna application/vnd.apache.arrow.stream;pq-arrow-version=1 .

Treść żądania

Nazwa Wymagane Typ Opis
queryName True

string

Nazwa zapytania do wykonania z przepływu danych (lub z niestandardowego dokumentu mashup, jeśli podano).

customMashupDocument

string

Opcjonalny niestandardowy dokument mashupu umożliwiający zastąpienie domyślnego mashupu przepływu danych.

Odpowiedzi

Nazwa Typ Opis
200 OK

file

Wynik zapytania został pomyślnie przekazany strumieniowo. Treść odpowiedzi jest kodowana w typie nośnika wynegocjowanym za pośrednictwem nagłówka Accept żądania (zobacz opis operacji listy obsługiwanych formatów odpowiedzi).

Gdy odpowiedź jest w formacie przesyłania strumieniowego Apache Arrow (application/vnd.apache.arrow.streamjedynym dostępnym obecnie formatem), wyniki są przesyłane strumieniowo jako wywołanie IPC strzałki; zwracana wersja kodowania strzałki odpowiada pq-arrow-version parametrowi wysłanego w nagłówku żądania Accept (wartość domyślna 1). Zapoznaj się z dokumentacją strzałki , aby dowiedzieć się, jak odczytywać strumień w języku Python i innych językach. Błędy napotkane podczas wykonywania zapytania lub przesyłania strumieniowego są zgłaszane w dodatkowej kolumnie na końcu o nazwie "Metadane strzałki PQ".

202 Accepted

Żądanie zaakceptowane, wykonywanie zapytania w toku.

Nagłówki

  • Location: string
  • x-ms-operation-id: string
  • Retry-After: integer
429 Too Many Requests

ErrorResponse

Przekroczono limit szybkości usługi. Serwer zwraca nagłówek wskazujący Retry-After w sekundach, jak długo klient musi czekać przed wysłaniem dodatkowych żądań.

Nagłówki

Retry-After: integer

Other Status Codes

ErrorResponse

Typowe kody błędów:

  • DataflowExecuteQueryError — wykonywanie zapytania nie powiodło się. Niektóre możliwe przyczyny to: określona nazwa zapytania jest nieprawidłowa lub pusta, niestandardowy dokument mashupu jest nieprawidłowy lub nie można odnaleźć określonej nazwy zapytania w przepływie danych (lub w niestandardowym dokumencie mashup, jeśli podano).

Definicje

Nazwa Opis
ErrorRelatedResource

Obiekt szczegółów zasobu powiązanego z błędem.

ErrorResponse

Odpowiedź na błąd.

ErrorResponseDetails

Szczegóły odpowiedzi na błąd.

ExecuteQueryRequest

Żądanie ładunku do wykonania zapytania względem przepływu danych.

ErrorRelatedResource

Obiekt szczegółów zasobu powiązanego z błędem.

Nazwa Typ Opis
resourceId

string

Identyfikator zasobu, który jest zaangażowany w błąd.

resourceType

string

Typ zasobu, który jest zaangażowany w błąd.

ErrorResponse

Odpowiedź na błąd.

Nazwa Typ Opis
errorCode

string

Określony identyfikator, który zawiera informacje o stanie błędu, co pozwala na ustandaryzowaną komunikację między naszą usługą a jej użytkownikami.

isRetriable

boolean

Jeśli to prawda, żądanie można ponowić. Użyj nagłówka Retry-After odpowiedzi, aby określić opóźnienie, jeśli jest dostępne.

message

string

Czytelna reprezentacja błędu przez człowieka.

moreDetails

ErrorResponseDetails[]

Lista dodatkowych szczegółów błędu.

relatedResource

ErrorRelatedResource

Szczegóły zasobu powiązanego z błędem.

requestId

string (uuid)

Identyfikator żądania skojarzonego z błędem.

ErrorResponseDetails

Szczegóły odpowiedzi na błąd.

Nazwa Typ Opis
errorCode

string

Określony identyfikator, który zawiera informacje o stanie błędu, co pozwala na ustandaryzowaną komunikację między naszą usługą a jej użytkownikami.

message

string

Czytelna reprezentacja błędu przez człowieka.

relatedResource

ErrorRelatedResource

Szczegóły zasobu powiązanego z błędem.

ExecuteQueryRequest

Żądanie ładunku do wykonania zapytania względem przepływu danych.

Nazwa Typ Opis
customMashupDocument

string

Opcjonalny niestandardowy dokument mashupu umożliwiający zastąpienie domyślnego mashupu przepływu danych.

queryName

string

Nazwa zapytania do wykonania z przepływu danych (lub z niestandardowego dokumentu mashup, jeśli podano).