Wpis z mikrobloga

Mirki, mam pytanie do specjalistów od architektury hurtowni danych pod PowerBI.
Aktualnie posiadamy w firmie kostki OLAP zasilane pakietami SSIS z ERP do bazy pośredniej (Stage) i następnie po przetworzeniu do hurtowni danych. Kostki OLAP utworzone są w modelu wielowymiarowym, serwer od kostek jest pozostałością po starej wersji Axapta ERP i jest w wersji SQL 2008 Standard, nowszy serwer pod ERP ma wersję SQL 2012 Standard.
Możliwe jest przerobienie wspomnianych kostek na model tabelaryczny ale z informacji zasłyszanych od firm wdrożeniowych, brak serwera SQL Enterprise ogranicza nas do ok. 8GB łącznej wielkości kostek w modelu tabelarycznym na SSAS. Aktualne kostki w modelu wielowymiarowym mają od 400MB do 5GB i jest ich ok. 20.

Posiadamy również wykupiony SQL Serwer w Azure pod synchronizację danych z CRM Dynamics 365. Testowo udało mi się utworzyć dodatkową bazę w Azure i zasilić kilku tabel pakietem SSIS bezpośrednio z bazy ERP. Niestety tutaj najprawdopodobniej pojawia się problem związany z kosztami i błędnym zamysłem zasilania hurtowni. Obecna, lokalna hurtownia zasilana jest w najprostszy z możliwych sposobów – wyrzuć wszystko i zasil wszystko na nowo. W przypadku zasilania danych w chmurze dobrze byłoby zasilać dane przyrostowo. Istnieją może jakieś mechanizmy dotyczące importu danych samoczynnie flagujących wrzucone dane, tak by nie kierować się tylko datą z ERP?

No i przede wszystkim, w jaki sposób najlepiej zaprojektować architekturę, co dodatkowo wykupić u Microsoft, by utworzyć hurtownię danych pod PowerBI w chmurze? Czy potrzebne są jakieś dodatkowe licencje prócz PowerBI Pro za 10$? Docelowa liczba użytkowników to ok. 200, jednak na początku ograniczymy to do ok. 30.

#sql #azure #olap #hurtowniedanych #ssis #ssas #bussinesintelligence #pbi #powerbi #microsoft #programowanie
  • 16
@admin_admin: Rzuć okiem na Azure Data Factory, pozwoli Ci zrobić dobrą przyrostową integrę z ERPem. Ja bym starał się wszystko przenieść do chmury - kosztowo i wydajnościowo to będzie najsensowniejsza opcja. Opcją jest też bezpośrednia replikacja danych do chmury z SQLa 2012 - rzuć okiem tutaj https://docs.microsoft.com/en-us/sql/relational-databases/track-changes/about-change-data-capture-sql-server?view=sql-server-2017
@LosoweWypokoweKonto: Przeniesienie wszystkiego do chmury byłoby nie lada przedsięwzięciem, mamy bardzo mocno zmodyfikowany ERP Axapta 2012 R3, a wersja chmurowa nie pozwali na dostosowanie wszystkiego pod marudnych użytkowników (szczególnie w temacie księgowości). No ale replikacja danych to bardzo ciekawy temat, dzięki za wskazówki :)
@Koliat: PowerBI Embedded pozwoli użytkownikom na korzystanie z PowerBI na zasadzie tworzenia i udostępniania raportów czy ma jeszcze jakieś dodatkowe funkcje, np. przetwarzanie danych?

Chwilę też myśleliśmy nad Dynamics AX365 w wersji chmurowej ale firma wdrożeniowa odradzała nam taką migrację, tłumacząc to problemami z modyfikacjami, długim czasem oczekiwania na poprawki ze strony Microsoft, brakiem backupów na żądanie czy też poprawą danych pod bazą ( ͡° ͜ʖ ͡°).
@admin_admin: PBI Embedded bardziej do wyświetlania już istniejących raportów, ale macie tam mieć 200 autorów PowerBI? Co do drugiego pytania - nie wiem co z D365 AX, ale stawianie bazy danych na Azure a serwery na on-prem to zły pomysł, bo liczy się czas dostępu - już prędzej serwery w IaaS na Azure i baza danych też na Azure w tym samym regionie ;-)
@admin_admin: A co chcesz osiągnąć? Chcesz po prostu mieć Dashboardy z Power BI na obecnych strukturach danych (kostkach)? Bo wtedy mógłbyś użyć Live Connection do SSAS ale to niestety wymaga by Analysis Services było Enterprise dla 2012, 2014 lub 2016, 2017 Standard, wiec musielibyście podnieść wersje. Ale wtedy każdy w Power BI Desktop mógłby darmowo łączyć się do kostek i tworzyć z nich dashboardy, a z Power BI Pro miałby dane
@Koliat: akurat autorów będzie mniej, Myślę, że raczej ograniczymy się do 10-20 osób, które będą odpowiednie raporty rozsyłać dalej,jak rozumiem zakup kilku licencji Pro raczej nas nie ominie.
A co do AX to wersja lokalna AX2012 działa często tragicznie, a co dopiero gdyby miała serwery w chmurze :).
Czyli w temacie hurtowni danych w chmurze lepiej zrobić replikację bazy lub pomyśleć o Azure Data Factory, tak jak radził @LosoweWypokoweKonto
@madry_i_mieciutki: opiszę ci jeszcze typy wdrożeń pod Power BI z jakimi miałem do czynienia:

1) to pierwsze, czyli hurtownia i kostka OLAP (wielowymiarowa) stoi na Analysis Services (2012, 2014 Enterprise albo 2016, 2017, 2019 Standard). Wtedy możliwe jest Live Connection. Z Power BI Desktop za darmo a jak ktoś chce mieć apkę na telefonie albo PowerBI.com to musi mieć Pro (per user) by korzystać. Uprawnienia są po stronie serwera OLAP. Da
@madry_i_mieciutki: myśleliśmy o podniesieniu wersji do Enterprise ale to też nie jest najtańsza opcja, Microsoft dosyć mocno podniósł ceny licencji na serwery. Do prezentacji części danych wystarczyłyby same Dashboardy, jednak w pierwszej kolejności chcieliśmy nadać możliwość śledzenia budżetów live w aplikacji mobilnej. Wydaje mi się, że najodpowiedniejsze byłoby rozwiązanie nr. 2.
Jakich kosztów należy się spodziewać w przypadku Analysis Services Tabular? Na pewno chciałbym przerobić jedną mniejszą kostkę na tabular, zasilać
@admin_admin: a może zamiast podnosić do enterprise lepiej podnieść do 2016/17 Standard? Wtedy masz to live connection, jakieś tam podstawowe partycjonowanie i features. Generalnie myśłę, że wersję SQL Server raz na 10 lat przynajmniej trzebaby zmienić.

Akurat nie zajmowałem się scalingiem samego Azure Analysis Services, jakoś tanio nie ma jak wszystko na Azure wg mnie, ale jest kalkulator więc mógłbyś sprawdzić swój scenariusz. Najlepiej przetestuj sobie w portalu Azure na jakimś
@madry_i_mieciutki: Dzięki za podpowiedzi, zorientuję się jak wygląda kwestia podniesienia wersji SQL oraz czy nie rozwali to nam to AX2012.

Mam jeszcze jedno pytanie odnośnie Live Connection. Czy w celu użycia tego narzędzia i połączenia z PowerBI konieczne jest przerabianie kostek wielowymiarowych na tabular? Jakiś czas temu próbowałem podłączyć się PowerBI do SSAS w wersji 2008 poprzez jakiś typ połączenia PowerBI i prawdę mówiąc nie dało się tego używać. Co prawda
@admin_admin: do 2008 to tylko import czyli trochę bez sensu bo wtedy PBI robił jedno wielkie query z iloczynem kartezjańskim po każdym wymiarze i takie coś ładował do pamięci.
Live Connection natomiast polega na tym że nic nie importujesz a łączysz się na żywo do kostki tak jak w Excelu do pivota, że masz już gotowe miary i wymiary które sobie wrzucasz na dashboardy. Minus jest taki, że jesteś ograniczony do