Analysis Services

Werbung
Microsoft SQL Server 2005 Analysis
Services / Data Warehousing / Data Mining
Architektur und
Verwendung
Einführung
• OLTP und OLAP im
Vergleich
• Data WarehouseKomponenten
• OLAP-Würfel
OLTP und OLAP im Vergleich
• Mithilfe der analytischen Onlineverarbeitung (Online
Analytical Processing, OLAP) können Sie auf aggregierte
und organisierte Daten aus Geschäftsdatenquellen, z. B.
Data Warehouses, in einer multidimensionalen Struktur,
die als Cube bezeichnet wird, zugreifen.
• Microsoft SQL Server 2005 Analysis Services (SSAS)
stellt Tools und Features für OLAP zur Verfügung, mit
deren Hilfe Sie Cubes und andere unterstützende Objekte
entwerfen, bereitstellen und verwalten können.
OLTP und OLAP im Vergleich
•
•
•
OLTP
OnLine Transaction Processing
Merkmale
– Verarbeitet Echtzeittransaktionen
eines Unternehmens
– Enthält für Einträge und
Bearbeitungen optimierte
Datenstrukturen
– Stellt eingeschränkte
Entscheidungsfindungsfunktionen
bereit
•
Beispiele
– Anwendungen zum Nachverfolgen
von Aufträgen
– Kundendienstanwendungen
– Point-of-Sales-Anwendungen
•
•
•
OLAP
OnLine Analytical Processing
Merkmale
– Es stellt Daten für
Geschäftsanalysevorgänge bereit
– Es integriert Daten aus
heterogenen Quellsystemen
– Es kombiniert überprüfte
Quelldaten
– Es organisiert Daten in
themenspezifischen Gruppen, die
sich nicht ständig ändern
– Es speichert Daten in physischen
Strukturen, die für das Verteilen und
Abfragen von Daten optimiert sind
• Beispiele
– Matrix-/Pivot-Untersuchungen
– Erweiterte Wissensgenerierung
OLTP und OLAP im Vergleich
•
Allgemeine Kennzeichen
– Optimiertes Schema für
schnelle Benutzerabfragen
– Stabiles Berechnungs-modul
für numerische Analysen
– Vorausberechnete Aggregate,
Beziehungs-management
– Konzeptionelles, intuitives
Datenmodell
– Multidimensionale Sicht von
Daten
• Drilldown und Drillup
• Sichten von Daten mit Hilfe
des Pivotprinzips
• Einsatzmöglichkeiten
– EIS-Systeme
• Leistungswerte
• Ausnahmeberichts-erstellung
– Verkaufs- und
Marketinganwendungen
• Bestellungs- und
Rechnungsanwendungen
• Produktanalysen
• Kundenanalysen
• Zeitreihen-Trendanalysen
OLTP und OLAP im Vergleich
OLAP-Dimension Relationale Dimension
REGION
West
CA
OR
East
MA
NY
REGION
West
East
STATE
CA
OR
MA
NY
REGION
West
West
East
East
OLTP und OLAP im Vergleich


USA
North West
Oregon
Washington
South West
California





USA ist die übergeordnete Ebene von
North West und South West
North West und South West sind
untergeordnete Ebenen von USA
North West und California sind
nachfolgende Elemente von USA
North West und USA sind vorausgehende
Elemente von Washington
North West und South West sind
gleichgeordnete Elemente
Oregon und California sind Elemente mit
übergeordneten Ebenen, die
gleichgeordnete Elemente sind
Alle sind Elemente ein und derselben
Dimension
Data Warehouse-Komponenten
Datawarehouse
Datenquellen
Stagingbereich
Dateneingabe
Datenzugriff
Datamarts
Benutzerzugriff auf Daten
Data Warehouse-Komponenten
Relationale
Datamarts
OLAP-Cubes
Relationale
Datenstruktur
Multidimensionale
Datenstrukturen
Dateninhalt
Detaillierte und zusammengefasste Daten
Zusammengefasste Daten
Datenquellen
Relationale und
nicht relationale Quellen
Relationale und
nicht relationale Quellen
Datenspeicherung
Datenabruf
Gute Abfrageleistung beim Sehr gute Abfrageleistung
Extrahieren von Daten
beim Extrahieren von Daten
OLAP-Würfel: Struktur
Atlanta
Chicago
Denver
Grapes
Cherries
Melons
Apples
Detroit
Q4
Q1
Q2
Q3
„Time“-Dimension
OLAP-Würfel: Abfragen
Atlanta
Sales
Fact
Chicago
Denver
Grapes
Cherries
Melons
Apples
Dallas
Q4
Q1
Q2
Q3
„Time“-Dimension
OLAP-Würfel: Schneiden
Atlanta
Chicago
Denver
Grapes
Cherries
Melons
Apples
Detroit
Q4
Q1
Q2
Q3
„Time“-Dimension
OLAP-Würfel: Visualisierung
OLAP-Würfel: Visualisierung
Fragen...
OLAP und SQL Server 2005
• Übersicht
• Server-/ClientArchitektur
• Berichte/Auswertung
Übersicht
•
Microsoft SQL Server 2005 Analysis Services (SSAS) verwendet sowohl Serverals auch Clientkomponenten zum Bereitstellen von OLAP-Funktionen (Online
Analytical Processing) und von Data Mining-Funktionen für Business IntelligenceAnwendungen:
– Die Serverkomponente von Analysis Services ist als Microsoft Windows-Dienst
implementiert. SQL Server 2005 Analysis Services unterstützt mehrere Instanzen auf
demselben Computer, wobei jede Instanz von Analysis Services als eigene Instanz des
Windows-Dienstes implementiert ist.
– Clients kommunizieren mit Analysis Services mithilfe des öffentlichen Standards für
XMLA (XML for Analysis). Hierbei handelt es sich um ein SOAP-basiertes Protokoll für
die Ausgabe von Befehlen und den Empfang von Antworten in Form eines Webdienstes.
Clientobjektmodelle werden ebenfalls über XMLA bereitgestellt. Auf diese Modelle kann
sowohl ein verwalteter Anbieter (ADOMD.NET) als auch ein eigener OLE DB-Anbieter
zugreifen.
– Abfragebefehle können mithilfe der folgenden Abfragesprachen ausgegeben werden:
SQL; MDX (Multidimensional Expressions), eine Abfragesprache nach Industriestandard
für Analysen; oder DMX (Data Mining Extensions), eine am Data Mining orientierte
Abfragesprache nach Industriestandard. Zum Verwalten von Analysis ServicesDatenbankobjekten kann außerdem ASSL (Analysis Services Scripting Language)
verwendet werden.
Serverarchitektur
• Die Serverkomponente von Microsoft SQL Server 2005
Analysis Services (SSAS) ist die Anwendung msmdsrv.exe,
die normalerweise als Windows-Dienst ausgeführt wird.
• Diese Anwendung besteht aus
–
–
–
–
Sicherheitskomponenten
einer XMLA-Überwachungskomponente (XML for Analysis)
einer Abfrageverarbeitungs-komponente und
zahlreichen internen Komponenten, die die folgenden
Funktionen ausführen:
– Analysieren von Anweisungen, die
von Client empfangen werden
– Verwalten von Metadaten
– Behandeln von Transaktionen
– Verarbeiten von Berechnungen
– Speichern von Dimensions- und
Zellendaten
– Erstellen von Aggregationen
– Planen von Abfragen
– Zwischenspeichern von Objekten
– Verwalten von Serverressourcen
Clientarchitektur
• Microsoft SQL Server 2005 Analysis Services (SSAS)
unterstützt eine Thin Client-Architektur. Das Analysis ServicesBerechnungsmodul ist vollständig serverbasiert, sodass alle
Abfragen auf dem Server aufgelöst werden. Daher ist für jede
Abfrage nur ein Roundtrip zwischen dem Client und dem Server
erforderlich, was zu skalierbarer Leistung führt, wenn die
Komplexität der Abfragen zunimmt.
• Das native Protokoll für Analysis Services ist XMLA (XML for
Analysis). Analysis Services stellt mehrere
Datenzugriffsschnittstellen für Clientanwendungen zur
Verfügung. Diese Komponenten verwenden jedoch alle XMLA
für die Kommunikation mit einer Instanz von Analysis Services.
Clientarchitektur
•
•
•
Zusammen mit Analysis Services
werden mehrere unterschiedliche
Anbieter zur Verfügung gestellt, um
unterschiedliche
Programmiersprachen zu
unterstützen.
Ein Anbieter kommuniziert mit
einem Server mit Analysis
Services, indem XMLA in SOAPPaketen über TCP/IP oder durch
Internetinformationsdienste
(Internet Information Services, IIS)
über HTTP gesendet und
empfangen wird.
Eine HTTP-Verbindung verwendet
ein von IIS instanziiertes COMObjekt, das als Datapump
bezeichnet wird und als
Datenleitung für Analysis ServicesDaten fungiert.
Clientarchitektur
•
Win32-Clientanwendungen können
mithilfe von
– OLE DB für OLAP-Schnittstellen
– Microsoft ActiveX Data ObjectsObjektmodell (ADO) für COMAutomatisierungssprachen
(Component Object Model) wie
Microsoft Visual Basic
Verbindungen zu einem Server
mit Analysis Services
herstellen.
•
Mit .NET-Sprachen codierte
Anwendungen können mithilfe von
ADOMD.NET eine Verbindung zu
einem Server mit Analysis Services
herstellen.
Programmiersprache
Datenzugriffsschnittstelle
C++
OLE DB für
OLAP (OLE DB
for OLAP)
Visual Basic 6
ADO MD
.NET-Sprachen
ADOMD.NET
Alle Sprachen mit XMLA (XML for
SOAPAnalysis)
Unterstützung
Clientarchitektur
•
•
•
•
Analysis Services verfügt über eine
Webarchitektur mit einer
vollständig skalierbaren mittleren
Ebene, die sowohl in kleineren als
auch in großen Organisationen
bereitgestellt werden kann.
Analysis Services stellt
umfassende Unterstützung auf
mittlerer Ebene für Webdienste zur
Verfügung.
ASP-Anwendungen werden von
OLE DB für OLAP und ADO MD
unterstützt, ASP.NETAnwendungen werden von
ADOMD.NET unterstützt.
Die mittlere Ebene ist für viele
gleichzeitige Benutzer skalierbar.
Clientarchitektur
•
•
•
Lokale Cubes und lokale Miningmodelle ermöglichen Analysen auf einer
Clientarbeitsstation, wenn deren Verbindung zum Netzwerk getrennt ist.
Das lokale Cubemodul (Msmdlocal.dll) unterstützt lokale Cubes und lokale
Miningmodelle auf Clientcomputern. Das lokale Cubemodul ist ein In-ProcessCOM-Server.
Eine Clientanwendung ruft den OLE DB-Anbieter für OLAP auf, der das lokale
Cubemodul zum Erstellen und Abfragen von lokalen Cubes lädt.
Clientarchitektur
•
Ein lokaler Cube kann entweder
auf einem vorhandenen, in Analysis
Services gespeicherten Cube
basieren oder auf einer relationalen
OLE DB-Datenbank.
– Wenn ein lokaler Cube aus einer
relationalen Datenquelle erstellt
wird, ist dessen Struktur jener von
Cubes in Analysis Services sehr
ähnlich.
– Wenn ein lokaler Cube aus einer
OLAP-Datenquelle erstellt wird, ist
der lokale Cube an den Quellcube
gebunden.
•
Ein lokaler Cube kann auch ohne
eine Ausgangsdatenquelle erstellt
werden.
• Sowohl lokale Cubes als auch
lokale Data Mining-Modelle
werden in multidimensionalen
Cubedateien (CUB) auf einem
Clientcomputer gespeichert.
– Eine CUB-Datei enthält
mindestens einen lokalen
Cube, kann jedoch mehrere
Cubes enthalten.
– Abfragen an die lokalen Cubes
werden vom lokalen
Cubemodul verarbeitet und
benötigen keine Verbindung zu
einer Analysis ServicesInstanz.
Clientarchitektur
•
Das lokale Cubemodul kann auch lokale Data Mining-Modelle erstellen,
die in lokalen Cubes verarbeitet wurden. Ein lokales Data Mining-Modell
basiert auf einem lokalen Cube und wird in derselben CUB-Datei
gespeichert, die auch den lokalen Cube definiert. Lokale Miningmodelle
können auch ohne eine Verbindung zu einer Analysis Services-Instanz
verwendet werden.
Berichte
• Reporting Tool-Optionen
• Excel Pivot-Tabellen und
Pivot-Charts
• Office Web Components
(OWC)
• Reporting Services
• Report Builder
• Strukturierte Berichte
(relational)
– Reporting Services, Report
Builder
• Strukturierte
Gruppierungen (OLAP)
– Excel Pivot-TabellenBerichte und Diagramme
– Office Web PivotTable
Reports und Diagramme
– Excel Add-In Accelerator
• Strukturierte Attribute
(Data Mining)
– Data Mining-Auswertungs/Anzeigewerkzeuge
Berichte: Excel PivotTables und PivotCharts
• Excel ist bekannt und oft
schon vorhanden
• Unterstützt AS 2005
• Arbeitet mit relationalen
und OLAP-Daten
• GetPivotData fügt
Flexibilität hinzu
Berichte: Office Web Components (OWC)
• In eigene Anwendungen
einbettbar
• Flexibler als Excel
• Bessere DiagrammErzeugung als in Excel
• Benutzerdefinierte
Aggregate
• Keine Office-Lizenz
erforderlich
• VBA/ActiveX-Unterstützung
• Von Microsoft in SQL Server
Studios selbst eingesetzt
Berichte: Excel Add-In Accelerator
• Verbesserte Abfragen
• Freiform-Modus mit
asymmetrischen
Berichten, mehreren
Datenquellen und flexiblen
Formeln
• Verteilung über
Arbeitsblatt/Excel-Datei
Berichte: Reporting Services
• Tabellen, Matrizen,
Diagramme
• Vordefinierte Struktur
• Interaktivität möglich
• Strukturierte Daten:
relational, OLAP,
hierarchisch
• URL-Zugriff und
einbettungsfähig in
eigenen Anwendungen
• Web ServiceUnterstützung
Berichte: Report Builder
• Zusatzwerkzeug für die
direkte Erstellung von
Berichten auf Basis eines
Datenmodells für Berichte
durch Profi-Benutzer
• Unterstützt prinzipiell die
gleichen Layout/Abfragefähigkeiten wie Visual
Studio für die StandardReporting Services
Fragen...
Konzepte
• Unified Dimensional
Model (UDM)
• Data Mining
• Objekte
UDM
•
Ein Benutzer, der Informationen direkt aus einer Datenquelle abrufen möchte, wie
z. B. aus einer ERP-Datenbank (Enterprise Resource Planning), steht mehreren
bedeutenden Herausforderungen gegenüber:
– Die Inhalte solcher Datenquellen sind häufig schwer verständlich, da sie für
Systeme und Entwickler entwickelt wurden, ohne dabei die Anforderungen
des Benutzers zu berücksichtigen.
– Die vom Benutzer benötigten Informationen werden häufig auf mehrere
heterogene Datenquellen verteilt. Umso schwieriger wird es für den Benutzer,
wenn diese Datenquellen unterschiedlichster Arten sind, die neben
relationalen Datenbanken auch Dateien und Webdienste beinhalten.
– Während viele Datenquellen so ausgerichtet sind, dass sie große Mengen an
Transaktionsebenendetails aufnehmen, schließen die zur Unterstützung von
Geschäftsentscheidungen durchgeführten Abfragen in vielen Fällen
zusammengefasste, aggregierte Informationen ein. Bei sehr großen
Datenmengen kann die zum Abrufen solcher zusammengefasster Werte für
die interaktive Endbenutzeranalyse erforderliche Zeit ein Hindernis darstellen.
– Die Geschäftsregeln sind im Allgemeinen nicht in den Datenquellen gekapselt.
Die Benutzer müssen daher die Daten selbst interpretieren.
UDM
•
•
•
Die Rolle eines UDM (Unified
•
Dimensional Model) besteht
darin, eine Brücke zwischen dem
Benutzer und den Datenquellen
bereitzustellen.
Ein UDM wird aus mindestens
einer physikalischen Datenquelle
hergeleitet.
Der Benutzer gibt Abfragen für
das UDM mithilfe einer Vielzahl
•
von Clienttools wie Microsoft
Excel aus.
Es ergeben sich Vorteile für den
Endbenutzer, auch wenn das UDM nur als
minimale Schicht über der Datenquelle
erstellt wird: ein einfacheres,
verständlicheres Modell der Daten, das
Isolieren heterogener Back-EndDatenquellen sowie
Leistungsverbesserungen bei Abfragen.
Das UDM bietet die folgenden Vorteile:
– Deutlich verbessertes Benutzermodell.
– Stellt Abfragen mit hoher Leistung bereit
und unterstützt so interaktive Analysen von
großen Datenmengen.
– Erfasst Geschäftsregeln im Modell zur
Unterstützung umfangreicherer Analysen.
– Ermöglicht eine Rückkopplung, bei der
Benutzer auf die angezeigten Daten
reagieren können.
UDM
•
Direkter Zugriff auf die
Datenquellen (traditionell)
•
Zugreifen auf die Datenquellen mithilfe
eines UDM
UDM
•
•
Hierarchien
Key Performance Indicators (KPIs)
•
Zeitangaben
•
Übersetzungen
•
•
•
Kategorisierung
Perspektiven
Attributsemantik
UDM
•
Erweiterte Analytik
UDM
Datenquelle
Werkzeug
OLAP
Browser (1)
DW
UDM
Cache
XML/A or ODBO
Analysis
Services
OLAP
Browser (2)
MDX
Berichtswerkzeug
(1)
Berichtswerkzeug
(1)
BI-Anwendungen
Data Mining
•
Data Mining wird oft als "der Prozess
•
des Extrahierens gültiger, authentischer
und aussagefähiger Informationen aus
großen Datenbanken" beschrieben.
Data Mining ist demnach ein Prozess,
der Muster und Trends in Daten
aufdeckt. Diese Muster und Trends
lassen sich zusammenfassen und als
Miningmodell definieren. Miningmodelle •
werden u. a. auf folgende
Geschäftsszenarien angewendet:
– Erstellen von Verkaufsprognosen
– Durchführen von
Direktmarketingaktionen, die auf
einen bestimmten Kundenkreis
abzielen
– Ermitteln von Produkten mit CrossSelling-Potenzial
– Ermitteln der Reihenfolge, in der
Kunden Produkte in den
Einkaufswagen legen
1.
2.
3.
4.
5.
Die Erstellung eines Miningmodells
muss als Teil eines größeren
Prozesses verstanden werden, der
sich von der Definition der
zentralen Problemstellung bis hin
zur Implementierung des Modells in
einer Arbeitsumgebung erstreckt.
Ein Data Mining-Prozess besteht
im Wesentlichen aus sechs
Schritten:
Definieren der Problemstellung
Vorbereiten der Daten
Durchsuchen von Daten
Erstellen von Modellen
Durchsuchen und Validieren von
Modellen
6. Bereitstellen und Aktualisieren von
Modellen
Data Mining
Data Mining
•
Sobald die Miningmodelle in eine Produktionsumgebung integriert wurden,
stehen sie je nach Bedarf für zahlreiche Tasks zur Verfügung. Sie können u.
a. folgende Tasks ausführen:
– Mithilfe der Modelle Vorhersagen erstellen, die für Geschäftsentscheidung
herangezogen werden können. SQL Server stellt die DMX-Sprache zur Verfügung, die
Sie zum Erstellen von Vorhersageabfragen verwenden können. Darüber hinaus
unterstützt Sie der Generator für Vorhersagebabfragen beim Erstellen der Abfragen.
– Data Mining-Funktionen in eine Anwendung integrieren. Sie können Analysis
Management Objects (AMO) hinzufügen oder ein Assembly mit mehreren Objekten
einbetten. Mit diesen Objekten kann Ihre Anwendung Miningstrukturen und -modelle
erstellen, ändern, verarbeiten und löschen. Alternativ können Sie XMLA-Nachrichten
(XML for Analysis) direkt an eine Instanz von Analysis Services senden.
– Mit Integration Services ein Paket erstellen, in dem mithilfe eines Miningmodells
eingehende Daten eigenständig aufgeteilt und mehreren Tabellen zugeordnet werden.
Wenn eine Datenbank beispielsweise fortlaufend mit potenziellen Neukunden aktualisiert
wird, können Sie ein Miningmodell zusammen mit Integration Services dazu verwenden,
die eingehenden Daten zwei verschiedenen Kundengruppen zuzuordnen: Einer Gruppe,
deren Kunden wahrscheinlich ein Produkt kaufen, und einer anderen, deren Kunden
wahrscheinlich kein Produkt kaufen.
– Erstellen Sie einen Bericht, mit dem Abfragen direkt für ein vorhandenes Miningmodell
ausgeführt werden können.
Data Mining
• Microsoft SQL Server 2005 Analysis Services (SSAS) beinhaltet
folgende Algorithmen:
–
–
–
–
–
–
–
–
–
Microsoft Decision Trees-Algorithmus
Microsoft Clustering-Algorithmus
Microsoft Naive Bayes-Algorithmus
Microsoft Association-Algorithmus
Microsoft Sequence Clustering-Algorithmus
Microsoft Time Series-Algorithmus
Microsoft Neural Network-Algorithmus (SSAS)
Microsoft Logistic Regression-Algorithmus
Microsoft Linear Regression-Algorithmus
Data Mining
Decision Trees
Sequence
Clustering
Clustering
Association
Time Series
Naïve Bayes
Neural Net
Data Mining: Naïve Bayes
• Einfaches und am einfachesten z implementierendes
Modell
• Welches Attribut kann das Attribut am besten
vorhersagen?
Data Mining: Decision Tree
• Welcher
Attributbaum kann
das Ergebnis am
besten
vorhersagen?
• Zusammenspiel
zwischen Attributen.
Data Mining: Cluster
• Welche
Untergruppen
sind in den Daten
enthalten?
• Wie verschieden
sind die
Untergruppen?
• Finde Muster
ohne spezielles
Ziel.
Data Mining: Association
• Ähnlich
Cluster, aber
mit Blick auf
eine einzige
Transaktion.
• Welche
Produkte
werden
zusammen
gekauft
(Warenkorban
alyse)?
Data Mining: Sequence Cluster
• Wie Cluster, aber mit
Berücksichtigung einer
Abfolge
• Welches Ereignis wird
wahrscheinlich danach
eintreten (Klickpfade)?
• Benötigt ein Attribut, um
die Abfolge abzubilden.
Data Mining: Time Series
• Welche Trends sind
vorhanden?
• Wie interagieren Trends
miteinander?
• Benötigt ein zeitbasiertes
Attribut (Vorschau).
Data Mining: Neural Net
• Erstellt eine
mehrschichtige Netzwerk
von Neuronen
• Wie ein
Entscheidungsbaum, aber
mit dreidimensionaler
Knotenstruktur
Analysis Services-Objekte
•
Datenquellen: Datenquelle in Analysis Services.
•
Datenquellensichten: ein logisches Datenmodell, das auf mindestens einer
Datenquelle in Analysis Services basiert.
•
Cubes: Cubes und Cubeobjekte, einschließlich Measures, Measuregruppen,
Dimensionsverwendungbeziehungen, Berechnungen, Key Performance Indicators
(KPIs), Aktionen, Übersetzungen, Partitionen und Perspektiven.
•
Dimensionen: Dimensionen und Dimensionsobjekte, einschließlich Attribute,
Attributbeziehungen, Hierarchien, Ebenen und Elemente.
Miningstrukturen: Miningstrukturen und Miningobjekte, einschließlich
Miningmodellen.
•
•
Rollen: eine Rolle, den Sicherheitsmechanismus, der zum Steuern des Zugriffs auf
Objekte in Analysis Services verwendet wird.
•
Assemblys: eine Auflistung von benutzerdefinierten Funktionen, die zum Erweitern
der Sprachen MDX und DMX in Analysis Services verwendet werden.
Fragen...
Herunterladen