Mit Dataverse bietet Microsoft eine einfache Verwendung der Datenhaltung innerhalb der eigenen Power Platform. Wofür es grundsätzlich genutzt werden kann und welche Unterschiede zwischen Dataverse und beispielsweise Listen in SharePoint oder Microsoft List und insbesondere der Zugriff hierauf besteht, möchte ich in diesem Blogbeitrag beschreiben.
Microsoft Dataverse
Als Teil der Power Platform, möchte Microsoft eine Schnittstelle schaffen, um auf die Daten der Geschäftsanwendungen zuzugreifen und all das auf die selbe Art und Weise. Unabhängig vom verwendeten System. Hierzu hat Microsoft auch die Terminologie angepasst. So werden Entitäten als Tabellen bezeichnet. Entsprechende Attribute oder Felder als Spalten deklariert, diese können z.B. den Namen, das Gehalt oder das Alter enthalten.
Analog zur Erstellung von Power Apps können auch Tabellen in Dataverse erstellt werden. Es wird also ein visueller Editor bereitgestellt, welcher den User bei der Erstellung neuer Spalten unterstützt. Hierdurch können beispielsweise auch Spalten erstellt werden, welche einen direkten Bezug zu einer anderen Tabelle besitzen und als sog. Lookup-Typ definiert werden.
Außerdem können Geschäftsregeln erstellt werden, um beispielsweise Standardwerte für Spalten zu definieren oder um Validierungsregeln zu erstellen, um die Eingabe in der Power App vor dem Absenden angewandt werden können.
Dataverse for Teams
Für Teams existiert eine gesonderte Version von Dataverse, nämlich Dataverse for Teams. Bei der Erstellung von Power Apps für Teams, welche Dataverse for Teams als Datenbasis definiert, organisiert Dataverse die Ablage der Daten in die entsprechenden Datenspeicher. Somit werden beispielsweise Bilder oder Dokumente in einem Blob-Storage abgelegt und Daten in einer Tabelle. Dabei können bis zu 1.000.000 Einträge in der Datenbank oder 2 GB Daten gespeichert werden.
Dataverse for Teams bildet allerdings einen eingeschränkteren Umfang der Funktionen, so stehen beispielsweise keine Geschäftsregeln zur Verfügung. Dataverse for Teams bildet allerdings einen einfachen einstieg um Power Apps auf Basis von Dataverse zu erstellen.
Vorteile von Dataverse
Der zentrale Vorteil von Dataverse z.B. im Vergleich zu einem SQL-Server ist es, dass die Einrichtung, Verwaltung und Pflege des Servers nicht mehr vom Entwickler übernommen werden muss. Somit kann der Fokus auf die Entwicklung des Datenmodells und der zugehörigen (Power) App gelegt werden.
Ein weiterer Vorteil ist, dass die Datenbasis oder der Zugriff darauf (z.B. via APIM) für den Anwender bzw. Entwickler stark simplifiziert. Zum einen managt Dataverse die dahinterliegenden Datenablagen, zum anderen wird somit auch die Skalierbarkeit der einzelnen Ressourcen von Dataverse übernommen.
Was ist mit einfachen Listen in SharePoint?
Wenn man sich nun Dataverse oder Dataverse for Teams anschaut, stellt man sich unweigerlich der Frage, welchen Zweck noch SharePoint Listen oder Microsoft List erfüllen. Die Frage ist durchaus berechtigt, lässt sich aber direkt beantworten: es hängt vom Anwendungsfall ab.
SharePoint oder Microsoft Lists mit seinen oft flachen und großen Listen haben den Vorteil, dass alles direkt in einer Liste zur Verfügung steht. Hierbei werden oft keine relationalen Verbindungen zu anderen Listen o.ä. hergestellt. Wenn man nun in seinem Anwendungsfall z.B. eine simple Power App mit einer Liste zur Verwaltung der Assets im Unternehmen erstellen möchte, reicht hierzu eine flache Liste.
Zusätzlich hat man hier den Vorteil, dass in einer bestehenden Microsoft E3 Lizenz der Zugang zu einem SharePoint bereits inklusive ist. Somit können die Lizenzkosten hierbei ignoriert werden.
Auswahl der Datenhaltung
Nun haben wir neben Dataverse und Dataverse for Teams auch die klassische SharePoint Liste bzw. Microsoft List betrachtet und grundsätzlich aufgezeigt, welche Einsatzszenarien für die jeweilige Datenhaltung verwendet werden soll.
Bei einfachen Geschäftsvorfällen und -anwendungen kann auf eine SharePoint Liste zurückgegriffen werden. Mithilfe einer Power App kann hier bereits ein großer Mehrwert geschaffen werden.
Falls ein komplexeres Datenmodell benötigt wird und die zu erstellende Power App in Teams genutzt werden soll, eignet sich Dataverse for Teams besonders hierzu.
Wenn diese Power App auch noch außerhalb von Teams und mit erweiterten Sicherheitsrollen und Geschäftsregeln ausgestattet werden soll um komplexe Business Apps zu entwickeln, eignet sich Dataverse besonders hierfür.
Da Dataverse verhältnismäßig neu auf dem Markt ist, besitzt Power Automate hierfür natürlich auch deutlich weniger Aktionen und Trigger verglichen mit SharePoint. Dies sollte man ebenfalls in der Auswahl der entsprechenden Datenhaltung berücksichtigen.
Fazit
Dataverse sollte nicht als Ersatz für SharePoint Listen oder SQL Server gesehen werden, sondern als eine eigenständige Lösung die sich dazwischen einordnen lässt. Zum einen werden die Limitationen, die SharePoint mit seinen Listen besitzt, mit Dataverse aufgehoben und zum anderen können relationale Daten abgebildet werden. Dabei benötigt der User keine speziellen Tools, wie das SQL Management Studio für einen SQL Server, sondern kann es Power Platform typisch über den Browser konfigurieren. Gleichzeitig erhält man hierdurch mehr Steuerungsmöglichkeiten zwecks Zugriff auf die Daten selbst.
Berücksichtigen sollte man die Lizenzkosten, welche für die Verwendung von Dataverse anfallen können. So hängt es vom jeweiligen Anwendungsfall ab, ob eine einfache Liste oder ein komplexeres Datenmodell verwendet werden soll. Falls man sich also dazu entscheidet z.B. eine Power App zu erstellen und bereits eine Office E3 Lizenz besitzt, lohnt sich die Nutzung einer einfachen SharePoint oder Microsoft List mehr. Falls allerdings ein komplexeres Datenmodell benötigt wird, bietet Dataverse eine gute alternative.