Business Intelligence: Die Lösung ist das Ziel

Die Idee ist verführerisch, vor allem, wenn die Anforderungen komplex werden: warum mit Heerscharen von externen Quellen, Experten oder „Tipps & Tricks“ hantieren, wenn man nahezu alles davon mit einem speziellen System kaufen kann?

Die Lösung heißt Appliance und wird inzwischen in vielen Teilen der IT-Industrie angeboten und eingesetzt. Ob im Consumer-Markt mit Appliances für das Hören von Musik – iPod – oder das heimische WLAN – Beispiel FritzBox – oder auch im professionellen Bereich: spezialisierte Systeme stellen die Lösung in den Vordergrund und nicht den Weg dahin. Appliances enthalten nicht nur alle technischen Standardkomponenten für den designierten Einsatzfall, sondern oft auch spezielle Soft- und Hardware, die für den Einsatz entwickelt oder verfeinert wurden.

Aus Netezza wird PureData for Analytics

So hat IBM vor einigen Jahren Netezza, den Hersteller der ersten echten Datawarehouse Appliance, übernommen und weitergeführt. Parallel entwickelte IBM bereits Appliances zu anderen Themenbereichen; die neueste Entwicklung heißt IBM PureSystems und ist eine neue Produktfamilie von Expert Integrated Systems, die im April vorgestellt wurde. Im Oktober 2012 hat sich die Netezza Appliance als IBM PureData for Analytics – powered by Netezza namentlich eingereiht. Die Namensänderung ist verbunden mit einem kompletten Software-Upgrade, das noch einmal Geschwindigkeitsvorteile um etwa den Faktor 5 bis 10 bringen wird.

Das Besondere an der Netezza-Appliance: die Kombination aus vorkonfigurierter, leistungsoptimierter, massiv-paralleler Hardware mit speziell entwickelten Hardware-Bausteinen. Dies ermöglicht einen erheblich besseren Datendurchsatz als bei vergleichbaren Systemen. Zusätzlich vereinfacht die für diese Hardware optimierte Software – Betriebssystem und Datenbank – die Erstellung, Bereitstellung, Wartung und Pflege von Projekten auf der Plattform. Das Ziel ist klar: bei der Entwicklung eines Data Warehouse (DWH) oder Business-Intelligence-Projekts (BI) sollen sich die Entwickler nicht vorrangig um Performance-Features der Datenbank kümmern, sondern die Leistungsbandbreite innerhalb bestimmter Konfigurationen bereits als gegeben vorfinden. Damit rückt die Entwicklung von fachlichen Inhalten in den Vordergrund – selbst auferlegte Gedankenblockaden über mögliche Implikationen für technische Datenbankfunktionen wie Indices, Summentabellen, oder Plattendurchsätze und verschiedenes mehr verschwinden.

Warum Performance so wichtig ist

In fast allen DWH- oder BI-Projekten gibt es heute Diskussionen über Geschwindigkeiten, sei es beim Befüllen oder bei Abfragen, aber warum eigentlich? Was macht sie so besonders? Ein Aspekt: Anders als in Transaktionssystemen, bei denen viele, zum Teil tausende Benutzer sehr kleine Datenmenge bewegen, ist es beim DWH oft andersherum: eher weniger Benutzer bewegen eine große Menge an Daten. Beispiel für eine typische Abfrage: „Summe der aktuellen und Vorjahresumsätze und die Entwicklung aller Kunden der letzten 12 Monate über Produktgruppe xy nach Vertriebskanälen“. Deshalb ist der Datendurchsatz eine enorm wichtige Stellgröße für DWH- oder BI-Systeme. Die Gründe für schlechte Performance in diesen Systemen sind vielfältig, aber nicht unlösbar. Nicht-Appliance-Ansätze mit traditionellen Datenbanken bieten Unmengen an Konfigurationsmöglichkeiten, diverse Kombinationen von Hard- und Software, Dutzende Komponenten: alles ist möglich – natürlich auch gute Performance. Nur der Aufwand wird enorm: in Projekten wurde bereits festgestellt, dass Netezza SQL rund 80 Prozent weniger Objektcode braucht als traditionelles SQL, wie es beispielsweise Oracle verwendet. Allein die dort notwendigen zusätzlichen Objekte, etwa Indices und Anweisungen, wie und wo Daten abgelegt werden sollen, benötigen erheblich mehr – Objekte, die erstellt, gewartet und weiterentwickelt werden wollen.

Einfache Projekte sind gute Projekte

DWH- oder BI-Projekte neigen bereits zu einer gewissen fachlichen Komplexität. Unterschiedliche Quellen und Sichten auf die Daten sollen vereinheitlicht werden, oft über Abteilungs- und Zuständigkeitsgrenzen hinweg. Durch die Limitationen traditioneller Ansätze mit herkömmlichen Technologien kommt noch eine zusätzliche Komplexität in das Projekt, die einfach zu vermeiden wäre.

 Komplexität nur aufgrund von erwarteten oder realen Performance-Problemen:

  • Zusätzliche Indices beschleunigen den Zugriff, verlangsamen oder komplizieren aber den Ladeprozess; außerdem müssen diese gepflegt werden und wirken oft nur auf bestimmte Abfragen. Es ist eine Kunst, die richtigen Indices zu definieren, ohne zu viel Overhead zu erzeugen.
    In Netezza-Projekten werden grundsätzlich keine Indices eingesetzt. Einen erheblichen Einfluss auf die Performance hat die Verteilung der Daten auf die parallelen Verarbeitungseinheiten, die einmalig zu Projektbeginn anhand der Projektanforderungen und der Datenlage festgelegt und dann gelegentlich verfeinert werden. Diese Optimierung hat keinerlei Auswirkung auf das Speichervolumen, die Komplexität in der Verwaltung oder die Geschwindigkeit während des ETL.
  • Data Marts werden für die fachliche Modellierung der Daten genutzt. Oft findet dort aber nur eine Reduktion oder Aggregation der Daten statt, damit Anwender oder BI-Tools schneller und besser auf die Daten zugreifen können. Data Marts verbrauchen viel Speicherplatz, sie komplizieren und verlängern den eigentlichen Lade- und Integrationsprozess um eine weitere Stufe. In einigen DWH-Projekten wird mehr Speicherplatz oder mehr Aufbereitungszeit verbraucht als für das eigentliche DWH.
    In Netezza-Projekten kann oft auf die physikalische Erstellung von Data Marts verzichtet und dies stattdessen virtualisiert werden. Netezza ist in der Lage, innerhalb von wenigen Sekunden einen großen Datenbestand effizient zu filtern, sodass Reporting auf einem ER-Modell/Foundation-Layer im DWH möglich ist.
  • Zusätzliche „Cubes“, also die Speicherung in multidimensionalen Datenbanken, werden zur weiteren Perfomance-Verbesserung oberhalb der Data Marts eingesetzt: eine weitere Verschwendung von Speicherplatz und Verarbeitungszeit.

Mehr Intelligenz trifft mehr Power

In modernen BI-Systemen ist längst nicht beim Standard-Reporting Schluss: Ad-hoc-Analyse, Statistiken, Data Mining oder geografische Analysen ergänzen und erweitern die Möglichkeiten, mit denen heute Anwender jonglieren können. Moderne Tools und Programmiersprachen bringen statistische Funktionen bis zum Data Mining zum Anwender. Diesen Trend hat Netezza schon früh erkannt: Netezza Analytics, eine kostenfreie Erweiterung des Funktionsumfangs, integriert eigene und fremde Analytik. Die gleiche parallele Technologie wird genutzt, um fertige Data-Mining-Logik, Spatial-Analysen und Statistik zu berechnen. In realen Projekten kann Data Mining auf dem Gesamtdatenbestand durchgeführt werden, statistische Methoden berechnen in wenigen Millisekunden die Wahrscheinlichkeit von Einkäufen und mit geografischen Rechnungen können in Sekunden Auswirkungen von Wetterkapriolen auf die Versicherungswirtschaft ausgewertet werden.

Ergänzt werden diese vordefinierten Methoden und Schnittstellen um eine offene Programmierschnittstelle, mit der zusätzliche Logik, beispielsweise mit „R“, „C++“ und weiteren Sprachen erstellt werden kann. Forschungsinstitute nutzen dies unter anderem, um Verbindungen zwischen Faktoren für Erbkrankheiten festzustellen.

Überzeugende Vorteile

Komplexe DWH-Projekte können der Vergangenheit angehören: Durch die Geschwindigkeit und Einfachheit von PureData/Netezza Appliances lassen sich kurz- und langfristig erhebliche Einsparungen in Projekten erzielen: einfache Installation, minimierte Tuning-, Administrations- und Wartungsaufwände, einfachere Architekturen und nicht zuletzt beste Performance.

RSS Feed

Entdecken Sie die Printmagazine des WIN-Verlags