none
Olap Cube in Visual Studio "Process" durchführen RRS feed

  • Frage

  • Hallo

    Ich habe einen Test Cube auf relationale Datenbanken erstellt. Um neue Daten die in den relationalen Datenbanken hinzugefügt wurden in den Cube zu bekommen muss man ein "Process" auf den Cube machen. Zum Test hab ich den Namen einen Artikels in der relationalen Produkt Tabelle geändert. Danach ein "Process" mit "Process Full"  im Visual Studio durchgeführt. Jetzt sollte eigentlich im Browser des Cubes die Artikel Bezeichnung geändert angezeigt werden. Ist aber leider nicht so.

    Ich hab auch verucht im Reiter "Partitions" / "Storage Settings" mit OLAP ROLAP HOLAP zu experimentieren. Hat nichts genutzt.

    Was mache ich falsch, um neue Daten in den relationalen Datenbanken in den Cube zu bekommen?

     

    Vielen Dank

     

    Donnerstag, 20. Oktober 2011 07:00

Antworten

  • Danach ein "Process" mit "Process Full"  ....

    Was mache ich falsch, um neue Daten in den relationalen Datenbanken in den Cube zu bekommen?

     


    Hallo Peter,

    das lässt sich aus der Ferne schwer sagen. Bei Änderungen an den Daten einer Dimension reicht ein "Process Update" vollkommen aus, um aktuelle Daten zu erhalten. Bei der Process Option bleibt auch der Cube selbst vollständig erhalten, während bei "Process Full" der Cube ebenfalls neu aufgebaut werden muss.

    Hast Du die Daten an der richtigen Stelle (DB, Tabelle, Spalte) geändert, hast Du ggf auch richtig commited, hast Du in BIDS Dich neu mit dem Cube verbinden lassen etc.?
    Neben BIDS kannst Du auch in SSMS den Cube browsen; ich der DE Version heisst es etwas irritieren "Durchsuchen"; gleiches Ergebnis?


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    • Als Antwort markiert Peter01 Freitag, 21. Oktober 2011 05:45
    Donnerstag, 20. Oktober 2011 16:41

Alle Antworten

  • Danach ein "Process" mit "Process Full"  ....

    Was mache ich falsch, um neue Daten in den relationalen Datenbanken in den Cube zu bekommen?

     


    Hallo Peter,

    das lässt sich aus der Ferne schwer sagen. Bei Änderungen an den Daten einer Dimension reicht ein "Process Update" vollkommen aus, um aktuelle Daten zu erhalten. Bei der Process Option bleibt auch der Cube selbst vollständig erhalten, während bei "Process Full" der Cube ebenfalls neu aufgebaut werden muss.

    Hast Du die Daten an der richtigen Stelle (DB, Tabelle, Spalte) geändert, hast Du ggf auch richtig commited, hast Du in BIDS Dich neu mit dem Cube verbinden lassen etc.?
    Neben BIDS kannst Du auch in SSMS den Cube browsen; ich der DE Version heisst es etwas irritieren "Durchsuchen"; gleiches Ergebnis?


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    • Als Antwort markiert Peter01 Freitag, 21. Oktober 2011 05:45
    Donnerstag, 20. Oktober 2011 16:41
  • Hallo Olaf

     

    Vielen Dank für deine Hilfe. Peinlich aber wahr. Ichg hab die Daten ander falschen relationalen Datenbank geändert.

    Jetzt funktioniert es.

     

    Ich mach das "Process" auf den ganzen Cube und nicht nur auf die Dimension. Das heisst ich muss Process Full nehmen, weil Process Update nur bei einer Dimension geht?!

    Vielen Dank nochmal

    Peter


    • Bearbeitet Peter01 Freitag, 21. Oktober 2011 05:52
    Freitag, 21. Oktober 2011 05:51
  • Ich mach das "Process" auf den ganzen Cube und nicht nur auf die Dimension. Das heisst ich muss Process Full nehmen, weil Process Update nur bei einer Dimension geht?!


    Hallo Peter,

    das Verarbeiten des Cubes und der Dimensionen sind zwei getrennte Angelegenheiten.

    Ein nennenswerter Unterschied zu anderen OLAP Systemen ist, das in SSAS UDM = "Unified Dimension Model" verwendet. Man definiert in der SSAS Datenbanken seine Dimensionen. Dann kann man 0-n Cubes anlegen und in denen kann man dann die Dimensionen verwenden, auch mehrfach innerhalb eines Cubes. Wenn Du eine Dimension aktualisieren lässt (als UPDATE), dann hast Du in allen Cubes aktuelle Dimensionsdaten. Bei der Dimension-Verarbeitung wird zwar auch der Cube aktualisiert, aber quasi nur leere Werte für neue Dimensionsattribute hinzugefügt, nicht mehr.

    Analog dazu die Cube Verarbeitung, hier werden nur die Faktendaten gelesen und die Aggregationen aufgebaut, die Dimensionen werden aber nicht aktualisiert. Nehmen wir mal an, Du hast eine Dimension, die in 5 Cubes verwendet wird, warum sollte dann auch die Dimension bei der Verarbeitung jeder der 5 Cube aktualisiert werden, das wäre überflüssig ind ineffizient.
    Das wird Dir auch "unangenehm auffallen", wenn Du nur den Cube verabeiten lässt und in den neuen Faktendaten eine neues Dimensionsattribut referenziert ist, das aber in der Dimension mangels Neuverarbeitung nicht vorhanden ist; dann läuft es auf einen Fehler.

    Starte mal die Cube Verarbeitung an, ohne wirklich zu starten, also nur so das der Dialog offen ist. Dann man auf den Cube Eintrag in der oberen Liste einen Rechte-Maus-Klick: Hier findest Du einen Menü Punkt "Verwendete Dimensionen hinzufügen". Auf die Art kannst Du alle benötigten Dimensionen mitverarbeiten lassen.

    Sie Dir auch mal den Technet Artikel "Analysis Services Processing Best Pratices" an, da werden gute Tipps aufgeführt. Solange ein Cube noch klein ist, kann man immer alles vollständig verarbeiten lassen, aber je größer er wird, desto mehr muss man sich Gedanken über eine sinnvolle Verarbeitungsstrategie machen.


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    Freitag, 21. Oktober 2011 14:42