Optymalizowanie wydajności przepływów danych Gen2
Przekształcenia działają. Teraz nadszedł czas, aby uczynić je wydajnymi. Przepływ danych, który odświeża się w kilka minut zamiast godzin, oszczędza zasoby obliczeniowe i pozwala użytkownikom końcowym pracować z bieżącymi danymi. Usługa Dataflow Gen2 zawiera nowoczesnego ewaluatora zapytań w celu zwiększenia wydajności i obsługuje techniki, takie jak składanie zapytań i kroki tylko w wersji zapoznawczej w celu zoptymalizowania wykonywania odświeżania.
Nowoczesny Analizator Zapytań
Modern Query Evaluator zapewnia lepszą wydajność i niezawodność przekształceń Power Query w Dataflow Gen 2. Ta aktualizacja zapewnia lepszą optymalizację między typowymi wzorcami kształtowania, pomagając zespołom danych skrócić czas odświeżania na całej skalę i bezpieczniej skalować obciążenia transformacji w miarę wzrostu ilości danych.
Modern Query Evaluator jest domyślnie włączony dla wszystkich wystąpień usługi Dataflow Gen2 i zapewnia:
- Szybsze odświeżanie potoków przetwarzania wieloetapowego obejmujące łączenia, grupowanie, konwersje typów i złożone wyrażenia.
- Bardziej przewidywalne wykonywanie podczas skalowania pojedynczego przepływu danych do większych zestawów danych lub harmonogramów o wyższej częstotliwości
- Lepsze wykorzystanie zasobów dzięki ulepszonej optymalizacji zapytań
Nie musisz konfigurować żadnych elementów, aby korzystać z nowoczesnego ewaluatora zapytań — automatycznie przetwarza przekształcenia przepływu danych dzięki tym ulepszeniom wydajności.
Zrozumienie składania zapytań
Składanie zapytań to proces przenoszenia logiki transformacji z Power Query do źródła danych do wykonania. Zamiast pobierać wszystkie nieprzetworzone dane i przetwarzać je w akiecie Power Query, składanie zapytań tłumaczy kroki języka M na natywny język zapytań (na przykład SQL), który wykonuje źródło danych. Następnie źródło zwraca tylko przekształcone wyniki.
Takie podejście jest szybsze, ponieważ:
- Źródło danych zwykle ma więcej zasobów obliczeniowych i jest zoptymalizowane pod kątem wykonywania zapytań.
- Mniej transferów danych przez sieć, ponieważ filtrowanie i agregacja mają miejsce, zanim dane opuszczają źródło.
- Aparat Power Query wykonuje mniej przetwarzania, co skraca czas odświeżania i zużycie zasobów.
Istnieją trzy możliwe wyniki podczas oceny filtrowania zapytań:
| Outcome | Description |
|---|---|
| Pełne składanie | Wszystkie przekształcenia są wypychane do źródła danych. Silnik Power Query otrzymuje końcowy wynik przy minimalnym przetwarzaniu. |
| Częściowe składanie | Niektóre przekształcenia są przekazywane do źródła, a pozostałe kroki są uruchamiane w aparacie Power Query. |
| Brak składania | Żadne przekształcenia nie są przekazywane do źródła. Power Query pobiera nieprzetworzone dane i przetwarza wszystko lokalnie. |
Pełne składanie jest idealnym wynikiem dla wydajności. Częściowe składanie jest dopuszczalne, gdy tylko kilka lekkich kroków są uruchamiane lokalnie. Nie powinno się unikać dzielenia dużych zestawów danych, ponieważ zmusza to do przetwarzania wszystkich danych przez aparat Power Query.
Sprawdzanie, czy krok składa się
Możesz sprawdzić, czy określony krok zwija się, klikając prawym przyciskiem myszy krok w panelu Zastosowane kroki i szukając opcji Wyświetl zapytanie natywne.
- Jeśli opcja Wyświetl zapytanie natywne jest dostępna, krok zostaje przeniesiony do źródła danych.
- Jeśli opcja jest wyszarzona, ten krok i wszystkie poniższe kroki są uruchamiane w silniku Power Query, co oznacza, że zapytanie nie dokonuje się przekształcania.
Regularnie sprawdzaj składanie podczas tworzenia przekształceń. Znajomość miejsc, w których występują załamania, pomaga zrestrukturyzować kroki, aby zmaksymalizować wykorzystanie możliwości źródła.
Uwaga / Notatka
Składanie zapytań jest dostępne głównie w przypadku źródeł danych ze strukturą, takich jak bazy danych SQL i źródła danych OData. Źródła oparte na plikach, takie jak CSV i Excel, zwykle nie obsługują składania zapytań.
Stosuj wzorce przyjazne dla składania
Niektóre przekształcenia składają się niezawodnie do większości ustrukturyzowanych źródeł danych, podczas gdy inne przerywają składanie. Zrozumienie tego rozróżnienia ułatwia uporządkowanie kroków w celu uzyskania lepszej wydajności.
Przekształcenia, które zazwyczaj podlegają złożeniu:
- Filtrowanie wierszy (klauzule WHERE)
- Wybieranie lub usuwanie kolumn (WYBIERZ określone kolumny)
- Sortowanie wierszy (ORDER BY)
- Grupuj według i agreguj (GROUP BY z funkcjami SUM, COUNT i podobnymi)
- Scalanie zapytań z tego samego źródła (JOIN)
- Zmienianie typów danych (CAST)
- Zmienianie nazw kolumn (aliasy AS)
Przekształcenia, które zwykle przerywają składanie:
- Dodawanie kolumn niestandardowych ze złożonymi wyrażeniami języka M
- Operacje przestawne i odwłaszczane
- Scalanie zapytań z różnych źródeł danych
- Operacje korzystające z
Table.Bufferoceny wymuszenia - Niektóre przekształcenia tekstu z funkcjami specyficznymi dla języka M
pl-PL: Gdy występuje przerwanie składania w kroku, wszystkie kolejne kroki również są uruchamiane w silniku Power Query. Kolejność przekształceń jest ważna, aby obsługiwać składanie zapytań.
Korzystanie z kroków tylko w wersji zapoznawczej w celu wydajnej iteracji
Kroki tylko w wersji zapoznawczej umożliwiają dodawanie kroków przekształcania uruchamianych podczas podglądu danych i weryfikacji tworzenia, ale są wykluczone z końcowego wykonywania podczas odświeżania. Kroki w trybie zapoznawczym ułatwiają szybszą iterację, jednocześnie pomagając utrzymać czystą i wydajną logikę odświeżania produkcji.
Aby oznaczyć krok tylko w wersji zapoznawczej, kliknij prawym przyciskiem myszy krok w okienku Zastosowane kroki i wybierz pozycję Włącz tylko w podglądach. Typowe zastosowania dla kroków tylko do celów zapoznawczych obejmują:
- Przyspiesz tworzenie przez próbkowanie, filtrowanie lub ograniczanie wierszy w czasie projektowania, bez zmieniania wyniku produkcji
- Bezpieczniejsze eksperymentowanie podczas testowania nowych kroków — zachowaj logikę eksploracyjną poza zaplanowanym odświeżaniem
- Debugowanie określonych scenariuszy przez dodanie filtrów tymczasowych w celu skoncentrowania się na wierszach problemów
Kroki tylko w wersji zapoznawczej są przydatne podczas pracy z dużymi zestawami danych, w których chcesz zobaczyć reprezentatywny przykład podczas programowania, ale potrzebujesz pełnego zestawu danych w środowisku produkcyjnym.
Postępuj zgodnie z najlepszymi rozwiązaniami dotyczącymi wydajności
Oprócz procesu składania zapytań i Nowoczesnym silniku oceniania zapytań, istnieje kilka innych praktyk, które pomagają w efektywnym uruchamianiu przepływów danych.
Filtruj wcześnie. Zastosuj filtry wierszy jako pierwsze kroki zapytania. Zmniejszenie liczby wierszy na początku oznacza, że każda kolejna transformacja przetwarza mniej danych.
Wybierz kolumny na początku. Usuń kolumny, których nie potrzebujesz tak szybko, jak to możliwe. Mniejsza liczba kolumn oznacza mniej danych do przetwarzania i transferu.
Wyłącz niepotrzebne obciążenia. Jeśli zapytanie służy tylko jako zapytanie przejściowe lub referencyjne (na przykład tabela odnośników używana w scalaniu), kliknij prawym przyciskiem myszy zapytanie w okienku Zapytania i usuń zaznaczenie pozycji Włącz ładowanie. Ta funkcja zapobiega ładowaniu zapytania przejściowego do miejsca docelowego, skracając czas przetwarzania.
Użyj przejściowych przepływów danych. W przypadku złożonych scenariuszy oddziel wyodrębnianie od transformacji. Utwórz jeden przepływ danych, który wyodrębnia i tworzy etapy danych pierwotnych w usłudze Lakehouse. Utwórz drugi przepływ danych, który odczytuje z magazynu przejściowego lakehouse i stosuje przekształcenia. Ten wzorzec oferuje kilka korzyści:
- Logika wyodrębniania jest niezależna i może być odświeżona zgodnie z własnym harmonogramem.
- Wiele przepływów danych przekształceń może ponownie używać tych samych danych tymczasowych.
- Jeśli przekształcenie zakończy się niepowodzeniem, nieprzetworzone dane są nadal dostępne do ponownego przetwarzania.
Sparametryzuj dla ponownego użycia. Usługa Dataflow Gen2 obsługuje dwa podejścia do parametryzacji środowiska. Parametry publiczne są dostępne w standardowej wersji Dataflow Gen2 i umożliwiają definiowanie danych wejściowych do wielokrotnego użytku (takich jak wartości filtru lub nazwy docelowe), które mogą być zastępowane w czasie wykonywania w ramach przepływu danych. Fabric Biblioteki zmiennych zapewniają scentralizowane wartości konfiguracji na poziomie obszaru roboczego, do których odwołuje się bezpośrednio skrypt przepływu danych. Biblioteki Zmiennych Fabric wymagają Dataflow Gen2 z integracją ciągłą i ciągłym wdrażaniem jako wariant, który włączasz podczas tworzenia, wybierając opcję integracji z usługą Git. Oba podejścia zmniejszają dryf konfiguracji podczas promowania rozwiązań w środowiskach ciągłej integracji/ciągłego wdrażania.
Monitorowanie wydajności odświeżania. Użyj Centrum Monitorowania w Fabric oraz historii odświeżania przepływów danych, aby śledzić, jak długo trwa odświeżanie tych przepływów. Poszukaj trendów wskazujących rosnące zestawy danych lub nieefektywne przekształcenia. Powiadomienia e-mail informują o niepowodzeniach zaplanowanych odświeżeń, dzięki czemu możesz szybko reagować i rozwiązywać problemy, zanim wpłyną na odbiorców.
Poniższe rozwiązania ułatwiają skalowanie przepływów danych w miarę zwiększania ilości danych i zapewnia świeże i dostępne przekształcone dane na potrzeby analiz podrzędnych i obciążeń sztucznej inteligencji.