Korzystanie z danych usługi Azure Databricks na platformie Microsoft Power Platform

Na tej stronie wyjaśniono, jak używać danych usługi Azure Databricks z następujących platform po utworzeniu połączenia:

  • Power Apps: Twórz aplikacje, które mogą odczytywać i zapisywać dane w usłudze Azure Databricks, zachowując jednocześnie mechanizmy zarządzania usługi Azure Databricks.
  • Power Automate: twórz przepływy i dodawaj akcje, które umożliwiają wykonywanie niestandardowego kodu SQL lub istniejącego zadania i uzyskiwanie wyników.
  • Copilot Studio: Tworzenie agentów niestandardowych przy użyciu danych Azure Databricks jako źródła wiedzy lub łączenie agentów genie jako narzędzi. Zobacz Używanie danych Azure Databricks w Microsoft Copilot Studio.

Warunki wstępne

Przed nawiązaniem połączenia z usługą Azure Databricks z poziomu platformy Power Platform należy utworzyć połączenie z usługą Azure Databricks na platformie Microsoft Power Platform.

Użyj danych Azure Databricks do tworzenia aplikacji w kanwie Power

Aby dodać dane usługi Azure Databricks do aplikacji, wykonaj następujące czynności:

  1. Na lewym pasku nawigacyjnym w usłudze Power Apps kliknij pozycję Utwórz.
  2. Kliknij przycisk Rozpocznij od pustej kanwy i wybierz żądany rozmiar kanwy, aby utworzyć nową aplikację kanwy.
  3. W swojej aplikacji kliknij pozycję Dodaj łączniki danych >> Azure Databricks. Kliknij połączenie Azure Databricks, które utworzyłeś.
  4. Wybierz katalog z paska bocznego „Wybierz zestaw danych”.
  5. Na pasku bocznym Wybierz zestaw danych wybierz wszystkie tabele, z którymi chcesz połączyć aplikację kanwy.
  6. Kliknij Połącz.

Operacje na danych w usłudze Power Apps:

Łącznik obsługuje operacje tworzenia, aktualizowania i usuwania, ale tylko w przypadku tabel, które mają zdefiniowany klucz podstawowy. Podczas wykonywania operacji tworzenia należy zawsze określić klucz podstawowy.

Usługa Azure Databricks obsługuje wygenerowane kolumny tożsamości. W takim przypadku wartości klucza podstawowego są generowane automatycznie na serwerze podczas tworzenia wierszy i nie można ich określić ręcznie.

Tworzenie przepływów usługi Power Automate przy użyciu danych usługi Azure Databricks

Interfejsy API wykonywania instrukcji i API zadań platformy Azure Databricks są dostępne w Power Automate, co umożliwia pisanie instrukcji SQL i uruchamianie istniejących zadań. Aby utworzyć przepływ usługi Power Automate przy użyciu usługi Azure Databricks jako akcji, wykonaj następujące czynności:

  1. Na lewym pasku nawigacyjnym w usłudze Power Automate kliknij pozycję Utwórz.

  2. Utwórz przepływ i dodaj dowolny typ wyzwalacza.

  3. W nowym przepływie kliknij + i wyszukaj "Databricks", aby sprawdzić dostępne akcje.

  4. Aby napisać zapytanie SQL, wybierz jedną z następujących akcji:

    • Wykonaj instrukcję SQL: napisz i uruchom instrukcję SQL. Wprowadź następujące informacje:

      • W polu Treść/warehouse_id wprowadź identyfikator magazynu, na którym ma zostać wykonana instrukcja SQL.
      • W polu Treść/statement_id wprowadź identyfikator instrukcji SQL do wykonania.

      Aby uzyskać więcej informacji na temat parametrów zaawansowanych, zobacz dokumentację interfejsu API.

    • Sprawdź stan i uzyskaj wyniki: sprawdź stan instrukcji SQL i zbierz wyniki. Wprowadź następujące informacje:

      • W polu Identyfikator instrukcji wprowadź identyfikator zwrócony po wykonaniu instrukcji SQL.

      Aby uzyskać więcej informacji na temat parametru, zobacz dokumentację interfejsu API.

    • Anuluj wykonywanie instrukcji: Kończenie wykonywania instrukcji SQL. Wprowadź następujące informacje:

      • W polu Identyfikator instrukcji wprowadź identyfikator instrukcji SQL, która ma zostać zakończona.

      Aby uzyskać więcej informacji na temat parametru, zobacz dokumentację interfejsu API.

    • Uzyskaj wynik według indeksu fragmentów: Pobierz wyniki według indeksu fragmentów, który jest odpowiedni dla dużych zestawów wyników. Wprowadź następujące informacje:

      • W polu Identyfikator instrukcji wprowadź identyfikator instrukcji SQL, której wyniki chcesz pobrać.
      • W polu Indeks fragmentów wprowadź docelowy indeks fragmentów.

      Aby uzyskać więcej informacji na temat parametrów, zobacz dokumentację interfejsu API.

  5. Aby korzystać z istniejącego zadania usługi Azure Databricks, wybierz jedną z następujących akcji:

    • Lista zadań: Pobiera listę zadań. Aby uzyskać więcej informacji, zobacz dokumentację interfejsu API.
    • Wyzwalanie nowego uruchomienia zadania: Uruchamia zadanie i zwraca run_id identyfikator uruchomienia. Aby uzyskać więcej informacji, zobacz dokumentację interfejsu API.
    • Pobierz jedno uruchomienie zadania: Zwraca metadane dotyczące uruchomienia, w tym stan uruchomienia (np. RUNNING, SUCCESS, FAILED), godzinę rozpoczęcia i zakończenia, czas trwania uruchomienia, informacje o klastrze itd. Aby uzyskać więcej informacji, zobacz dokumentację interfejsu API.
    • Anuluj bieg: Anuluje uruchomienie zlecenia lub uruchomienie zadania. Aby uzyskać więcej informacji, zobacz dokumentację interfejsu API.
    • Pobierz wynik jednego uruchomienia: Pozyskuje wynik oraz metadane pojedynczego zadania lub uruchomienia. Aby uzyskać więcej informacji, zobacz dokumentację interfejsu API.

Tworzenie tabel wirtualnych usługi Dataverse przy użyciu danych usługi Azure Databricks

Tabele wirtualne usługi Dataverse można również utworzyć za pomocą łącznika usługi Azure Databricks. Tabele wirtualne, znane również jako jednostki wirtualne, integrują dane z systemów zewnętrznych z usługą Microsoft Dataverse. Tabela wirtualna definiuje tabelę w usłudze Dataverse bez przechowywania tabeli fizycznej w bazie danych Dataverse. Aby dowiedzieć się więcej o tabelach wirtualnych, zobacz Wprowadzenie do tabel wirtualnych (jednostek).

Note

Chociaż tabele wirtualne nie zużywają pojemności magazynu Dataverse, Databricks zaleca używanie połączeń bezpośrednich dla lepszej wydajności.

Musisz mieć rolę Konfigurator systemu lub Administrator systemu. Aby uzyskać więcej informacji, zobacz Role zabezpieczeń dla platformy Power Platform.

Wykonaj następujące kroki, aby utworzyć tabelę wirtualną Usługi Dataverse:

  1. W usłudze Power Apps na pasku bocznym kliknij pozycję Tabele.
  2. Kliknij pozycję + Nowa tabela na pasku menu i wybierz pozycję Utwórz tabelę wirtualną.
  3. Wybierz istniejące połączenie usługi Azure Databricks lub utwórz nowe połączenie z usługą Azure Databricks. Aby dodać nowe połączenie, zobacz Tworzenie połączenia usługi Azure Databricks na platformie Microsoft Power Platform.
    • Databricks zaleca użycie połączenia service principal w celu utworzenia tabeli wirtualnej.
  4. Kliknij przycisk Dalej.
  5. Wybierz tabele, które mają być reprezentowane jako tabela wirtualna usługi Dataverse.

    Note

    Tabele wirtualne usługi Dataverse wymagają klucza podstawowego. Klucz musi być identyfikatorem GUID (ciągiem znaków), typu bigInt lub liczbą całkowitą. Widoki nie mogą być tabelami wirtualnymi, ale zmaterializowane widoki mogą być.

  6. Kliknij przycisk Dalej.
  7. Skonfiguruj tabelę wirtualną, aktualizując szczegóły tabeli w razie potrzeby.
  8. Kliknij przycisk Dalej.
  9. Potwierdź szczegóły źródła danych i kliknij przycisk Zakończ.
  10. Użyj tabeli wirtualnej Dataverse w usługach Power Apps, Power Automate i Copilot Studio.

Aby uzyskać listę znanych ograniczeń tabel wirtualnych usługi Dataverse, zobacz Znane ograniczenia i rozwiązywanie problemów.

Czy należy używać tabel wirtualnych lub bezpośredniego połączenia?

Tabele wirtualne usługi Dataverse i bezpośrednie połączenie oferują różne zalety. Wybrana metoda zależy od przypadku użycia. Poniższa tabela zawiera podsumowanie głównych możliwości każdej metody.

Metoda dostępu do danych Przekazywanie poświadczeń użytkownika końcowego za pośrednictwem protokołu OAuth Kopiowanie zerowe Czytaj Pisanie do Azure Databricks Aplikacje Canvas Aplikacje oparte na modelu
Połączenie bezpośrednie
Tabele wirtualne usługi Dataverse

Przeprowadzanie aktualizacji wsadowych

Jeśli musisz wykonać zbiorcze operacje tworzenia, aktualizowania lub usuwania w odpowiedzi na dane wejściowe usługi Power Apps, usługa Databricks zaleca zaimplementowanie przepływu usługi Power Automate. W tym celu wykonaj następujące czynności:

  1. Utwórz aplikację Canvas przy użyciu połączenia Azure Databricks w usłudze Power Apps.

  2. Utwórz przepływ usługi Power Automate za pomocą połączenia usługi Azure Databricks i użyj usługi Power Apps jako wyzwalacza.

  3. W wyzwalaczu usługi Power Automate dodaj pola wejściowe, które chcesz przekazać z usługi Power Apps do usługi Power Automate.

  4. Utwórz obiekt kolekcji w usłudze Power Apps, aby zebrać wszystkie zmiany.

  5. Dodaj przepływ Power Automate do aplikacji Canvas.

  6. Wywołaj przepływ Power Automate z aplikacji canvas i iteruj po kolekcji, używając polecenia ForAll.

    ForAll(collectionName, FlowName.Run(input field 1, input field 2, input field 3, …)
    

Współbieżne zapisy

Współbieżność na poziomie wiersza zmniejsza konflikty między współbieżnymi operacjami zapisu, wykrywając zmiany na poziomie wiersza i automatycznie rozwiązując konflikty, które występują, gdy współbieżne zapisy aktualizują lub usuwają różne wiersze w tym samym pliku danych.

Współbieżność na poziomie wiersza jest obsługiwana w Databricks Runtime 14.2 lub nowszym. Współbieżność na poziomie wiersza jest domyślnie obsługiwana dla następujących typów tabel:

  • Tabele z włączonymi wektorami usuwania i bez partycjonowania
  • Tabele z klastrowaniem płynnym, chyba że wektory usuwania są wyłączone

Aby włączyć wektory usuwania, uruchom następujące polecenie SQL.

ALTER TABLE table_name SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);

Aby uzyskać więcej informacji na temat konfliktów zapisu współbieżnego w usłudze Azure Databricks, zobacz Poziomy izolacji i konflikty zapisu.

Limitations

Ograniczenia usługi Power Apps

Następujące formuły PowerFx obliczają wartości przy użyciu tylko danych pobranych lokalnie:

Category Formula
Funkcja tabeli
  • Grupuj wg
  • Distinct
Aggregation
  • CountRows
  • StdevP
  • StdevS