Datenvirtualisierung – eine lohnenswerte Technologie für datengetriebene Unternehmen?<!-- [if gte mso 9]><xml> <o:OfficeDocumentSettings> <o:AllowPNG></o:AllowPNG> </o:OfficeDocumentSettings>
</xml><![endif]--><!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves></w:TrackMoves> <w:TrackFormatting></w:TrackFormatting> <w:PunctuationKerning></w:PunctuationKerning> <w:ValidateAgainstSchemas></w:ValidateAgainstSchemas> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF></w:DoNotPromoteQF> <w:LidThemeOther>DE</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables></w:BreakWrappedTables> <w:SnapToGridInCell></w:SnapToGridInCell> <w:WrapTextWithPunct></w:WrapTextWithPunct> <w:UseAsianBreakRules></w:UseAsianBreakRules> <w:DontGrowAutofit></w:DontGrowAutofit> <w:SplitPgBreakAndParaMark></w:SplitPgBreakAndParaMark> <w:EnableOpenTypeKerning></w:EnableOpenTypeKerning> <w:DontFlipMirrorIndents></w:DontFlipMirrorIndents> <w:OverrideTableStyleHps></w:OverrideTableStyleHps> </w:Compatibility> <m:mathPr> <m:mathFont m:val="Cambria Math"></m:mathFont> <m:brkBin m:val="before"></m:brkBin> <m:brkBinSub m:val="&#45;-"></m:brkBinSub> <m:smallFrac m:val="off"></m:smallFrac> <m:dispDef></m:dispDef> <m:lMargin m:val="0"></m:lMargin> <m:rMargin m:val="0"></m:rMargin> <m:defJc m:val="centerGroup"></m:defJc> <m:wrapIndent m:val="1440"></m:wrapIndent> <m:intLim m:val="subSup"></m:intLim> <m:naryLim m:val="undOvr"></m:naryLim> </m:mathPr></w:WordDocument>
</xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemiHidden="true" DefQFormat="false" DefPriority="99" LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Normal"></w:LsdException> <w:LsdException Locked="false" Priority="9" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="heading 1"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"></w:LsdException> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 1"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 2"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 3"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 4"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 5"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 6"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 7"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 8"></w:LsdException> <w:LsdException Locked="false" Priority="39" Name="toc 9"></w:LsdException> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"></w:LsdException> <w:LsdException Locked="false" Priority="10" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Title"></w:LsdException> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"></w:LsdException> <w:LsdException Locked="false" Priority="11" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtitle"></w:LsdException> <w:LsdException Locked="false" Priority="22" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Strong"></w:LsdException> <w:LsdException Locked="false" Priority="20" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Emphasis"></w:LsdException> <w:LsdException Locked="false" Priority="59" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid"></w:LsdException> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"></w:LsdException> <w:LsdException Locked="false" Priority="1" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="No Spacing"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1"></w:LsdException> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"></w:LsdException> <w:LsdException Locked="false" Priority="34" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"></w:LsdException> <w:LsdException Locked="false" Priority="29" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Quote"></w:LsdException> <w:LsdException Locked="false" Priority="30" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5"></w:LsdException> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6"></w:LsdException> <w:LsdException Locked="false" Priority="19" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"></w:LsdException> <w:LsdException Locked="false" Priority="21" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"></w:LsdException> <w:LsdException Locked="false" Priority="31" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"></w:LsdException> <w:LsdException Locked="false" Priority="32" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"></w:LsdException> <w:LsdException Locked="false" Priority="33" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Book Title"></w:LsdException> <w:LsdException Locked="false" Priority="37" Name="Bibliography"></w:LsdException> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"></w:LsdException> </w:LatentStyles>
</xml><![endif]--><!-- [if gte mso 10]>
<style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Normale Tabelle"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-ansi-language:DE;}
</style>
<![endif]-->

Datenvirtualisierung – eine lohnenswerte Technologie für datengetriebene Unternehmen?

Der Beitrag beschreibt Vor- und Nachteile der Datenvirtualisierungstechnologie sowie die aktuelle Marktsituation und führende Anbieter.

27.02.2018, Autoren: Lars Iffert und Axel Bange

Datenvirtualisierung – was ist das überhaupt?

Datenvirtualisierung ist ein Konzept, das im Kontext von Business Intelligence (BI) und Data Warehousing schon lange existiert. Häufig nutzen Unternehmen im Data Warehousing die klassische Datenaufbereitung mittels Datenintegration: Daten, die später in den BI-Berichten und Analysen visualisiert werden sollen, werden aus Quellsystemen (ERP-, CRM-Systemen, Excel-Tabellen, etc.) mittels Datenintegrationswerkzeugen geladen, verarbeitet (gefiltert, verknüpft, zusammengefasst, berechnet) und die fertigen Informationen werden in das Data Warehouse gespeichert. BI-Berichte visualisieren dann diese Informationen oder die Anwender können mittels OLAP-Analysen ihren Informationsbedarf decken. Bekannte Lösungen in diesem Bereich sind zum Beispiel Informatica PowerCenter, IBM Datastage, Talend, SAS Data Integration Server und viele weitere. Die BI Scout Marktübersicht listet unter -> Datenmanagement -> Datenintegration insgesamt 118 Lösungen.

Bei der Datenvirtualisierung geht es um die logische Datenintegration von Daten zum Abfragezeitpunkt – das Datenvirtualisierungswerkzeug sieht nach außen aus wie ein Data Warehouse, also Tabellen, die mit SQL durch die BI- und Analysewerkzeuge gelesen werden können. Intern hält das DV-Werkzeug jedoch nicht die Daten, sondern holt sie sich "on-Demand" aus den Quellsystemen, zum Beispiel wenn für einen BI-Bericht gewisse Kennzahlen benötigt werden (siehe auch BI Scout Marktübersicht -> Datenmanagement -> Föderation).


Was sind die Vorteile von
Datenvirtualisierung?

Der Hauptvorteil liegt darin, dass Unternehmen mittels DV sehr schnell neue BI-Anforderungen umsetzen können: man muss keine Tabellen im Data Warehouse anlegen oder komplexe Datentransformationsstrecken im Datenintegrationswerkzeug konzipieren und entwickeln. Das Design der Tabellen für den Anwender und mögliche Datenaufbereitungsschritte werden direkt im DV-Werkzeug definiert. Änderungen, zum Beispiel in Form von neuen Datenquellen oder zusätzlichen Spalten können vergleichsweise schnell hinzugefügt werden.


Was sind die Nachteile von Datenvirtualisierung?

Bisher war Geschwindigkeit oft ein großes Problem: Wenn beispielsweise ein Business-Intelligence-Tool Daten von der Datenvirtualisierungsplattform abruft, kann der Bericht für gewöhnlich erst dann erzeugt werden, wenn das langsamste Quellsystem geliefert hat. Zudem sind viele Quellsysteme nicht für analytische Massenabfragen ausgelegt: Greift das DV-Werkzeug beispielsweise mit einer Abfrage über die Umsatzzahlen der letzten fünf Jahre direkt im laufenden Betrieb auf die Daten im ERP-System zu, so kann dies zu Problemen in der Systemstabilität und Verfügbarkeit der operativen ERP-Software führen. „Diese Herausforderungen sind natürlich bei vielen Anbietern bekannt und werden oftmals thematisiert. Wir haben sie jedoch bereits in den Griff bekommen und gute, schnell umzusetzende Lösungen parat”, erklärt Dr. Nick Golovin, CEO von DataVirtuality, einem führenden Anbieter von Datenvirtualisierungslösungen, auf die Nachteile angesprochen.

Werkzeuge für die Datenintegration und Datenföderation

Marktgröße und Implementierungsrate

Datenvirtualisierung ist in den USA eine etablierte Technologie. Bereits vor zehn Jahren setzten Early Adopters Projekte um, vor allem im Finanzsektor. Die dann aufkommende Big-Data-Diskussion hat den Markt verunsichert und die DV-Verbreitung von DV vor allem in Deutschland gebremst. Inzwischen wird DV wieder zunehmend besprochen. Die unabhängigen Analysten von BARC sehen das Thema aktuell immer öfter in Beratungsprojekten und begleiten immer mehr Proof of Concepts in Unternehmen aus der DACH-Region.

Mehrere Analystenberichte 2017 zeigen einen verstärkten Einsatz der Datenvirtualisierung:

  • In der BARC-Studie „Data Preparation im Fachbereich in der DACH-Region" wurden 265 Teilnehmer gefragt: „Welche Werkzeuge werden in Ihrem Unternehmen für Data Preparation eingesetzt?" 17 Prozent hatten Werkzeuge für Datenvirtualisierung bereits im Einsatz, 16 Prozent planen den Einsatz innerhalb der nächsten zwölf Monate und weitere 25 Prozent den langrfristigen Einsatz (siehe Abbildung).
  • Gartner schätzt, dass bis zum Jahr 2020 in den USA 50 Prozent der Unternehmen eine Form der Datenvirtualisierung als eine Produktionsoption für die Datenintegration implementieren werden.
  • In einer Umfrage aus dem Jahr 2017 mit über 2100 Teilnehmern stellte Forrester fest, dass 56 Prozent der Befragten die Datenvirtualisierung bereits implementierten und / oder vorhandene Initiativen für  Datenvirtualisierung erweiterten. Weitere 20 Prozent planen die Umsetzung in den nächsten zwölf Monaten.


Aktuelle Marktentwicklungen

Auf Anbieterseite sind in DACH vor allem DataVirtuality, Denodo und TIBCO in den letzten Jahren stark als Vorreiter der Datenvirtualisierungstechnologie in Vorschein getreten.

Das 2012 gegründete deutsche Unternehmen DataVirtuality bietet eine SQL-orientiere Datenvirtualisierungslösung und adressiert insbesondere die Fachbereiche. Geschäftsführer Dr. Nick Golovin meint: „Virtualisierung heißt, dass man die Daten nutzen kann, ohne sich groß darüber Gedanken zu machen wo sie wirklich liegen. DataVirtuality legt eine virtuelle Schicht über alle Datensilos, sodass diese verschwinden. Die Daten werden aus den Speicherorten abstrahiert. Früher hat man das mit ETL-Tools gemacht. Das ist oft ein aufwändiger Prozess.“ (sehe auch Interview unten).

Lakshmi Randall, Director of Product Marketing für Denodo, sieht in Deutschland und allgemein eine höhere Implementierungsrate: „Die Einführung neuer Technologien in bestehende Infrastrukturen hat häufig unternehmenspolitische Implikationen. Da die Datenlandschaft jedoch immer komplexer wird, müssen Unternehmen ihre Dateninfrastruktur modernisieren. Und wenn sie einmal verstanden haben, wie DV die Lücke zwischen alt und neu schließen kann, sind sie offener dafür, auch in Deutschland."

Um den einstigen Primus Composite Software war es die letzten Jahre still geworden. Das Unternehmen wurde 2013 von Cisco übernommen und eher im Rahmen der Cisco-Produktportfolios eingesetzt und vertrieben (IT-Infrastruktur). Im November 2017 hat TIBCO Composite Software übernommen. TIBCO schärft damit sein Profil im Bereich Datenmanagement und wird sicherlich die Datenvirtualisierungstechnologie stärker im umfangreichen BI-, Analytics- und Advanced-Analytics-Portfolio vermarkten. Die Erfahrung ist da: TIBCO hat Composite Software bereits lange Jahre als OEM (Original Equipment Manufacturer) genutzt. Robert Eve, Senior Director TiBCO und früherer CMO von Composite sieht Datenvirtualisierung als die Antwort auf Datensilos (z.B. in Big-Data- oder Cloud-Lösungen). „Aufgrund der Datensilos gibt es einen größeren Bedarf nach Lösungen für einfachen Zugriff auf diese Daten".

Weitere Ansätze und Lösungen im Bereich Datenvirtualisierung:

  • SAP HANA enthält mit der Funktion „Smart Data Accesss“ auch eine Möglichkeit externe Datenquellen an ihre Plattform anzuschließen.
  • Klassische Datenbanken  (Oracle, IBM, etc.) bieten über Konstrukte wie virtuelle oder externe Tabellen schon seit sehr langer Zeit ähnliche Ansätze wie DV-Werkzeuge.
  • Datenintegrationssoftware kann zwar oft ihre Datenintegrationsservices nicht als SQL-View nach außen zur Verfügung stellen, wohl aber als API oder Service, der dann auch ad hoc gestartet werden kann, um Ergebnisse bspw. als CSV-Datei zu generieren.
  • Auch Hersteller von NoSQL-Datenbanken (Not only SQL Datenbanken) greifen Ansätze der DV auf. DataWerks beispielsweise stellt eine Datenvirtualisierungstechnologie bereit, die intern NoSQL-Technik nutzt, um die relevanten Informationen aus den Datenquellen zu lesen (häufig im Kontext von Massendaten im Bereich Sensordaten, Social & Maschinendaten), zu puffern und Informationen so besonders schnell an die anfragende Anwendung zu übergeben (ohne eben auf die eigentlichen Datenquellen zu warten).


Fazit

Datenvirtualisierungstechnologie bietet aufgrund ihres agilen und flexiblen Ansatzes eine interessante Herangehensweise für Unternehmen, um mit zunehmenden Datenquellen und wachsenden Datenmengen umzugehen. Nicht nur klassische Business-Intelligence-Umgebungen können durch geschickte Nutzung von Datenvirtualisierung im Data-Warehouse-Stack (Staging Area, Data Warehouse, Data Marts) profitieren. Auch datengetriebene Fachbereiche, wie Marketing- oder Data-Science-Labs können für die Umsetzung ihrer Projekte profitieren. Es wird interessant zu beobachten, wie die Software-Hersteller mit langsamen oder kritischen Quellsystemen umgehen und wie sie komplexere Datenaufbereitungs- und Datenqualitätsanforderungen umsetzen wollen.


Welche Werkzeuge werden in Ihrem Unternehmen für Data Preparation eingesetzt bzw. sollen in Ihrem Unternehmen eingesetzt werden? (n=265). Quelle: BARC Studie Data Preparation im Fachbereich in der DACH-Region

Ivo Fritzsche, Senior Manager Business Intelligence bei JUNIQE, erklärt die Vorteile der Datenvirtualisierung mit DataVirtuality.

Lars Iffert ist Senior Analyst und Experte für Datenmanagementlösungen beim Business Application Research Center (BARC). Kontakt: liffert@barc.de


Axel Bange ist Herausgeber von BI Scout und Geschäftsführer der B-Eye-Media GmbH. Kontakt: redaktion@bi-scout.com

Lars Iffert, Senior Analyst, BARC

Es wird viel im Kielwasser der USA geschwommen"

Dr. Nick Golovin ist Gründer und Geschäftsführer von DataVirtuality, einem deutschen Anbieter von Datenvirtualisierungslösungen.


BI Scout: Man spricht oft von einem „Technologiegap“ zwischen Deutschland und den USA: Hierzulande würde neue Technologie mit bis zu drei Jahren Verzögerung zum Einsatz kommen. Können Sie das aus Ihrer Projekterfahrung bestätigen?

Dr. Nick Golovin: Meine Erfahrungen in Datenmanagement-Projekten zeigen eindeutig, dass es diesen Technologiegap nach wie vor gibt. In den USA bewegt man sich einfach schneller. In Deutschland wird viel Wert auf strukturierte Prozesse und saubere Abläufe gelegt. Sowas kostet oft Zeit. Man kann darüber streiten, ob das schlecht für den Wettbewerb ist. Es funktionieren ja gerade wegen dieser Gründlichkeit viele Dinge im Geschäftsleben als auch in der Gesellschaft hervorragend. Als jemand der nicht in Deutschland geboren ist, aber seit Jahren hier lebt, bewundere ich das grundsätzlich.

Dennoch wünschen Sie sich etwas mehr Offenheit gegenüber neuen Technologien?

NG: Ich finde es wird viel im Kielwasser der USA geschwommen. Technologie wird oft nicht aus sachlichen sondern aus politischen Gründen implementiert. Nach dem Motto „in den USA klappt seit zwei, drei Jahren, da müssen wir jetzt nachziehen.“ Dort ist das dann eventuell schon ein alter Hut und man hat sich anderen Dingen zugewandt. Data Lakes sind dafür ein gutes Beispiel: In Amerika ist der Hype schon lange abgeebbt, hier wird es voll gelebt und erreicht aktuell gerade erst „Hype“-Status.
Das Phänomen kann sogar Produkte betreffen die in Deutschland entwickelt wurden. Ich würde mir wünschen, dass man versucht gemeinsam mit den USA vorne zu sein.
Auch in anderen Bereichen sieht man das recht deutlich. Beim E-Payment zum Beispiel: In den Nordischen Ländern oder auch Holland kann man teilweise nicht mehr mit Bargeld zahlen. E-Mobilität wäre ein weiteres Stichwort.

Ihr Unternehmen gehört unstreitig zu den führenden Anbietern von Datenvirtualisierungstechnologie. Können sie uns die Vorteile dieser Technologie kurz erörtern?

NG: Virtualisierung heißt, dass man die Daten nutzen kann, ohne sich groß darüber Gedanken zu machen wo sie wirklich liegen. DataVirtuality legt eine virtuelle Schicht über alle Datensilos, sodass diese verschwinden. Die Daten werden aus den Speicherorten abstrahiert. Früher hat man das mit ETL-Tools gemacht. Das ist oft ein aufwändiger Prozess. Ich sage immer: „ein klassisches Data Warehouse ist ein Auto mit Handschaltung und Hunderten von Gängen die man manuell schalten muss. DataVirtuality ist die Automatik.“

Dr. Nick Golovin, CEO DataVirtuality