SQL Server Analysis Services im mehrdimensionalen Modus Grundkurs

Der Alltag: Cubes verarbeiten

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Es gibt eine ganze Reihe von Verfahren, um die Dimensionen oder den Cube mit neuen Daten zu füllen – manche davon mit einer Unterbrechung für die Benutzer, manche ohne. Hier lernen Sie sie alle einmal im Überblick kennen.
05:47

Transkript

Die häufigste Aufgabe, die der Administrator der Analysis Services hat, ist sicherlich das Verarbeiten der Cubes. Verarbeiten ist immer dann erforderlich, wenn sich irgend etwas an den Quelldaten geändert hat und man möchte, dass diese Änderungen im Cube reflektiert werden. Er enthält ja, außer, wenn man den Speichermodus "Roller" verwendet hat, immer eine Kopie der Daten und diese Kopie aktualisiert man über die Verarbeitung. In diesem kurzen Video möchte ich mal zeigen, wie man das macht und was es für Möglichkeiten gibt. Man macht das in dem typischen Tool für den Administrator, nämlich im SQL Server Management Studio, das wir hier vor uns sehen. Wir haben uns mal verbunden mit unserem Analysis Service Server und dort ist unsere Testdatenbank AdventureWorksLite. Und da gibt es, wenn man rechts drauf klickt, im Menü auch gleich die Möglichkeit: "Verarbeiten", Wenn ich das jetzt tun würde, dann wird die gesamte Datenbank vollständig verarbeitet. Das ist übrigens gar keine schlechte Option. Machen Sie das mal testweise und schauen Sie drauf, wie lange das Ganze dauert, Das ist eine Rundum-Sorglos Option, die wirklich die gesamte Datenbank völlig problemlos aktualisiert. Wenn das nur wenige Minuten dauert, könnte man das wunderbar auf diese Weise lösen das Problem. Wenn es aber länger dauert, muss ich reingehen in Details, zum Beispiel in den Cube, in die Measure Gruppen des Cube, dann kann ich für jede Measure Gruppe einzeln sagen, wie ich sie verarbeiten will, und dabei habe ich eine ganze Reihe von Optionen, auf die ich jetzt mal näher eingehen möchte. Die Standardoption ist, das kann man sich schon denken, das so genannte Process Default. Und das wählt automatisch die sanfteste Methode. Es schaut letztendlich nach, was können wir tun, wie können wir den Cube aktualisieren, so dass er möglichst lange verfügbar bleibt, für alle, die gleichzeitig Abfragen auf ihm machen. Könnte man also im Standardfall immer wählen. Was ich vorhin schon empfohlen habe, ist das volltständige Verarbeiten, das Process Full. Dabei wird wirklich alles komplett neu gemacht. Also es werden alle Dimensionen ausgelesen, aktualisiert und die Daten komplett vom Nichts wieder komplett neu eingelesen. Das ist gar nicht so schlecht, wie man denkt, weil das System dabei verfügbar bleibt. Der Cube kann weiterhin Anfragen beantworten, während ein vollständiges Verarbeiten läuft. Das wird einfach so gemacht, dass quasi eine zweite Kopie neben dem ersten Cube aufgebaut wird und in dem Moment, wenn die zweite Kopie fertig ist, dann werden die Abfragen, die auf der ersten Kopie laufen, abgewartet bis sie fertig sind und dann umgeleitet auf den neuen Cube und dann verschwindet die Kopie. Also eine wirklich gute Methode, die nur den Nachteil hat, dass wir einen bestimmten Moment lang natürlich zwei Kopien des Cubes auf der Festplatte haben. Das könnte ein bisschen größer werden. Eine oder zwei relativ seltene Optionen, die man eigentlich nur braucht, wenn das Verarbeiten wirklich geschwindigkeitsmäßig voll optimiert werden muss, ist dieses Process Data und Process Index. Die beiden macht man normalerweise hintereinander. Erst mal Process Data dann hat man nur die neuen Daten auch ganz schnell im Zugriff, aber die Abfragen könnten langsamer sein, weil noch keine Indizes drauf sind. Und dann macht man Process Index, dann gibt es auch Indizes dazu. Also vergessen Sie das wieder. Das ist nur bei riesigen Cubes in Ernstfällen nötig. Das Verarbeiten Löschen, also das Unprocess, das einfach Speicherplatz freigibt. Das kann natürlich auch passieren, dass Sie sagen, Sie haben einen riesigen Cube und der hat Daten, die sind älter als 10 Jahre und die wollen Sie mal loswerden, dann müssen Sie nicht die Partition löschen, sondern dann machen Sie dieses "Löschen verarbeiten", dann bleibt das noch da, aber es sind einfach keine Daten mehr drin und der Speicherplatz wird frei. Jetzt kommen wir aber zu den spannenden Sachen. Das was sich eigentlich jeder wünscht. Denn wenn wir 4 Jahre Daten im Cube haben, dann möchten wir ja nicht alle 4 Jahre neu verarbeiten, nur weil wir die neuen Daten eines Tages hinzubekommen haben. Wir möchten das inkrementell machen oder "Hinzufügung verarbeiten". Das ist wie gesagt eine Super Option. Wenn man die jetzt auswählt im Menü und sagt: Okay, jetzt habe ich es geschafft - Nein. Denn dann wird der Cube sagen: Moment bitte, wenn du das machen willst, dann musst du mir mitteilen, woran ich erkenne, was die neuen Datensätze sind, also die seit gestern hinzugekommen sind. Das heißt, dann muss ich sagen: Hier in dieser speziellen Tabelle sind nur alle neuen Datensätze seit gestern. Oder hier ist eine spezielle SQL Abfrage, wenn du die abfeuerst, dann kommen nur genau die Datensätze raus, die seit gestern neu sind und im Cube noch fehlen und dann funktioniert dieses Process incremental. Aber ich habe immer wieder die Herausforderung, ich muss beim Ladevorgang irgendwo einen Marker setzen, der mir sagt: Das sind die neuen Datensätze, die müssen noch verarbeitet werden. Also ganz so trivial und einfach ist das nicht. Was wieder ziemlich einfach ist, ist das Process Update bei Dimensionen. Das ist so ziemlich das analoge und die Reihenfolge ist eigentlich auch falsch. Man sollte nämlich immer zuerst das Process Update bei den Dimensionen machen, damit die Dimensionen in den Stammdaten eventuell neue Elemente bekommen haben und dann das Process Incremental bei den Measure Groups, damit dann da neue Datensätze reinkommen. Das zeugt schon davon, dass eben Process Update bei den Dimensionen dort eben auch die neuen Datensätze hinzufügt, aber auch, wenn sich ein Attribut verändert hat, es auch einmal austauschen kann gegen einen neuen Inhaltswert, das funktioniert und es stellt keine dummen Fragen. Das heißt, Process Update bei Dimensionen schaut ganz von alleine nach, was sich in der Dimension geändert hat und wird nur das modifizieren. Dazu muss ich nicht extra angeben, was die neuen Datensätze sind und so weiter. Also auch das ist eine Rundum Sorglos-Aktion. Allerdings, wenn man sehr große Dimensionen hat, kann sie ein bisschen länger dauern. Das war ein kurzer Überblick über die vielen verschiedenen Möglichkeiten, wie man Measure Groups oder Dimensionen bei Cubes verarbeitet, um sie auf den neuesten Stand zu bringen.

SQL Server Analysis Services im mehrdimensionalen Modus Grundkurs

Lernen Sie eigene OLAP-Cubes und -Lösungen mit dem multidimensionalem Modus der SQL Server Analysis Services zu erstellen.

3 Std. 57 min (54 Videos)
Derzeit sind keine Feedbacks vorhanden...
Hersteller:
Software:
Exklusiv für Abo-Kunden
Ihr(e) Trainer:
Erscheinungsdatum:25.04.2017
Laufzeit:3 Std. 57 min (54 Videos)

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!