Blog JSystems - uwalniamy wiedzę!

Szukaj

Power Query w Power BI

Odświeżanie w usłudze Power BI wymaga bramy - pliki lokalne i SQL Server w firmie

W skrócie

  • Raport odświeża się w Power BI Desktop, a w usłudze Power BI odświeżanie wymaga bramy danych, bo źródłem są pliki z dysku, udział sieciowy albo SQL Server w sieci firmy.
  • Usługa Power BI działa w chmurze Microsoftu i nie ma bezpośredniego połączenia z siecią firmy. Takie źródła odczytuje za nią lokalna brama danych (ang. on-premises data gateway) zainstalowana w Twojej sieci.
  • Zainstaluj bramę w trybie standardowym na stale włączonym komputerze i dodaj do niej każde źródło z tą samą nazwą serwera albo ścieżką co w Power BI Desktop. Pliki możesz też przenieść do OneDrive lub SharePoint i czytać je bez bramy.

Ten problem pojawia się zaraz po pierwszej publikacji raportu, który w Power BI Desktop czyta pliki z folderu na dysku albo bazę SQL Server w sieci firmowej. Odświeżanie w usłudze Power BI wymaga wtedy bramy danych. Pokazujemy, kiedy brama jest konieczna, jak ją ustawić, żeby odświeżanie działało według harmonogramu, i kiedy prościej przenieść pliki do chmury.

Jak to wygląda w praktyce

W Power BI Desktop raport odświeża się bez błędów. Po publikacji w ustawieniach modelu semantycznego nie da się włączyć harmonogramu ani odświeżyć danych na żądanie, dopóki model nie ma połączenia przez bramę (ang. gateway connection). Microsoft opisuje to wprost: jeśli model korzysta ze źródła, do którego Power BI nie ma bezpośredniego połączenia sieciowego, przed włączeniem harmonogramu albo odświeżenia na żądanie trzeba skonfigurować połączenie bramy.

Dotyczy to typowych źródeł z kursu: folderu z miesięcznymi plikami CSV na dysku C:, skoroszytów zapisanych na dysku i bazy Nordvella na SQL Server w sieci firmy. Okno Ustawienia źródła danych w Power BI Desktop pokazuje wszystkie źródła pliku, więc od razu widzisz, których usługa nie osiągnie sama.

Dlaczego tak się dzieje

Usługa Power BI wykonuje zapytania w chmurze Microsoftu. Ścieżka C:\Dane\Nordvella\Sprzedaz_miesieczna wskazuje dysk Twojego komputera, a serwer SQL Server w sieci firmy jest osiągalny tylko z tej sieci. Folder zsynchronizowany z OneDrive też ma ścieżkę na dysku komputera, więc dla usługi niczym się nie różni od zwykłego folderu lokalnego.

Pomostem jest lokalna brama danych. Według Microsoftu to aplikacja dla Windows instalowana w sieci firmy, która łączy lokalne źródła z usługami w chmurze i nie wymaga otwierania portów przychodzących, tylko wychodzących. Brama występuje w dwóch trybach. Tryb standardowy obsługuje wielu użytkowników i wiele źródeł oraz współpracuje z Power BI, Fabric, Power Apps i innymi usługami. Tryb osobisty (ang. personal mode) służy jednej osobie, nie da się go udostępnić i działa tylko z Power BI. Microsoft zaleca tryb standardowy.

Brama dopasowuje źródła po nazwach. Dokumentacja mówi, że nazwa serwera i bazy w źródle dodanym do bramy musi być taka sama jak w Power BI Desktop: adres IP w Desktop oznacza adres IP w bramie, a zapis SERWER\INSTANCJA tak samo. Jeśli model ma kilka źródeł, do bramy trzeba dodać każde z nich, inaczej brama nie pojawi się na liście do wyboru.

Jak to rozwiązać krok po kroku

  1. Zdecyduj: brama czy chmura. Jeśli źródłem są tylko pliki, prościej przenieść je do OneDrive dla firm albo biblioteki SharePoint i czytać przez adres witryny. Brama jest potrzebna, gdy źródło musi zostać w sieci firmy, na przykład baza SQL Server albo dysk sieciowy, którego nie przeniesiesz.
  2. Pliki w chmurze: zmień źródło na SharePoint. Wgraj folder do OneDrive i zamiast Folder.Files użyj łącznika Folder programu SharePoint, czyli funkcji SharePoint.Files. Podajesz adres główny witryny, a nie folderu, w postaci https://twojafirma-my.sharepoint.com/personal/twoje_konto/, a pliki zawężasz krokiem Table.SelectRows(Źródło, each Text.Contains([Folder Path], "Sprzedaz_miesieczna")). Filtr rozróżnia wielkość liter, więc przy innym zapisie nazwy folderu dodaj trzeci argument Comparer.OrdinalIgnoreCase.
  3. Brama: zainstaluj ją w trybie standardowym na właściwym komputerze. Microsoft odradza instalację na laptopie i innym komputerze, który bywa wyłączony, uśpiony albo odłączony od internetu, bo wtedy brama nie działa. Bramy nie zainstalujesz na kontrolerze domeny, a instalację uruchamia administrator komputera. Przy rejestracji zapisz klucz odzyskiwania (ang. recovery key) w bezpiecznym miejscu: jest potrzebny do odzyskania albo przeniesienia bramy, a Microsoft nie ma do niego dostępu.
  4. Ścieżki plików ustaw tak, żeby widział je komputer bramy. Brama czyta pliki ze swojego komputera, więc ścieżka C:\Dane\ z laptopa analityka wskazywałaby dysk C: komputera bramy. Trzymaj pliki na udziale sieciowym i w Power BI Desktop używaj ścieżki w postaci \\serwer\udział\Sprzedaz_miesieczna. Parametr ścieżki folderu z lekcji o parametrach pozwoli ją zmienić w jednym miejscu.
  5. Dodaj źródła do bramy z identycznymi nazwami. Do bramy dodaj każde źródło modelu: serwer i bazę dokładnie tak, jak w Power BI Desktop, oraz folder z tą samą ścieżką. Przy uwierzytelnianiu Windows komputer bramy musi należeć do domeny, co Microsoft wymienia jako ograniczenie bramy. Źródła dodają tylko administratorzy bramy, którzy muszą też dopisać Cię do listy użytkowników źródła.
  6. Połącz model z bramą i ustaw harmonogram. W ustawieniach modelu semantycznego wybierz bramę w sekcji połączenia bramy i przypisz każde źródło do właściwej definicji w bramie. Brakujące źródło administrator bramy doda stamtąd bezpośrednio, linkiem Add to gateway w angielskim interfejsie. Dopiero potem włącz harmonogram odświeżania.

Jak sprawdzić, że zadziałało

Uruchom odświeżenie na żądanie i sprawdź historię odświeżania modelu (ang. Refresh history). Przy błędzie otwórz szczegóły odświeżenia: pokazują między innymi bramę i opis błędu. Model z plikami przeniesionymi do SharePoint nie potrzebuje bramy, dopóki żadne zapytanie nie łączy ich ze źródłem lokalnym. Gdy jedno zapytanie scala albo dołącza dane ze źródła za bramą i ze źródła w chmurze, Power BI kieruje przez bramę także źródło w chmurze.

Żeby problem nie wracał, pamiętaj o dwóch zapisach z dokumentacji Microsoft. Po ponownej publikacji właściciel modelu musi znów powiązać go z bramą i źródłem, bo poprzednie powiązanie nie jest zachowywane. A gdy zaplanowane odświeżanie nie powiedzie się cztery razy z rzędu, Power BI je wyłącza: usuń przyczynę i włącz harmonogram ponownie.

Wróć do listy: 88 najczęstszych pytań i problemów związanych z Power Query

Baner szkolenia Kompleksowe szkolenie Power BI - Desktop, DAX i Online + Copilot w JSystems

Szkolenie Power BI - Desktop, DAX i Online --> Pięć dni od pierwszego raportu do publikacji w usłudze Power BI: Power Query, model danych z wielu tabel, DAX, wizualizacje i Copilot. To szkolenie ma terminy gwarantowane.

To szkolenie może być dofinansowane dla Ciebie z KFS lub BUR.

★★★★★Średnia ocena naszych szkoleń w Google: 5/5

Najczęściej zadawane pytania

Czy do plików w OneDrive potrzebna jest brama danych?
Nie, jeśli zapytanie czyta je z chmury, na przykład łącznikiem Folder programu SharePoint z adresem witryny. Brama jest potrzebna, gdy zapytanie wskazuje folder zsynchronizowany na dysku, bo to nadal ścieżka na komputerze, albo gdy jedno zapytanie łączy pliki z chmury ze źródłem lokalnym.
Czym różni się brama w trybie standardowym od trybu osobistego?
Tryb standardowy obsługuje wielu użytkowników i wiele źródeł oraz działa z Power BI, Fabric i innymi usługami Microsoft. Tryb osobisty służy jednej osobie, nie da się go udostępnić innym i działa tylko z Power BI. Microsoft zaleca tryb standardowy.
Dlaczego brama nie pojawia się na liście w ustawieniach modelu?
Najczęściej dlatego, że nie wszystkie źródła modelu są dodane do bramy albo nazwy się różnią. Nazwa serwera i bazy w bramie musi być identyczna jak w Power BI Desktop, a Twoje konto musi być na liście użytkowników źródła w bramie.
Czy bramę można zainstalować na zwykłym laptopie?
Microsoft odradza instalację na komputerze, który bywa wyłączony, uśpiony albo odłączony od internetu, bo w tym czasie brama nie działa i zaplanowane odświeżanie nie dojdzie do źródła. Zaleca też komputer podłączony do sieci przewodowo, a nie bezprzewodowo.

Komentarze (0)

Musisz być zalogowany by móc dodać komentarz. Zaloguj się przez Google

Brak komentarzy...