Udostępnij za pośrednictwem


Uruchamianie poleceń zarządzania usługi Azure Data Explorer za pomocą działania polecenia usługi Azure Data Factory

Azure Data Factory (ADF) to oparta na chmurze usługa integracji danych, która umożliwia wykonywanie kombinacji działań na danych. Użyj usługi ADF, aby tworzyć oparte na danych przepływy pracy do organizowania i automatyzowania przenoszenia danych i przekształcania danych. Działanie polecenia usługi Azure Data Explorer w usłudze Azure Data Factory umożliwia uruchamianie poleceń zarządzania usługi Azure Data Explorer w ramach przepływu pracy usługi ADF. W tym artykule pokazano, jak utworzyć potok z działaniem wyszukiwania i działaniem ForEach zawierającym działanie polecenia usługi Azure Data Explorer.

Wymagania wstępne

Tworzenie nowego potoku

  1. Wybierz narzędzie ołówka Autor.

  2. Utwórz nowy potok, wybierając + pozycję Potok, a następnie z listy rozwijanej wybierz pozycję Potok .

    utwórz nowy potok.

Tworzenie działania Lookup

Działanie wyszukiwania może pobrać zestaw danych z dowolnego źródła danych obsługiwanego przez usługę Azure Data Factory. Dane wyjściowe z działania Lookup mogą być używane w programie ForEach lub innym działaniu.

  1. W okienku Działania w obszarze Ogólne wybierz działanie Odnośnik. Przeciągnij i upuść go na główną kanwę po prawej stronie.

    wybierz działanie wyszukiwania.

  2. Kanwa zawiera teraz utworzone działanie Lookup. Użyj kart poniżej kanwy, aby zmienić wszelkie odpowiednie parametry. W obszarze Ogólne zmień nazwę działania.

    edytowanie działania wyszukiwania.

    Napiwek

    Kliknij pusty obszar kanwy, aby wyświetlić właściwości potoku. Użyj karty Ogólne, aby zmienić nazwę potoku. Nasz potok nosi nazwę pipeline-4-docs.

Tworzenie zestawu danych usługi Azure Data Explorer w działaniu wyszukiwania

  1. W obszarze Ustawienia wybierz wstępnie utworzony zestaw danych źródłowy usługi Azure Data Explorer lub wybierz pozycję + Nowy, aby utworzyć nowy zestaw danych.

    dodaj zestaw danych w ustawieniach wyszukiwania.

  2. Wybierz zestaw danych usługi Azure Data Explorer (Kusto) w oknie Nowy zestaw danych. Wybierz pozycję Kontynuuj , aby dodać nowy zestaw danych.

    wybierz nowy zestaw danych.

  3. Nowe parametry zestawu danych usługi Azure Data Explorer są widoczne w obszarze Ustawienia. Aby zaktualizować parametry, wybierz pozycję Edytuj.

    ustawienia wyszukiwania za pomocą zestawu danych usługi Azure Data Explorer.

  4. Nowa karta AzureDataExplorerTable zostanie otwarta na głównej kanwie.

    • Wybierz pozycję Ogólne i edytuj nazwę zestawu danych.
    • Wybierz pozycję Połączenie, aby edytować właściwości zestawu danych.
    • Wybierz połączoną usługę z listy rozwijanej lub wybierz pozycję + Nowa, aby utworzyć nową połączoną usługę.

    Edytowanie właściwości zestawu danych usługi Azure Data Explorer.

  5. Podczas tworzenia nowej połączonej usługi zostanie otwarta strona Nowa połączona usługa (Azure Data Explorer):

     Nowa połączona usługa Azure Data Explorer.

    • Wybierz pozycję Nazwa połączonej usługi Azure Data Explorer. W razie potrzeby dodaj opis .
    • W obszarze Połącz za pośrednictwem środowiska Integration Runtime zmień bieżące ustawienia, jeśli to konieczne.
    • W obszarze Metoda wyboru konta wybierz klaster przy użyciu jednej z dwóch metod:
      • Wybierz przycisk radiowy Z subskrypcji platformy Azure i wybierz konto subskrypcji platformy Azure. Następnie wybierz klaster. Zwróć uwagę, że lista rozwijana będzie zawierać tylko klastry należące do użytkownika.
      • Zamiast tego wybierz przycisk radiowy Wprowadź ręcznie i wprowadź punkt końcowy (adres URL klastra).
    • Określ dzierżawę.
    • Wprowadź identyfikator jednostki usługi. Tę wartość można znaleźć w witrynie Azure Portal w obszarze> Identyfikator aplikacji — przegląd>aplikacji (klienta). Podmiot zabezpieczeń musi mieć odpowiednie uprawnienia zgodnie z poziomem uprawnień wymaganym przez używane polecenie.
    • Wybierz przycisk Klucz jednostki usługi i wprowadź klucz jednostki usługi.
    • Wybierz swoją bazę danych z menu rozwijanego. Alternatywnie zaznacz pole wyboru Edytuj i wprowadź nazwę bazy danych.
    • Wybierz pozycję Testuj połączenie , aby przetestować utworzone połączenie połączonej usługi. Jeśli możesz nawiązać połączenie z konfiguracją, zostanie wyświetlona zielona znacznik wyboru Połączenie zakończone pomyślnie .
    • Wybierz pozycję Zakończ , aby ukończyć tworzenie połączonej usługi.
  6. Po skonfigurowaniu połączonej usługi w obszarze AzureDataExplorerTable>Connection dodaj nazwę tabeli. Wybierz pozycję Podgląd danych, aby upewnić się, że dane są prawidłowo prezentowane.

    Zestaw danych jest teraz gotowy i możesz kontynuować edytowanie potoku.

Dodawanie zapytania do działania wyszukiwania

  1. W obszarze pipeline-4-docs Settings (Ustawienia potoku 4-docs>) dodaj zapytanie w polu tekstowym Zapytanie, na przykład:

    ClusterQueries
    | where Database !in ("KustoMonitoringPersistentDatabase", "$systemdb")
    | summarize count() by Database
    
  2. Zmień limit czasu zapytania lub bez obcinania i właściwości Tylko pierwszy wiersz zgodnie z potrzebami. W tym przepływie zachowamy domyślny limit czasu zapytania i usuń zaznaczenie pól wyboru.

    Końcowe ustawienia działania wyszukiwania.

Tworzenie działania dla każdego

Działanie For-Each służy do iterowania kolekcji i wykonywania określonych działań w pętli.

  1. Teraz do potoku dodasz działanie For-Each. To działanie spowoduje przetworzenie danych zwróconych z działania Lookup.

    • W okienku Działania w obszarze Iteracja i warunkowe wybierz działanie ForEach i przeciągnij je i upuść na kanwę.

    • Rysuj linię między danymi wyjściowymi działania Lookup a danymi wejściowymi działania ForEach na kanwie, aby je połączyć.

      Działanie ForEach.

  2. Wybierz działanie ForEach na kanwie. Na karcie Ustawienia poniżej:

    • Zaznacz pole wyboru Sekwencyjne pod kątem sekwencyjnego przetwarzania wyników wyszukiwania lub pozostaw je niezaznaczone, aby utworzyć przetwarzanie równoległe.

    • Ustaw liczbę partii.

    • W obszarze Elementy podaj następujące odwołanie do wartości wyjściowej: @activity('Lookup1').output.value

      Ustawienia działania ForEach.

Tworzenie działania polecenia usługi Azure Data Explorer w działaniu ForEach

  1. Kliknij dwukrotnie działanie ForEach na kanwie, aby otworzyć je na nowej kanwie, aby określić działania w programie ForEach.

  2. W okienku Działania w obszarze Azure Data Explorer wybierz działanie Polecenie usługi Azure Data Explorer i przeciągnij je i upuść na kanwę.

    Działanie polecenia usługi Azure Data Explorer.

  3. Na karcie Połączenie wybierz tę samą utworzoną wcześniej połączoną usługę.

    Karta połączenia działania polecenia usługi Azure Data Explorer.

  4. Na karcie Polecenie podaj następujące polecenie:

    .export
    async compressed
    into csv h"http://<storageName>.blob.core.windows.net/data/ClusterQueries;<storageKey>" with (
    sizeLimit=100000,
    namePrefix=export
    )
    <| ClusterQueries | where Database == "@{item().Database}"
    

    Polecenie nakazuje usłudze Azure Data Explorer wyeksportowanie wyników danego zapytania do magazynu obiektów blob w skompresowanym formacie. Jest on uruchamiany asynchronicznie (przy użyciu modyfikatora asynchronicznego). Zapytanie dotyczy kolumny bazy danych każdego wiersza w wyniku działania Lookup. Limit czasu polecenia można pozostawić bez zmian.

    działanie polecenia.

    Uwaga

    Działanie polecenia ma następujące limity:

    • Limit rozmiaru: rozmiar odpowiedzi 1 MB
    • Limit czasu: 20 minut (wartość domyślna), 1 godzina (maksimum).
    • W razie potrzeby możesz dołączyć zapytanie do wyniku przy użyciu metody AdminThenQuery, aby zmniejszyć wynikowy rozmiar/czas.
  5. Teraz potok jest gotowy. Możesz wrócić do głównego widoku potoku, klikając nazwę potoku.

    Potok poleceń usługi Azure Data Explorer.

  6. Wybierz pozycję Debuguj przed opublikowaniem potoku. Postęp potoku można monitorować na karcie Dane wyjściowe .

    dane wyjściowe działania polecenia usługi azure Data Explorer.

  7. Możesz opublikować wszystko , a następnie dodać wyzwalacz , aby uruchomić potok.

Dane wyjściowe poleceń zarządzania

Struktura danych wyjściowych działania polecenia jest szczegółowo poniżej. Te dane wyjściowe mogą być używane przez następne działanie w potoku.

Zwrócona wartość polecenia zarządzania bez asynchronicznego

W innej niż asynchroniczne polecenie zarządzania struktura zwróconej wartości jest podobna do struktury wyniku działania Lookup. Pole count wskazuje liczbę zwracanych rekordów. Stałe pole value tablicy zawiera listę rekordów.

{ 
    "count": "2", 
    "value": [ 
        { 
            "ExtentId": "1b9977fe-e6cf-4cda-84f3-4a7c61f28ecd", 
            "ExtentSize": 1214.0, 
            "CompressedSize": 520.0 
        }, 
        { 
            "ExtentId": "b897f5a3-62b0-441d-95ca-bf7a88952974", 
            "ExtentSize": 1114.0, 
            "CompressedSize": 504.0 
        } 
    ] 
} 

Zwrócona wartość polecenia zarządzania asynchronicznego

W asynchronicznych poleceniach zarządzania działanie sonduje tabelę operacji w tle do momentu zakończenia lub limitu czasu operacji asynchronicznych. W związku z tym zwrócona wartość będzie zawierać wynik .show operations OperationId dla danej właściwości OperationId . Sprawdź wartości właściwości State (Stan) i Status (Stan), aby zweryfikować pomyślne zakończenie operacji.

{ 
    "count": "1", 
    "value": [ 
        { 
            "OperationId": "910deeae-dd79-44a4-a3a2-087a90d4bb42", 
            "Operation": "TableSetOrAppend", 
            "NodeId": "", 
            "StartedOn": "2019-06-23T10:12:44.0371419Z", 
            "LastUpdatedOn": "2019-06-23T10:12:46.7871468Z", 
            "Duration": "00:00:02.7500049", 
            "State": "Completed", 
            "Status": "", 
            "RootActivityId": "f7c5aaaf-197b-4593-8ba0-e864c94c3c6f", 
            "ShouldRetry": false, 
            "Database": "MyDatabase", 
            "Principal": "<some principal id>", 
            "User": "<some User id>" 
        } 
    ] 
}