Udostępnij za pośrednictwem


Najlepsze rozwiązania dotyczące projektowania i opracowywania złożonych przepływów danych

Jeśli opracowywany przepływ danych jest coraz większy i bardziej złożony, oto kilka rzeczy, które można zrobić, aby ulepszyć oryginalny projekt.

Podział go na wiele przepływów danych

Nie rób wszystkiego w jednym przepływie danych. Nie tylko pojedynczy, złożony przepływ danych sprawia, że proces przekształcania danych jest dłuższy, ale także utrudnia zrozumienie i ponowne użycie przepływu danych. Podzielenie przepływu danych na wiele przepływów danych może odbywać się przez oddzielenie tabel w różnych przepływach danych, a nawet jednej tabeli do wielu przepływów danych. Możesz użyć koncepcji tabeli obliczeniowej lub tabeli połączonej, aby utworzyć część transformacji w jednym przepływie danych i użyć jej ponownie w innych przepływach danych.

Dzielenie przepływów danych przekształcania danych z przepływów danych przejściowych/wyodrębniania

Niektóre przepływy danych tylko do wyodrębniania danych (czyli przemieszczania przepływów danych) i innych tylko do przekształcania danych są pomocne nie tylko w przypadku tworzenia wielowarstwowej architektury, ale także pomaga zmniejszyć złożoność przepływów danych. Niektóre kroki po prostu wyodrębniają dane ze źródła danych, takie jak pobieranie danych, nawigacja i zmiany typu danych. Oddzielając przejściowe przepływy danych i przepływy danych przekształcania, możesz ułatwić opracowywanie przepływów danych.

Multilayered dataflow architecture.

Obraz przedstawiający dane wyodrębnione ze źródła danych do przejściowych przepływów danych, w których tabele są przechowywane w usłudze Dataverse lub Azure Data Lake Storage. Następnie dane są przenoszone do przepływów danych przekształcania, w których dane są przekształcane i konwertowane na strukturę magazynu danych. Następnie dane są przenoszone do modelu semantycznego.

Korzystanie z funkcji niestandardowych

Funkcje niestandardowe są przydatne w scenariuszach, w których należy wykonać pewną liczbę kroków dla wielu zapytań z różnych źródeł. Funkcje niestandardowe można opracowywać za pomocą interfejsu graficznego w Edytor Power Query lub za pomocą skryptu języka M. Funkcje można używać ponownie w przepływie danych w dowolnej tylu tabelach.

Posiadanie funkcji niestandardowej ułatwia posiadanie tylko jednej wersji kodu źródłowego, więc nie trzeba duplikować kodu. W rezultacie utrzymywanie logiki przekształcania dodatku Power Query i całego przepływu danych jest znacznie łatwiejsze. Aby uzyskać więcej informacji, przejdź do następującego wpisu w blogu: Custom Functions Made Easy in Power BI Desktop (Funkcje niestandardowe wykonane w programie Power BI Desktop).

Screenshot of the Queries pane with the Get Holidays custom function and its data emphasized.

Uwaga

Czasami może zostać wyświetlone powiadomienie z informacją, że do odświeżenia przepływu danych przy użyciu funkcji niestandardowej jest wymagana pojemność Premium. Możesz zignorować ten komunikat i ponownie otworzyć edytor przepływu danych. Zwykle rozwiązuje to problem, chyba że funkcja odwołuje się do zapytania "włączonego ładowania".

Umieszczanie zapytań w folderach

Używanie folderów dla zapytań ułatwia grupowanie powiązanych zapytań. Podczas opracowywania przepływu danych poświęcaj trochę więcej czasu na rozmieszczanie zapytań w folderach, które mają sens. Korzystając z tego podejścia, można łatwiej znaleźć zapytania w przyszłości, a obsługa kodu jest znacznie łatwiejsza.

Korzystanie z tabel obliczeniowych

Obliczone tabele nie tylko sprawiają, że przepływ danych jest bardziej zrozumiały, ale także zapewnia lepszą wydajność. Gdy używasz tabeli obliczeniowej, inne tabele, do których się odwołujesz, są pobieranie danych z tabeli "już przetworzonej i przechowywanej". Transformacja jest znacznie prostsza i szybsza.

Korzystanie z ulepszonego aparatu obliczeniowego

W przypadku przepływów danych opracowanych w portalu administracyjnym usługi Power BI upewnij się, że korzystasz z ulepszonego aparatu obliczeniowego, wykonując sprzężenia i przekształcenia filtrów najpierw w obliczonej tabeli przed wykonaniem innych typów przekształceń.

Podziel wiele kroków na wiele zapytań

Trudno śledzić dużą liczbę kroków w jednej tabeli. Zamiast tego należy podzielić dużą liczbę kroków na wiele tabel. Możesz użyć opcji Włącz ładowanie dla innych zapytań i wyłączyć je, jeśli są one zapytaniami pośrednimi, i załadować tylko końcową tabelę za pośrednictwem przepływu danych. Jeśli masz wiele zapytań z mniejszymi krokami w każdym z nich, łatwiej jest użyć diagramu zależności i śledzić każde zapytanie w celu dalszego badania, zamiast zagłębiać się w setki kroków w jednym zapytaniu.

Dodawanie właściwości dla zapytań i kroków

Dokumentacja jest kluczem do łatwego obsługi kodu. W dodatku Power Query można dodawać właściwości do tabel, a także wykonywać kroki. Tekst dodany we właściwościach jest wyświetlany jako etykietka narzędzia po umieszczeniu wskaźnika myszy na tym zapytaniu lub kroku. Ta dokumentacja pomaga zachować model w przyszłości. Po zapoznaniu się z tabelą lub krokiem możesz zrozumieć, co się tam dzieje, zamiast przemyśleć i pamiętać, co zrobiono w tym kroku.

Upewnij się, że pojemność znajduje się w tym samym regionie

Przepływy danych nie obsługują obecnie wielu krajów ani regionów. Pojemność Premium musi znajdować się w tym samym regionie co dzierżawa usługi Power BI.

Oddzielanie źródeł lokalnych od źródeł w chmurze

Zalecamy utworzenie oddzielnego przepływu danych dla każdego typu źródła, takiego jak lokalny, chmurowy, SQL Server, Spark i Dynamics 365. Rozdzielenie przepływów danych według typu źródła ułatwia szybkie rozwiązywanie problemów i pozwala uniknąć limitów wewnętrznych podczas odświeżania przepływów danych.

Oddzielanie przepływów danych na podstawie zaplanowanego odświeżania wymaganego dla tabel

Jeśli masz tabelę transakcji sprzedaży, która jest aktualizowana w systemie źródłowym co godzinę i masz tabelę mapowania produktów, która jest aktualizowana co tydzień, podziel te dwie tabele na dwa przepływy danych z różnymi harmonogramami odświeżania danych.

Unikaj planowania odświeżania tabel połączonych w tym samym obszarze roboczym

Jeśli regularnie blokujesz przepływy danych zawierające połączone tabele, może to być spowodowane odpowiednim, zależnym przepływem danych w tym samym obszarze roboczym, który jest zablokowany podczas odświeżania przepływu danych. Takie blokowanie zapewnia dokładność transakcyjną i gwarantuje, że oba przepływy danych zostaną pomyślnie odświeżone, ale może zablokować edytowanie.

Jeśli skonfigurujesz oddzielny harmonogram połączonego przepływu danych, przepływy danych mogą być niepotrzebnie odświeżane i blokować edytowanie przepływu danych. Istnieją dwa zalecenia, aby uniknąć tego problemu:

  • Nie ustawiaj harmonogramu odświeżania połączonego przepływu danych w tym samym obszarze roboczym co źródłowy przepływ danych.
  • Jeśli chcesz oddzielnie skonfigurować harmonogram odświeżania i chcesz uniknąć zachowania blokującego, przenieś przepływ danych do oddzielnego obszaru roboczego.