Seit über 10 Jahren hat sich der „Microsoft BI Stack“ als integrierte, stabile und günstige Bussines Intelligence Lösung etabliert und wird in zahllosen Unternehmen eingesetzt.
Nach 15 Jahren fast unveränderter Technologie ist es Zeit an eine Erneuerung zu denken, es wartet die Cloud mit Modernität, Skalierbarkeit und Kosteneinsparung.
Inhalt
Wie bekomme ich mein „MS BI“ in die Cloud?
Es liegt auf der Hand, Microsoft BI in die Microsoft Cloud, das sollte ja das einfachste sein.
Das wollen wir hier erläutern…
Der Burger
Es ist ein liebevoller Kosename für das Gebilde aus allen integrierten Services die für die MS BI-Gesamtlösung eingesetzt werden können.
Die wesentlichen Bestandteile die meist eingesetzt werden:
- MS SQL Server (MSSQL): Der Datenbankserver
- Integration Services (SSIS): Das ETL-Tool zur Beladung und Transformation
- Analysis Services (SSAS): Der Analyse-Cube als Basis des Reportings
Zuätzlich als Reportingwerkzeug
- Reporting Services (SSRS)
oder - Excel
Manchmal auch
- Master Data Services (MDS): Für Datenqualität und Stammdatenwartung
Und all diese Komponenten sind integraler Bestandteil des MS SQL Servers, also automatisch zur Verfügung und auch mit den Lizenzen nutzbar.
Die Tools
Auch nicht unerblich die Entwicklungstools, ebenfalls Microsoft:
- Visual Studio (VS)
- SQL Management Studio (SSMS)
- Die Sprachen T-SQL und MDX
Es sind nicht nur alle Komponenten integriert, auch die Entwicklung war graphisch und mit sehr wenig Code damals schon fortschrittlich und sehr flexibel.
Die ETL Prozesse mit vielen Möglichkeiten
Der Analye Cube mit Datenmodell, Dimensionsmapping und Measures.
Also alles in allem eine runde und innovative Gesamtlösung, mit der man mit wenig Programmierung effizient, sehr günstig und recht rasch auch komplexe Projekte umsetzen kann.
Es ist nur ein wenig in die Jahre gekommen.
Warum denn überhaupt in die Cloud?
Kosten
Nicht nur die Anschaffungskosten der Hardware, auch der Betrieb (Updates, Miete, Energie, Personal) kann große Kosten verursachen, die in der Cloud entfallen.
Skalierung
Es muss die Hardware nicht auf die Spitzenauslastung dimensioniert werden, sondern kann je nach Bedarf jederzeit angepasst werden, was sich auch direkt auf die Kosten auswirkt.
Verfügbarkeit
Redundante Systeme, automatische Replikation, mehrere Geo-Zonen, automatische Failover und Backups erlauben einen ausfallsicheren Betrieb.
Innovation
Gerüstet für neue Anforderungen wie „Streaming“, „Data Sience“, „Datalake“, ob als Erweiterung der Systemlandschaft oder als Experiment und Wissensaufbau für kurze Zeit.
Agilität
Jederzeit kann die Gesamtarchitektur erweitert und angepasst werden, neue Technologien können sehr einfach verprobt werden, was eine rasche Reaktion auf neue Martksituationen erlaubt.
Eine gute und eine schlechte Nachricht
Die gute Nachricht:
Eine BI-Lösung kann vollständig in der Azure Cloud aufgebaut und betrieben werden.
Die schlechte Nachricht:
Von den vier klassischen Komponenten gibt es nur eine in der Cloud!
MSSQL (Datenbank)
SSIS (Beladung/Transformation)
SSAS Multidimensional (Analyse Cube)
SSRS (Reporting)
Die gar nicht so schlechte Nachricht:
Es kann die bestehende Technologie auch in der Cloud betrieben werden:
Lift & Shift
Damit nicht all die mühevollen und seit langer Zeit stabil laufenden Entwicklungen und Prozesse neu erstellt werden müssen, gibt es ein Migrations-Szenario in der die Technologien beibehalten werden – es wird die on-premise Lösung in der Cloud betrieben.
Datenbank (SQL)
Azure SQL Managed Instance
Es ist ein ganz spezieller Datenbankservice in der Cloud, der fast identisch zu einem on-prem SQL Server 2019 ist, eine VM von Azure gehostet.
Es können damit die gewohnten Dienste genutzt werden wie „SQL Server Agent“, „SSISDB“, „Linked Server“.
Nicht zu verwechseln mit „Azure SQL Server“, der ein „echtes“ Cloud-Service ist.
Azure SQL Server
Wenn die speziellen on-prem Features nicht notwendig sind, ist das vorgesehene Service die bessere Wahl mit mehr echten Cloud-Features und zukunftssicher.
ETL (SSIS)
Sie können in einer SSISDB (Managed Instance) oder auch auf einem Azure BLOB Storage liegen.
Ausgeführt werden die Pakete allerdings auf einem Service der „Azure Data Factory“, dafür gibt es eine eigens verfügbare „Azure SSIS Integration Runtime“.
Es wird entweder nur die „Integration Runtime“ als Laufzeitumgebung genützt und die Steuerung wie bisher über den „SQL Server Agent“ betrieben oder man nutzt die „Data Factory“ zur Orchestrierung.
Analyse Cube (SSAS)
Hier gibt es nur „Tabular“.
Das bedeutet, wenn das Modell nicht schon zuvor „Tabular“ war, einen kompletten Neuaufbau eines Modells, mit all seinen Unterschieden und auch die Berechnungen (MDX) müssen neu, bzw. anders gelöst werden (DAX).
Das Tabuar Modell läuft dann auf einem „Azure Analysis Services“ (AAS) oder eventuell auf Power BI Premium, was im Prinzip technologisch gleich ist.
Soll jedenfalls das multidimensionale Modell beibehalten werden, bleibt nur noch die Alternative mit einer virtuellen Maschine in Azure, auf dieser läuft genauso wie on-prem SSAS auf einem SQL-Server, der entsprechend in das Azure vnet integriert wird.
Reporting (SSRS)
Das moderne Reporting heißt „Power BI“ und kann direkt an das AAS-Modell andocken, weitere Quellen integrieren oder überhaupt das Modell ebenfalls Teil von Power BI sein („Power BI Premium“).
Soll das sehr veraltete SSRS trotzdem weiter betrieben werden, bleibt auch hier nur eine virtuelle Maschine in Azure.
Excel als Frontend kommt zwar in Frage, entspricht aber auch nicht mehr einem modernen Reporting und kann im Bedarfsfall auch aus Power BI heraus verwendet werden („Analyze in Excel“).
Azure Cloud BI
Cloud-Services haben ganz andere Kriterien und somit auch andere Technologien und Features.
Eine echte Cloud-Lösung sieht ganz anders aus, hat dafür aber alle genannten Vorteile, weshalb man ja in die Cloud migrieren möchte.
Hier eine beispielhafte Architektur:
Diese Referenzarchitektur hat diese wesentlichen Komponenten:
- Ingestion (Staging): Datenanlieferung in ein BLOB Storage oder auch direkt in eine SQL-Datenbank.
- Data Warehouse: Azure SQL Server
- Ladeprozesse/Transformationen: Azure Data Factory
- Analysemodell: Azure Analysis Services oder integriert in Power BI Premium
- Reporting: Power BI
Im wesentlichen sind also die Schichten und auch Prozesse fast gleich wie on-premise, nur die Technik anders.
Lösungen
Migration mit on-prem Technologien
Soll möglichst alles genauso beibehalten werden, so müssen auch die Technologien so bestehen bleiben und diese in der Cloud betrieben werden.
- Datenbank (MSSQL): Azure SQL Managed Instance
- ETL (SSIS): Bestehende SSIS-Pakete auf Azure SQL MI mit Azure Data Factory Integration Runtime
- Analyse Cube (SSAS): Sofern kein Tabular-Modell vorliegt bleibt nur der Betrieb von SSAS (inkl. SQL-Server) auf einer Azure VM
- Reporting (SSRS): Ebenfalls nur als Azure VM realisierbar.
Pros:
geringer Aufwand/Kosten
bekannte vorhandene Technologie
Skillset für Weiterentwicklung und Betrieb bleibt fast gleich
Cons:
SSIS wird es zwar noch länger geben, ist aber keine Cloud-Technologie!
SSAS multidimensional ist ausgereift und beliebt, wird aber irgendwann verdrängt von Tabular
SSRS war schon vor 10 Jahren veraltet und entspricht längst nicht mehr den Anforderungen (weder im Development, noch beim Enduser)
Langsam durch DB-Zugriff
Betrieb mit VMs im vNet und Gateways wird eher komplizierter und wartungsintensiver in der Cloud
Skalierung nur sehr begrenzt möglich
Ev. Lizenzkosten von mehrfachen SQL-Servern
CI/CD Development und Deployment kaum möglich
Bestehender ETL mit modernem Analyse-Reporting
Die Datenbasis und -struktur wird übernommen, die SSIS-Pakete für den ETL bleiben im Wesentlichen gleich.
Für das Reporting wird aus der relationalen Datenbank ein neues Tabular Model designt und auf Azure betrieben, dies dient als Datenbasis für Power BI als Reporting-Tool.
(Falls notwendig, kann zusätzlich ein DrillDown zur relationalen Datenbank angedacht werden)
(Alternativ zu AAS könnte auch Power BI Premium in Frage kommen)
Pros:
geringer Aufwand/Kosten bei DB und ETL
bekannte vorhandene Technologie
Schnelle Performance durch In-Memory (AAS)
Tabular ist optimiert für Analyse-Abfragen
Skillset für Weiterentwicklung und Betrieb bleibt für ETL gleich
Betrieb kann großteils skaliert werden
Cons:
SSIS wird es zwar noch länger geben, ist aber keine Cloud-Technologie
Zusatzaufwand für Analysemodell und neues Reporting
Neue Skills für Tabular, DAX, Power BI (muss ja kein Nachteil sein)
CI/CD Development und Deployment nur sehr begrenzt möglich
Nachhaltige Cloud-Lösung
Komplette Cloud-Lösung mit den dafür vorgesehenen Azure Services.
Zukünftige Integration von weiteren Architekturen (Data Lake, Data Science, Streaming, etc.).
Pros:
Nachhaltige moderne Cloudlösung
Schnelle Performance durch In-Memory
Tabular ist optimiert für Analyse-Abfragen
Zukunftssicher für Erweiterungen: Data Lake, Data Science, Streaming, Lambda-Architektur
Integrierte Sicherheit zwischen allen Azure-Services (DB, AAS, ADF, PBI)
CI/CD Development und Deployment über integriertes Azure DevOps und GIT
Flexibler und kostensparender Betrieb durch Skalierung
Cons:
Höherer Migrationsaufwand
Zusatzaufwand für neue Technologien bis auf Datenbank
Höherer Aufwand, falls komplexe Logik in SSIS und nicht in DB
Neue Skills für ADF, Tabular, DAX, Power BI (muss ja kein Nachteil sein)
Projektszenario
Aufwand
Wenn eine nachhaltige und flexible Cloud-Lösung angestrebt wird, dann kann es länger dauern bis eine Migration abgeschlossen ist.
Datenbank:
Meist kein großes Problem, denn es ist wieder eine SQL-Datenbank und auch T-SQL ist vorhanden.
ETL:
Insbesondere der Umbau des ETL kann rasch gehen, wenn die Pakete sehr einfach sind, aber recht aufwändig werden, wenn viel Logik in SSIS enthalten ist, dazu kommt ein ganz neues Tool, die ADF.
Cube:
Das Analysemodell ist meist nicht so kritisch, allerdings gibt es einige Aspekte bei „multidimensional“ die es in „Tabular“ nicht gibt, sehr viele und koplexe MDX-Berechnungen können es auch erschweren und grundsätzlich ist die Denkweise in „Tabular“ anders, bietet aber auch neue Vorteile.
Reporting:
Eine Erneuerung ist ohnehin sinnvoll, Power BI ist ein modernes performantes Tool, das den heutigen Key-User Ansprüchen entspricht.
Die Reports werden also komplett neu gestaltet, aber auch inhaltlich beurteilt, interaktives Reporting und Self-Service funktioniert eben anders.
Es ist ein häufiger „Fehler“, die bisherigen Reports einfach nachzubauen, besser ist es, nicht die bestehenden Reports zu analysieren, sondern zu erheben was die Fachanwender genau benötigen an Funktion und Inhalt und daraus das Modell und Reports abzuleiten.
Projekt in zwei Phasen
Um rascher in die Cloud und in Betrieb zu kommen, ist es denkbar eine Migration auf zwei Teile durchzuführen, wobei der erste Teil deutlich früher in Betrieb gehen kann.
Zuerst werden Datenbank und ETL migriert mit dem bestehendem SSIS.
Neu erstellt wird nur das Tabular-Modell und die Power BI Reports.
In einer zweiten Phase, während der Betrieb bereits läuft, kann die Umstellung des eventuell aufwändigeren ETL vorgenommen werden, die Business-Schichten können unverändert bleiben.
Conclusio
Abschließend kann man festhalten, dass eine einfache Migration von MS BI-Lösungen in die Cloud nicht vorhanden ist, aber auch nur begrenzt Sinn macht, denn um die Vorteile und Aspekte der Cloud zu nutzen und in Zukunft auszubauen, braucht es andere Konzepte, Technologien und Tools, daher ist es auch eine andere, eine neue Lösung.
Die Migration in die Cloud mit bewährten on-premise Technologien macht durchaus Sinn, aber nicht in Hinblick auf Technologie oder Zukuftsausbau, sondern nur aus kurz- bis mittelfristigen Kosten- bzw. Zeitüberlegungen.
Schreibe einen Kommentar