Uruchamianie poleceń usługi Azure Data Explorer za pomocą działania poleceń 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 utworzyć 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 Azure Data Factory umożliwia uruchamianie poleceń zarządzania Data Explorer platformy Azure 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 odnośnika

Działanie odnośnika może pobrać zestaw danych z dowolnego Azure Data Factory obsługiwanych źródeł danych. Dane wyjściowe z działania Lookup mogą być używane w ramach działania ForEach lub innego.

  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ć wszystkie odpowiednie parametry. W obszarze Ogólne zmień nazwę działania.

    edytowanie działania wyszukiwania.

    Porada

    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 usługi Azure Data Explorer Źródłowy 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ę + Nowy , aby utworzyć nową połączoną usługę.

    Edytuj 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):

    Azure Data Explorer nowej połączonej usługi.

    • 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 w razie potrzeby.
    • W obszarze Metoda wyboru konta wybierz klaster przy użyciu jednej z dwóch metod:
      • Wybierz przycisk radiowy Z subskrypcji platformy Azure i wybierz swoje 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 Azure Portal w obszarze Identyfikator aplikacji przeglądowej>>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świetlony zielony znacznik wyboru Połączenie zakończone powodzeniem .
    • 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 odnośnika

  1. Wobszarzepipeline-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 brak 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 For-Each

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

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

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

    • Rysuj linię między danymi wyjściowymi działania Lookup i 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 dla sekwencyjnego przetwarzania wyników wyszukiwania lub pozostaw pole wyboru niezaznaczone w celu utworzenia przetwarzania równoległego.

    • 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 ramach działania 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 Azure Data Explorer Command i przeciągnij je i upuść na kanwę.

    Działanie poleceń usługi Azure Data Explorer.

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

    karta połączenia działania polecenia w eksploratorze danych platformy Azure.

  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 powoduje, że platforma Azure Data Explorer wyeksportować wyniki danego zapytania do magazynu obiektów blob w formacie skompresowanym. Jest 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 innego niż asynchronizuj

W poleceniu zarządzania bez asynchronicznego struktura zwracanej 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 poleceniu zarządzania asynchronicznego działanie sonduje tabelę operacji w tle do momentu zakończenia operacji asynchronicznych lub limitu czasu. 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 ukoń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>" 
        } 
    ] 
}