Indexstrukturen für das Data Warehousing

Größe: px
Ab Seite anzeigen:

Download "Indexstrukturen für das Data Warehousing"

Transkript

1 Indexstrukturen für das Data Warehousing Volker Wildi Konstanz, den 7. August 2005 Inhaltsverzeichnis 1. Einführung 1 2. Bisherige Indexstrukturen Der Bitmap-Index Der R-Baum Der X-Baum Der DC-Baum Konzepthierarchie Minimal-beschreibende Sequenzen Algorithmen Einfügen Splitten Hierarchie-Splitt Bereichsabfragen Leistungsmessung Testumgebung Ablauf der Messungen Ergebnisse Zusammenfassung 7 A. Algorithmen 8 A.1. Einfügen eines Verzeichnisknotens A.2. Splitten eines Verzeichnisknotens A.3. Hierarchie-Splitt A.4. Bereichsabfrage Einführung Ein Data Warehouse [2, 9] ist eine Sammlung von Daten von mehreren Quellen, die zusammengefügt und um eine Auswertungsinformation erweitert werden, um dann in einer zentralen Datenbank abgespeichert zu werden. Mit Hilfe eines Data Warehouses können organisatorische Entscheidungen besser getroffen werden. Dieser Entscheidungsprozess wird als OLAP (On-Line Analytical Processing) [2, 3] bezeichnet. Damit solche OLAP-Anwendungen funktionieren können, müssen sie verschiedene Sichten (Dimensionen) der Daten besitzen. Ein Datenwürfel ist eine mehrdimensionale Sicht der Datenbank mit einem zusätzlichen Wert, z. B. von Autoverkäufen. Dieser Würfel ist in verschiedene Dimensionen unterteilt, wie z. B. Modell, Farbe, Verkaufsdatum usw. Die zu untersuchende Metrik wird als Messattribut bezeichnet, im Beispiel Autoverkäufe. Jede Zelle des Datenwürfels entspricht einer eindeutigen Menge an Werten der verschiedenen Dimensionen und enthält den Messwert für diese Menge. Ein Data Warehouse besteht aus mehreren Datenwürfeln. Ein Datenwürfel kann als d-dimensionales Array betrachtet werden, wobei jede Zelle die Messattribute für den jeweiligen Unterwürfel enthält. Typischerweise tangieren Abfragen eine riesige Menge an Datensätzen und sind deshalb sehr aufwendig zu verarbeiten. Daher empfiehlt es sich, die Ergebnisse relevanter Abfragen zu merken, um die Ausführung zu beschleunigen. Allerdings kann dieser Ansatz nicht in dynamischen Umgebungen eingesetzt werden, da die Abfragen nicht genau bekannt sind und deren Anzahl potentiell sehr groß ist. In diesem Umfeld sollten Bereichsabfragen unterstützt werden. Bereichsabfragen [8] geben einen fortlaufenden Bereich für 1

2 jede ihrer Dimensionen des Datenwürfels und wenden einen Aggregationsoperator auf eine Menge an selektierten Zellen an. Damit diese Bereichsabfragen effizient unterstützt werden können, wurden mehrere Ansätze für mehrdimensionale Indexstrukturen über die Zeit entwickelt. In einem Data Warehouse werden normalerweise die Einfüge- und Löschoperationen in der Datenbank sofort durchgeführt. Aktualisierungen werden gesammelt und periodisch (z. B. jede Nacht) in das Data Warehouse mit Hilfe eines Batch-Modus eingespielt. Danach müssen auch alle Indexstrukturen auf den aktuellen Stand gebracht werden. Allerdings hat dieses Vorgehen zwei entscheidende Nachteile: Die Durchschnittszeit für das Einspielen eines einzelnen Updates ist klein, im Gegensatz zur gesamten Batch-Einspielung. Dadurch ist das Data Warehouse für einen gewissen Zeitrahmen nicht erreichbar. Der Datenstand ist nicht immer aktuell. Dies ist bei vielen Anwendungen nicht problematisch, aber es gibt Anwendungen (z. B. Aktienmarkt) für die dies essentiell ist. Eine Bereichsabfrage ist ein fortlaufender Bereich, die jede Dimension des Datenwürfels einschränken soll, um eine Treffermenge zurückzuliefern. Auf diese wird dann anschließend ein Aggregationsoperator angewendet. Ein Beispiel für eine solche Bereichsabfrage könnte die folgende sein: Gib alle täglichen Durchschnittsverkäufe im Monat Juli aus. Die Menge an Daten, die in einem Data Warehouse gespeichert werden, sind riesig. Für einen effizienten Zugriff auf diese Daten müssen deshalb Indexstrukturen eingesetzt werden. Weiter sollen diese Indexstrukturen auch Bereichsabfragen effizient unterstützen [6]. Dazu gibt es eine Reihe an Ansätzen für solche Indexstrukturen, wie den Bitmap- Index, den R-Baum [7] oder den X-Baum [1], die im nachfolgenden kurz beschrieben werden sollen. 2. Bisherige Indexstrukturen 2.1. Der Bitmap-Index Beim Bitmap-Index [4, 10] handelt es sich um eine eindimensionale Indexstruktur, die sehr oft in bisherigen Implementationen wie z. B. Oracle [11] oder Sybase [12] eingesetzt wird. Die Blattseiten dieser Indexstruktur enthalten keine Liste an Identifikationsnummern, sondern Bitvektoren. Diese Bitvektoren besitzen für jeden Datensatz ein eigenes Bit. Die Implementation dieses Indexes ist sehr einfach und durch die Verwendung von Bit-Operationen sehr effizient. Allerdings kann diese Indexstruktur unter Umständen sehr viel Speicher einnehmen. Dazu ist die Ausführungsgeschwindigkeit der Insert- und Delete-Operationen drastisch langsamer im Vergleich zu einer Baumstruktur, da bei jedem neuen Datensatz der gesamte Index neu aufgebaut werden muss Der R-Baum Eine andere Indexstruktur, die auf einer Baumstruktur aufsetzt, ist der R-Baum [7]. Dabei handelt es sich um eine Erweiterung des eindimensionalen Datenraums des B-Baums zu einem d-dimensionalen Datenraum. Der R-Baum verwendet d- dimensionale Hyperrechtecke zur Indizierung der Datensätze. Jedes dieser Hyperrechtecke kann zwischen einem und N Datensätze erfassen, wobei N die Kapazität dieses Hyperrechteckes ist. Alternativ werden diese Hyperrechtecke auch als Minimum Bounding Rectangles (MBRs) bezeichnet. Die MBRs der R-Bäume überlappen sich sehr oft, was sehr von Nachteil ist, da sich mit disjunkten MBRs mehr Raum abdecken lässt Der X-Baum Der X-Baum [1] ist eine Erweiterung des R-Baumes, der den Nachteil der überlappenden MBRs vermeidet. Weiter führt diese Indexstruktur das Prinzip der Superknoten ein. Diese sollen verhindern, dass ein Baum beim Splitten entartet und 2

3 umgehen. Zusätzlich soll diese eine effiziente Unterstützung für Bereichsabfragen bieten. Die Struktur des DC-Baumes ähnelt dem des X-Baumes, dabei werden die MBRs durch eine andere Datenstruktur ersetzt Konzepthierarchie Abbildung 1: Beispiel für einen R-Baum so unbalanciert wird. Ein Superknoten besitzt als Kapazität ein Vielfaches der Standard-Blockgröße. Abbildung 2 gibt ein Beispiel für einen X-Baum. Allerdings birgt auch diese Indexstruktur einen Nachteil, weil wie auch beim R-Baum bei den MBRs zu viel leerer Raum abgedeckt wird, wie Abbildung 3 zeigt. Abbildung 2: Beispiel für einen X-Baum Ein Datenwürfel besteht bekanntlich aus mehreren Dimensionen und einem Messwert. Existiert nun mehr als ein funktionales Attribut pro Dimension, dann werden diese Attribute in ein Hierarchieschema gegliedert. Eine Konzepthierarchie ist eine Instanz eines Hierarchieschemas. Abbildung 4 zeigt ein Beispiel für die Dimension Kunde und dessen funktionalen Attributen Region, Nation und KundenID. Die Wurzel jeder Konzepthierarchie trägt die Bezeichnung ALL. Dies stellt auch die Vereinigung aller Werte in dieser Konzepthierarchie dar. Es wird je eine Konzepthierarchie pro Dimension angelegt. Weiter wird eine partielle Ordnung einer Dimension eingeführt, die für die Splittalgorithmen des DC-Baumes wichtig ist. Zwei Attributwerte a und b innerhalb einer Dimension sind partiell geordnet (a b), falls a gleich b ist, oder a ein direkter oder indirekter Abkömmling von b ist. Abbildung 3: Das Bild links stellt die Überlappung eines R- Baumes dar. Die rechte Grafik zeigt die farbliche Kennzeichnung der Anzahl der Überlappungen. 3. Der DC-Baum Die nachfolgend vorgestellte Indexstruktur trägt den Namen DC-Baum [5] und soll die Nachteile der im vorherigen Abschnitt beschriebenen Indexstrukturen Abbildung 4: Hierarchieschema und Konzepthierarchie für die Dimension Kunde Die Vorteile der partiellen Ordnung im Vergleich zur totalen Ordnung sind in Abbildung 5 dargestellt. In einer totalen Ordnung wird jedem Produkt eine eindeutige Identifikationsnummer zugeordnet. Ein Problem existiert erst beim Einfügen neuer Produkte. Wird in dem Beispiel aus 3

4 Abbildung 5 ein neuer Fernseher der Marke Samsung hinzugefügt, so würde dieser zwischen i und i+1 eingefügt werden. Die totale Ordnung im Beispiel erlaubt nur Bereichsabfragen nach der Marke. Es werden also nicht alle Attribute gleich behandelt, da z. B. nicht nach den Produkttypen gesucht werden kann. Das Einfügen in der partiellen Ordnung hingegen, ist genauso natürlich, da die Blätter in der Konzepthierarchie als Mengen aufgebaut sind. Diese Struktur ermöglicht nun auch Bereichsabfragen nach Produkttypen als auch Marken, wobei diese noch effizienter durch die Blattmengen beantwortet werden können. Dies wird durch einen Algorithmus ermöglicht, der weiß, welche Blätter die relevanten Daten beinhalten und somit nicht die komplette Liste der Produkte durchlaufen muss. Der DC-Baum speichert eine Konzepthierarchie pro Dimension und ordnet jedem Attributwert eine ID pro eingefügtem Datensatz zu. Dies vermeidet das Abspeichern von langen Zeichenketten, definiert aber keine totale Ordnung. Wichtig ist, dass der DC-Baum seine Konzepthierarchie dynamisch verwaltet. Eine Identifikationsnummer wird als Ganzzahl abgespeichert und hat eine feste Länge von 4 Bytes. Dabei geben die vier höchstwertigen Bits die Höhe der ID in der Konzepthierarchie an, um Identifikationsnummern in verschiedener Level zu unterscheiden. Der DC-Baum repräsentiert die Konzepthierarchie als eine Art Wörterbuch, indem er die ID des Vaters für jede ID in einer Konzepthierarchie abspeichert. Am Beispiel aus Abbildung 4 enthält jeder Datensatz einen Wert für jede Region, Nation und KundenID. Der DC-Baum weist jedem Wert eine ID zu und aktualisiert seine Konzepthierarchie für die Dimension Kunde Minimal-beschreibende Sequenzen Die vom X-Baum verwendeten MBRs eignen sich nicht als Approximationsmethode für den Einsatz beim DC-Baum. Ab- Abbildung 5: Vergleich zwischen der totalen (oben) und der partiellen (unten) Ordnung Abbildung 6: Vergleich zwischen einer MBR und einer MDS bildung 6 zeigt ein Beispiel für zwei partiell geordnete Dimensionen A und B, wobei die totale Ordnung durch die Indizes gegeben ist. Die linke Abbildung zeigt ein MBR, welche eine totale Ordnung für diese Dimension annimmt. Die Angabe ([A2, A8], [B2, B5]) ist ausreichend zur Definition einer MBR, da der Bereich [A2, A8] alle Attribute enthält, die zwischen A2 und A8 liegen. Allerdings gilt dies nicht für eine partielle Ordnung dieser Dimension. Deshalb verwendet der DC-Baum so genannte Minumum Describing Sequences (MDSs). Die Approximation mit Hilfe der MDS wird auf der rechten Seite von Abbildung 6 dargestellt. Dort werden nur Attributwerte abgebildet, die in mindestens einem Datensatz vorhanden sind. So sind zum Beispiel die beiden Attribute A1 und A4 nicht in der ersten Menge des MDS enthalten. Eine MDS deckt also weniger leere Bereiche als ein MBR ab. Dafür muss sie andererseits mehr Informationen abspeichern, da die MDSs untereinander in ihrer Größe variieren. Folgenden Punkt gilt es zu beachten: Erstens müssen alle Attributwerte einer 4

5 gegebenen Dimension dem gleichen Level der Konzepthierarchie angehören. Zweitens ist der Messwert kein Bestandteil der MDS, wird aber mit dem Knoten abgespeichert, da die MDS mit dem Messwert verbunden ist. Die erste MDS eines neuen DC-Baumes sieht wie folgt aus MDS(ALL,..., ALL). Dadurch sind die relevanten Level alle mit dem obersten Level initialisiert. Beim Durchführen eines Hierarchiesplittes für einen gegebenen Knoten wird eine Dimension bestimmt und der relevante Level dieser Dimension wird um eins verringert für die MDS der zwei entstandenen Untergruppen Algorithmen Die nachfolgend vorgestellten Algorithmen des DC-Baumes werden hier in ihrer Funktionsweise beschrieben. Der Pseudocode zu diesen Algorithmen findet sich in Anhang A Einfügen Der vorgestellte Einfügealgorithmus ist annähernd unverändert im Vergleich zum Einfügealgorithmus des X-Baumes. Der einzufügende Datensatz enthält bereits die zugewiesenen IDs für seine Attribute und Messwerte. Nachdem die Messwerte des Verzeichnisknotens aktualisiert wurden, wählt die ChooseSubtree- Methode ein Kind follow aus, in welchem dann der Datensatz weiter eingefügt werden soll. Muss darauf auch der follow geteilt werden, so enthält der Verzeichnisknoten ein neues Kind. Hat dieser Verzeichnisknoten seine Kapazität überschritten, so wird dem Splitt-Algorithmus dieser Knoten als Parameter übergeben. Das Ergebnis dieses Algorithmuses ist entweder ein gesplitteter Verzeichnisknoten oder ein Superknoten. War dieser schon ein Superknoten, so wird dieser vergrößert, ansonsten wird ein neuer Superknoten erzeugt Splitten Der Splitt-Algorithmus für die Verzeichnisknoten durchläuft alle Dimensionen, bis er einen angemessenen Splitt findet oder alle Dimensionen geprüft hat. Zu Beginn des Algorithmus wird eine Splittdimension aus den Hierarchieleveln der Elemente der MDS selektiert. Damit eine balancierte Struktur entsteht, selektiert der Algorithmus die Dimension mit dem höchsten Hierarchielevel. Enthält z. B. eine MDS einen ALL-Wert in einer Dimension und in allen anderen Dimensionen nur Werte von niedrigeren Leveln in der Konzepthierarchie, so wird die Dimension mit dem ALL-Wert als Splittdimension ausgewählt. Anschließend werden die MDSs der Verzeichniseinträge an die MDS des Verzeichnisknotens angepasst, da sie in jeder Dimension Elemente enthalten, die im gleichen Level der entsprechenden Konzepthierarchie sein müssen (Definition der MDS). Da die MDS eines Verzeichnisknotens selbst alle MDSs der Einträge des Verzeichnisknotens enthält, ist diese Verzeichnis-MDS die beste Wahl. Die modifizierten MDSs und die gewählte Splittdimension werden dem Hierarchiesplitt-Algorithmus als Parameter übergeben. Dabei entstehen zwei Gruppen von MDSs. Sind die resultierenden Gruppen zu unausgeglichen oder sie überlappen sich zu sehr, so wird eine andere Dimension ausgewählt. Wird daraufhin kein entsprechender Splitt für irgendeine Dimension gefunden, so wird auch hier ein Superknoten erzeugt. Dabei gilt zu beachten, dass ein solcher Knoten wie jeder andere Verzeichnisknoten gesplittet werden kann, falls die Kapazität des Verzeichnisknotens die Blockanzahl des Superknotens überschreitet Hierarchie-Splitt Die Idee dieses Algorithmus ist, dass die Gruppen des MBRs in zwei Untergruppen geteilt werden, indem zuerst zwei MBRs gewählt werden (die so genannten Seeds), die nicht in der gleichen Unter- 5

6 gruppe enthalten sein sollen. Dieser Algorithmus setzt auf dem des R-Baumes auf, allerdings verwendet dieser die partielle Ordnung. Zuerst werden die zwei Seeds-MDSs aus der ganzen Menge ausgewählt, die dann die Eingangsgruppen des Algorithmuses bilden. Danach werden die restlichen Klassen je nach Kriterium in eine der beiden Teilgruppen eingefügt. Im Idealfall sind die beiden Teilgruppen disjunkt und teilen sich innerhalb dieser beiden Gruppen entlang der Splittdimension so viele Attribute wie möglich. Die Laufzeit dieses Algorithmuses ist in O(n 2 ), da für jede verbleibende MDS geprüft werden muss, zu welcher Gruppe diese zugeordnet wird. Dabei müssen bei jedem Schleifendurchlauf zwei Fragen beantwortet werden. Welche MDS wird als nächstes eingefügt und in welche der beiden Teilgruppen? Die erste Frage wird durch die Splittdimension entschieden. Das Splitten entlang der Splittdimension hat die Absicht zwei Gruppen mit disjunkten Attributen zu erhalten. Dieser Algorithmus wählt eine Gruppe so aus, dass die neue MDS mit der Gruppen-MDS so viele Attributwerte wie möglich in dieser Splittdimension gemeinsam haben. Die zweite Frage wird durch die drei Kriterien Überlappung, Ausdehnung und Volumen beantwortet, wobei die drei Kriterien in dieser Reihenfolge geprüft werden. Daher wird die gewählte MDS in die Gruppe eingefügt, mit der sie sich am geringsten überlappt. Falls dies keine Entscheidung (bei Gleichheit) brachte, so wird die Ausdehnung betrachtet. Sollte sich das Volumen vergrößern oder eine Entscheidung nicht erlauben, so wird eine der Gruppen ausgewählt Bereichsabfragen Der DC-Baum bietet zusätzlich eine Unterstützung für Bereichsabfragen. Dafür wird dem Algorithmus eine Bereichs-MDS als Parameter übergeben. Der Algorithmus durchläuft alle Dimensionen der Verzeichniseinträge. Dabei werden in jedem Schritt die beiden MDSs der Abfrage und des Verzeichnisknotens vergleichbar gemacht werden, um sie anschließend miteinander zu vergleichen. Dabei gilt es drei Fälle zu unterscheiden. Erstens, die beiden Bereiche überlappen sich überhaupt nicht, dann ist dieser Eintrag nicht relevant für diese Abfrage und die Ergebnismenge bleibt unverändert. Zweitens, der Bereich der Eintrages ist komplett in der Bereichsabfrage enthalten, so wird dieser Eintrag komplett zu der Ergebnismenge hinzugefügt. Oder drittens, die beiden Bereiche überlappen sich, so wird diese Bereichsabfrage rekursiv für den Sohnknoten aufgerufen. 4. Leistungsmessung Dieser Abschnitt vergleicht die Leistungen des DC-Baumes mit den denen des X- Baumes und der sequentiellen Suche unter realistischen Bedingungen Testumgebung Die zugrundeliegende Datenbank für die Leistungsmessungen des DC-Baumes war der TPC Benchmark D (TPC-D) [13]. Dabei handelt es sich um ein Geschäfts- Data Warehouse mit Dimensionen wie z. B. Teile, Lieferanten, Kunden, usw. Weiter eignet sich dieser Benchmark für Langzeitabfragen auf komplexen Datenstrukturen Ablauf der Messungen Damit die Leistung des DC-Baumes mit den anderen beiden Algorithmen verglichen werden konnte, mussten zuerst einmal Bereichsabfragen erzeugt werden. Es wurden zufällig Level aus der Konzepthierarchie für jede Dimension ausgewählt, die dann einer Bereichs-MDS zugeordnet wurden. Am Beispiel der Dimension Lieferant mit funktionalen Attributen Region, Nation und Lieferant würden die Bereichsabfragen zufällige Attributwerte aus diesen enthalten. Die Größe der einzelnen Mengen der Bereichs-MDS ist durch ihre Se- 6

7 lektivität begrenzt. Bei einer Selektivität von 15% enthält diese Menge bis zu 15% von allen Attributen in jeder Dimension. Allerdings gab es bei dieser Art der Abfragenerzeugung ein Problem, da der X-Baum im Gegensatz zum DC-Baum MBRs benutzt und somit mit den MDSs und Konzepthierarchien nicht umgehen konnte. Dies konnte vermieden werden, indem zu jedem Level in der Konzepthierarchie eine zusätzliche Dimension hinzugefügt wurde. Hingegen mussten keine Änderungen bei den Bereichs-MDSs gemacht werden, um diese in Bereichs- MBRs des X-Baumes zu konvertieren. Jetzt war es möglich, alle drei Indexstrukturen miteinander zu vergleichen. Damit die Messungen fair abliefen, stand allen drei Indexstrukturen der gleiche Arbeitsspeicher, nämlich genauso viel wie der DC-Baum beantspruchte, zur Verfügung Ergebnisse Die nachfolgenden Tests über die Einfügezeiten und die Abfragezeiten wurden mit verschiedenen Selektivitäten durchgeführt. Dabei hat auch die Größe der Datenwürfelbereiche variiert, nämlich von bis zu Datensätzen. Der X-Baum speichert im Gegensatz zum DC-Baum keine Konzepthierarchien ab und vermeidet dadurch häufige Berechnungen, was die Einfügezeit signifikant verringert. Allerdings haben Messungen ergeben, dass das Einfügen eines einzelnen Datensatzes in den DC-Baum nur ungefähr 0,025 Sekunden benötigt und das auf einer HP C160 mit 768MB RAM und HP UX Das dynamische Einfügen hat daher keinen erheblichen Einfluss auf die Laufzeit des Data Warehouses und ermöglicht somit den DC-Baum immer aktuell zu halten. Die Testmessungen für Bereichsabfragen zeigten eine Reduzierung der Ausführungszeiten beim DC-Baum im Vergleich zu den anderen Indexstrukturen. Tatsächlich betrug die Beschleunigung für die Bereichsabfragen des DC-Baumes bezogen auf den X-Baum 4,5 bei einer Selektivität von 5%. Gegenüber der sequientiellen Suche sogar um 12,5. Die Messungen zeigten weiter, dass Bereichsabfragen mit einer Selektivität von 5% am schnellsten verarbeitet werden konnten. Dies liegt am Kompromiss zwischen dem Level, bei dem der DC-Baum die Bereichsabfragen komplett beantwortet, und den Ausführungskosten bei Bereichsabfragen mit größeren Bereichs-MDS. Je größer die Abfrage- MDS, desto höher ist auch die Wahrscheinlichkeit, dass die MDS eines Eintrages vollständig in der Abfrage-MDS enthalten ist. Daher ist auch klar, dass eine größere Abfrage-MDS eine bessere Ausführung erlaubt. Demgegenüber steht die teuere Berechnung der Abfrage-MDS, da die Wahrscheinlichkeit für die Überlappung von der Größe der Mengen abhängig ist. Beträgt die Selektivität der Bereichsabfragen nur 1%, so sind diese zu klein um die Abfrage zu bearbeiten. Hingegen bei einer Selektivität von 25% ist die Berechnung zu aufwendig, womit der beste Kompromiss bei 5% liegt. Weiter fällt auf, dass die Knotengröße, die durchschnittliche Anzahl an Einträgen, für die zwei höchsten Level im DC-Baum unterhalb der Wurzel linear mit der Anzahl der Datensätze zunimmt. Allerdings stabilisiert sich die Knotengröße bei 15 Einträgen im höchsten Level. Das liegt daran, dass bei jedem Splitten eines Verzeichnisknotens zwei neue Verzeichnisknoten mit MDSs erzeugt werden, die entweder weniger Attributwerte oder Attributwerte eines niedrigeren Level der Konzepthierarchie in jeder Dimension enthalten. 5. Zusammenfassung Mit dem DC-Baum wurde eine dynamische Indexstruktur vorgestellt, das ihr Einsatzgebiet im Bereich des Data Warehouse findet und dabei zwei Nachteile bisheriger Indexstrukturen umgeht. Dabei handelt sich um das Aktuellhalten beim Einspielen neuer Datensätze in die Indexstruktur auf der einen Seite und die 7

8 ständige Verfügbarkeit des Data Warehouses auf der anderen Seite. Weiter wurde eine effiziente Unterstützung für Bereichsabfragen geschaffen, da diese sehr häufig in diesem Gebiet vorkommen. Die Messungen am TPC-D-Benchmark gaben Argumente, dass diese Indexstruktur auch in professionellen RDBMS Verwendung finden sollte. Allerdings gibt es bis heute noch keine Implementierung in einem solchen System. Ein möglicher Grund dafür könnte noch die quadratische Laufzeit des Splittalgorithmuses sein. Daher sind auch die Erfinder des DC-Baumes motiviert, diesen effizienter zu implementieren, damit ihre entworfene Indexstruktur den Einsatz auch in professionellen Systemen findet. Aber erst die Zukunft wird zeigen, wie diese Indexstruktur sich im alltäglichen Einsatz eines Data Warehouses bewährt. A. Algorithmen Nachfolgend sind die Algorithmen des DC-Baumes im Pseudocode aufgeführt. A.1. Einfügen eines Verzeichnisknotens i n t DirNode : : I n s e r t ( data d ) Update measure value ; f o l l o w = ChooseSubtree ( d ) ; f o l l o w >i n s e r t ( d ) ; I f f o l l o w has been s p l i t : I n s e r t new son ; I f the c a p a c i t y i s reached : S p l i t ( DirNode NewBrother ) ; I f s p l i t was s u c c e s s f u l : return SPLIT ; Else : return SUPERNODE; return NONE; A.2. Splitten eines Verzeichnisknotens DirNode : : S p l i t ( DirNode NewBro) While found = FALSE and a t l e a s t one dimension has not been p r o c e s s e d : Choose dimension by l e v e l o f concept h i e r a r c h y ; Adapt MDSs o f e n t r i e s to MDS o f d i r e c t o r y node ; H i e r a r c h y S p l i t ( ModifiedMDSs [ ], SplitDimension ) ; I f nodes are balanced and o v e r l a p i s not too high : found = TRUE; I f non o f the s p l i t s was s u c c e s s f u l : Create supernode ; A.3. Hierarchie-Splitt H i e r a r c h y S p l i t (MBSs [ ], SplitDim ) Compute the c o v e r i n g MDS f o r each p a i r o f MDSs; I n i t i a t e the two s e e d s by choosing the p a i r with the l a r g e s t MDS; While remaining MDSs e x i s t : Compute the enlargement o f the two groups in the s p l i t dimension f o r each remaining MDS; Choose the MDS by the g r e a t e s t d i f f e r e n c e between the enlargements o f the two groups in the s p l i t dimension ; I n s e r t t h i s MDS i n t o the group with t h e minimum r e s u l t i n g o v e r l a p between the groups ; Resolve t i e s by choosing the minimum sum o f e x t e n s i o n s ; Resolve f u r t h e r t i e s by choosing the minimum sum o f volumes ; 8

9 A.4. Bereichsabfrage Der nachfolgend aufgeführte Pseudocode für Bereichsabfragen verwendet intern den Aggregationsoperator SUM. Selbstverständlich sind auch andere Aggregationsoperatoren möglich. double DirNode : : RangeQuery ( rngmds) r e s u l t = 0. 0 ; For each d i r e c t o r y entry : For each dimension : I f the rngmds and the MDS o f the entry are not on the same l e v e l in the c u r r e n t dimension, adapt the MDS with the lower l e v e l to the one with the higher l e v e l ; I f t h e r e i s o verlap between rngmds and the MDS o f the entry : I f the MDS o f the entry i s contained in the rngmds : r e s u l t += measure value o f entry ; Else : r e s u l t += entry >RangeQuery ( rngmds) ; Literatur [1] Stefan Berchtold, Daniel A. Keim, and Hans-Peter Kriegel. The X- Tree: An Index Structure for High- Dimensional Data. In Proc. 22th Int. Conf. on Very Large Databases, pages 28 39, Bombay, India, [2] Surajit Chaudhuri and Umeshwar Dayal. An Overview of Data Warehousing and OLAP Technology. SIG- MOD Record, 26(1):65 74, Analytical Processing) to User Analyst: An IT Mandate. Technical Report, [4] Ramez Elmasri and Shamkant B. Navathe. Fundamentals of Database Systems. Addision Wesley, Reading, MA, 4th edition, [5] Martin Ester, Jorn Kohlhammer, and Hans-Peter Kriegel. The DC-Tree: A Fully Dynamic Index Structure for Data Warehouses. In ICDE, pages , [6] Himanshu Gupta, Venky Harinarayan, Anand Rajaraman, and Jeffrey D. Ullman. Index Selection for OLAP. In ICDE, pages , [7] Antonin Guttman. R-Trees: A Dynamic Index Structure for Spatial Searching. In Proc. ACM SIGMOD Int. Conf. on Management of Data, pages 47 57, Boston, MA, [8] Ching-Tien Ho, Rakesh Agrawal, Nimrod Megiddo, and Ramakrishnan Srikant. Range Queries in OLAP Data Cubes. In Proc. ACM SIGMOD Int. Conf. on Management of Data, pages 73 88, New York, NY, [9] William H. Inmon. Building the Data Warehouse. John Wiley & Sons, Inc., New York, NY, 3rd edition, [10] Marcus Jürgens. Index Structures for Data Warehouses. Ph.D. Thesis, [11] Oracle Datenbank. oracle.com/database/index.html. [12] Sybase Datenbank. http: // informationmanagement. [13] Transaction Processing Council. TPC Benchmark D. [3] Edgar F. Codd, S. B. Codd, and C. T. Salley. Providing OLAP (On-Line 9

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY

Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY Data Cube On-line Analytical Processing (OLAP). Einführung Ziel: Auffinden interessanter Muster in großen Datenmengen 2. Aggregation in SQL, GROUP BY 3. Probleme mit GROUP BY 4. Der Cube-Operator! Formulierung

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN

KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN RALF HINZE Institut für Informatik III Universität Bonn Email: ralf@informatik.uni-bonn.de Homepage: http://www.informatik.uni-bonn.de/~ralf Februar, 2001 Binäre Suchbäume

Mehr

SJ OFFICE - Update 3.0

SJ OFFICE - Update 3.0 SJ OFFICE - Update 3.0 Das Update auf die vorherige Version 2.0 kostet netto Euro 75,00 für die erste Lizenz. Das Update für weitere Lizenzen kostet jeweils netto Euro 18,75 (25%). inkl. Programmsupport

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens 1 Organisatorisches Freitag, 05. Mai 2006: keine Vorlesung! aber Praktikum von 08.00 11.30 Uhr (Gruppen E, F, G, H; Vortestat für Prototyp)

Mehr

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei

Mehr

Aufgabe 1: [Logische Modellierung]

Aufgabe 1: [Logische Modellierung] Aufgabe 1: [Logische Modellierung] a) Entwerfen Sie für das von Ihnen entworfene Modell aus Aufgabe 2 des 1. Übungsblattes ein Star-Schema. b) Entwerfen Sie für das vorangegangene Modell einen Teil eines

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Nachtrag zu binären Suchbäumen

Nachtrag zu binären Suchbäumen Nachtrag zu binären Suchbäumen (nicht notwendigerweise zu AVL Bäumen) Löschen 1 3 2 10 4 12 1. Fall: Der zu löschende Knoten ist ein Blatt: einfach löschen 2. Fall: Der zu löschende Knoten hat ein Nachfolgeelement

Mehr

Datenbanksysteme 2 Frühjahr-/Sommersemester 2014 28. Mai 2014

Datenbanksysteme 2 Frühjahr-/Sommersemester 2014 28. Mai 2014 Lehrstuhl für Praktische Informatik III Prof. Dr. Guido Moerkotte Email: moer@db.informatik.uni-mannheim.de Marius Eich Email: marius.eich@uni-mannheim.de Datenbanksysteme 2 8. Übungsblatt Frühjahr-/Sommersemester

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert Inhalt Einführung 1. Arrays 1. Array unsortiert 2. Array sortiert 3. Heap 2. Listen 1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert 3. Bäume

Mehr

Algorithmik II. a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge 20, 28, 35, 31, 9, 4, 13, 17, 37, 25 ein.

Algorithmik II. a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge 20, 28, 35, 31, 9, 4, 13, 17, 37, 25 ein. Aufgabe 10 Binäre Bäume a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge, 28, 35, 31, 9, 4,, 17, 37, 25 ein. 1. Einfügen von : 3. Einfugen von 35: 2. Einfügen von 28: 28 28 10. Einfügen

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

R-Baum R + -Baum X-Baum M-Baum

R-Baum R + -Baum X-Baum M-Baum R-Baum und Varianten R-Baum R + -Baum X-Baum M-Baum staab@uni-koblenz.de 1 R-Baum R-Baum: Guttman 1984 Erweiterung B-Baum um mehrere Dimensionen Standardbaum zur Indexierung im niedrigdimensionalen Raum

Mehr

Anwendungsbeispiele Buchhaltung

Anwendungsbeispiele Buchhaltung Rechnungen erstellen mit Webling Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Rechnungen erstellen mit Webling 1.1 Rechnung erstellen und ausdrucken 1.2 Rechnung mit Einzahlungsschein erstellen

Mehr

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Konzepte der Informatik

Konzepte der Informatik Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Peter Koos 03. Dezember 2015 0 Inhaltsverzeichnis 1 Voraussetzung... 3 2 Hintergrundinformationen... 3 2.1 Installationsarten...

Mehr

Updatehinweise für die Version forma 5.5.5

Updatehinweise für die Version forma 5.5.5 Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

Überblick. Lineares Suchen

Überblick. Lineares Suchen Komplexität Was ist das? Die Komplexität eines Algorithmus sei hierbei die Abschätzung des Aufwandes seiner Realisierung bzw. Berechnung auf einem Computer. Sie wird daher auch rechnerische Komplexität

Mehr

Suchbäume. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Suchbäume. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Suchbäume Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative

Mehr

Schulberichtssystem. Inhaltsverzeichnis

Schulberichtssystem. Inhaltsverzeichnis Schulberichtssystem Inhaltsverzeichnis 1. Erfassen der Schüler im SBS...2 2. Erzeugen der Export-Datei im SBS...3 3. Die SBS-Datei ins FuxMedia-Programm einlesen...4 4. Daten von FuxMedia ins SBS übertragen...6

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

WinWerk. Prozess 4 Akonto. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon

WinWerk. Prozess 4 Akonto. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon Prozess 4 Akonto WinWerk 8307 Effretikon Telefon: 052-740 11 11 Telefax: 052 740 11 71 E-Mail info@kmuratgeber.ch Internet: www.winwerk.ch Inhaltsverzeichnis 1 Akonto... 2 1.1 Allgemein... 2 2 Akontobeträge

Mehr

Beispiel Shop-Eintrag Ladenlokal & Online-Shop im Verzeichnis www.wir-lieben-shops.de 1

Beispiel Shop-Eintrag Ladenlokal & Online-Shop im Verzeichnis www.wir-lieben-shops.de 1 Beispiel Shop-Eintrag Ladenlokal & Online-Shop. Als Händler haben Sie beim Shop-Verzeichnis wir-lieben-shops.de die Möglichkeit einen oder mehrere Shop- Einträge zu erstellen. Es gibt 3 verschiedene Typen

Mehr

Bedienungsanleitung für den Online-Shop

Bedienungsanleitung für den Online-Shop Hier sind die Produktgruppen zu finden. Zur Produktgruppe gibt es eine Besonderheit: - Seite 1 von 18 - Zuerst wählen Sie einen Drucker-Hersteller aus. Dann wählen Sie das entsprechende Drucker- Modell

Mehr

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper) Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10 Technische Informationen (White Paper) Inhaltsverzeichnis 1. Über dieses Dokument... 3 2. Überblick... 3 3. Upgrade Verfahren... 4

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs Informatik WiSe 15/16 Konzepte der Informatik Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 16.10.2015 Technische Universität Braunschweig, IPS Inhaltsverzeichnis Suchen Binärsuche Binäre Suchbäume 16.10.2015 Dr. Werner

Mehr

Algorithmen & Datenstrukturen 1. Klausur

Algorithmen & Datenstrukturen 1. Klausur Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse

Mehr

IBIS Professional. z Dokumentation zur Dublettenprüfung

IBIS Professional. z Dokumentation zur Dublettenprüfung z Dokumentation zur Dublettenprüfung Die Dublettenprüfung ist ein Zusatzpaket zur IBIS-Shopverwaltung für die Classic Line 3.4 und höher. Dubletten entstehen dadurch, dass viele Kunden beim Bestellvorgang

Mehr

Einfügen von Bildern innerhalb eines Beitrages

Einfügen von Bildern innerhalb eines Beitrages Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de

Mehr

Übung 9 - Lösungsvorschlag

Übung 9 - Lösungsvorschlag Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle Besprechung: 15.12.2008 Einführung in die Informatik Übung 9 - Lösungsvorschlag Aufgabe

Mehr

Durchführung der Datenübernahme nach Reisekosten 2011

Durchführung der Datenübernahme nach Reisekosten 2011 Durchführung der Datenübernahme nach Reisekosten 2011 1. Starten Sie QuickSteuer Deluxe 2010. Rufen Sie anschließend über den Menüpunkt /Extras/Reisekosten Rechner den QuickSteuer Deluxe 2010 Reisekosten-Rechner,

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Erstellung von Reports mit Anwender-Dokumentation und System-Dokumentation in der ArtemiS SUITE (ab Version 5.0)

Erstellung von Reports mit Anwender-Dokumentation und System-Dokumentation in der ArtemiS SUITE (ab Version 5.0) Erstellung von und System-Dokumentation in der ArtemiS SUITE (ab Version 5.0) In der ArtemiS SUITE steht eine neue, sehr flexible Reporting-Funktion zur Verfügung, die mit der Version 5.0 noch einmal verbessert

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1 3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)

Mehr

Algorithmen und Datenstrukturen Balancierte Suchbäume

Algorithmen und Datenstrukturen Balancierte Suchbäume Algorithmen und Datenstrukturen Balancierte Suchbäume Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Überblick Einführung Einfügen und Löschen Einfügen

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Über Arrays und verkettete Listen Listen in Delphi

Über Arrays und verkettete Listen Listen in Delphi Über Arrays und verkettete Listen Listen in Delphi Michael Puff mail@michael-puff.de 2010-03-26 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung 3 2 Arrays 4 3 Einfach verkettete Listen 7 4 Doppelt verkettete

Mehr

PeDaS Personal Data Safe. - Bedienungsanleitung -

PeDaS Personal Data Safe. - Bedienungsanleitung - PeDaS Personal Data Safe - Bedienungsanleitung - PeDaS Bedienungsanleitung v1.0 1/12 OWITA GmbH 2008 1 Initialisierung einer neuen SmartCard Starten Sie die PeDaS-Anwendung, nachdem Sie eine neue noch

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

Handbuch ZfEditor Stand 24.08.2012

Handbuch ZfEditor Stand 24.08.2012 Handbuch ZfEditor Stand 24.08.2012 Inhaltsverzeichnis Einführung... 1 Ansprechpartner... 1 Installation und Update... 1 Installation... 1 Update... 2 Bedienung des ZfEditors... 2 Aufruf... 2 Auswahl Gemeinde,

Mehr

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN Karlsruhe, April 2015 Verwendung dichte-basierter Teilrouten Stellen Sie sich vor, in einem belebten Gebäude,

Mehr

Mediumwechsel - VR-NetWorld Software

Mediumwechsel - VR-NetWorld Software Mediumwechsel - VR-NetWorld Software Die personalisierte VR-NetWorld-Card wird mit einem festen Laufzeitende ausgeliefert. Am Ende der Laufzeit müssen Sie die bestehende VR-NetWorld-Card gegen eine neue

Mehr

SANDBOXIE konfigurieren

SANDBOXIE konfigurieren SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:

Mehr

Hilfe zur Urlaubsplanung und Zeiterfassung

Hilfe zur Urlaubsplanung und Zeiterfassung Hilfe zur Urlaubsplanung und Zeiterfassung Urlaubs- und Arbeitsplanung: Mit der Urlaubs- und Arbeitsplanung kann jeder Mitarbeiter in Coffee seine Zeiten eintragen. Die Eintragung kann mit dem Status anfragen,

Mehr

Eigene Seiten erstellen

Eigene Seiten erstellen PhPepperShop Anleitung Datum: 3. Oktober 2013 Version: 2.1 Eigene Seiten erstellen Eigene Inhalte / CMS Glarotech GmbH Inhaltsverzeichnis Anleitung zur Erstellung von eigenen Inhalten/Links...3 1. Anmeldung

Mehr

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11 Kurzanleitung MEYTON Aufbau einer Internetverbindung 1 Von 11 Inhaltsverzeichnis Installation eines Internetzugangs...3 Ist mein Router bereits im MEYTON Netzwerk?...3 Start des YAST Programms...4 Auswahl

Mehr

Zuschauer beim Berlin-Marathon

Zuschauer beim Berlin-Marathon Zuschauer beim Berlin-Marathon Stefan Hougardy, Stefan Kirchner und Mariano Zelke Jedes Computerprogramm, sei es ein Betriebssystem, eine Textverarbeitung oder ein Computerspiel, ist aus einer Vielzahl

Mehr

Grafstat Checkliste Internetbefragung

Grafstat Checkliste Internetbefragung Grafstat Checkliste Internetbefragung ( A ) Datensammelpunkt im Formular eintragen ( B ) Befragung auf dem Datensammelpunkt anmelden ( C ) Formular ins Internet stellen (z.b. Homepage) ( D ) Befragung

Mehr

SICHERN DER FAVORITEN

SICHERN DER FAVORITEN Seite 1 von 7 SICHERN DER FAVORITEN Eine Anleitung zum Sichern der eigenen Favoriten zur Verfügung gestellt durch: ZID Dezentrale Systeme März 2010 Seite 2 von 7 Für die Datensicherheit ist bekanntlich

Mehr

Dokumentation für das Spiel Pong

Dokumentation für das Spiel Pong Dokumentation für das Spiel Pong BwInf - Turnierserver Didaktik der nformatik BWINF KI Wettbewerbs-Plattform Stand: 02.09.2014 Grundlagen In diesem KI-Turnier programmiert ihr einen Schläger für das Retro-Spiel

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 13 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:

Mehr

Binäre Bäume Darstellung und Traversierung

Binäre Bäume Darstellung und Traversierung Binäre Bäume Darstellung und Traversierung Name Frank Bollwig Matrikel-Nr. 2770085 E-Mail fb641378@inf.tu-dresden.de Datum 15. November 2001 0. Vorbemerkungen... 3 1. Terminologie binärer Bäume... 4 2.

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

ICS-Addin. Benutzerhandbuch. Version: 1.0

ICS-Addin. Benutzerhandbuch. Version: 1.0 ICS-Addin Benutzerhandbuch Version: 1.0 SecureGUARD GmbH, 2011 Inhalt: 1. Was ist ICS?... 3 2. ICS-Addin im Dashboard... 3 3. ICS einrichten... 4 4. ICS deaktivieren... 5 5. Adapter-Details am Server speichern...

Mehr

Eine der Aktien hat immer einen höheren Gewinn als die andere Aktie. Ihre Aufgabe ist es diese auszuwählen.

Eine der Aktien hat immer einen höheren Gewinn als die andere Aktie. Ihre Aufgabe ist es diese auszuwählen. Instruktionen am Anfang von Experiment 1 (auf Papier ausgeteilt: grünmarkierte Textstellen zeigen den Instruktionstext in der jeweiligen Bedingung an; Kommentare sind gelb markiert.) Stellen Sie sich vor,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

B-Bäume I. Algorithmen und Datenstrukturen 220 DATABASE SYSTEMS GROUP

B-Bäume I. Algorithmen und Datenstrukturen 220 DATABASE SYSTEMS GROUP B-Bäume I Annahme: Sei die Anzahl der Objekte und damit der Datensätze. Das Datenvolumen ist zu groß, um im Hauptspeicher gehalten zu werden, z.b. 10. Datensätze auf externen Speicher auslagern, z.b. Festplatte

Mehr

ARCO Software - Anleitung zur Umstellung der MWSt

ARCO Software - Anleitung zur Umstellung der MWSt ARCO Software - Anleitung zur Umstellung der MWSt Wieder einmal beschert uns die Bundesverwaltung auf Ende Jahr mit zusätzlicher Arbeit, statt mit den immer wieder versprochenen Erleichterungen für KMU.

Mehr

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte

Mehr

1. Software installieren 2. Software starten. Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software

1. Software installieren 2. Software starten. Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software 1. Software installieren 2. Software starten Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software 3. Auswahl 1. Neues Fotobuch erstellen oder 2. ein erstelltes, gespeichertes Fotobuch laden und bearbeiten.

Mehr

Bearbeitungshinweis zu den Profilblätter. Anlage zum Leitfaden

Bearbeitungshinweis zu den Profilblätter. Anlage zum Leitfaden Bearbeitungshinweis zu den Profilblätter Anlage zum Leitfaden Inhaltsverzeichnis Unterschiede der einzelnen Dokumenttypen... 3 Formulare mit Linien-Felder... 3 Formular mit Eingabefelder in Klammern...

Mehr

Urlaubsregel in David

Urlaubsregel in David Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5

Mehr

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung Avira Management Console 2.6.1 Optimierung für großes Netzwerk Kurzanleitung Inhaltsverzeichnis 1. Einleitung... 3 2. Aktivieren des Pull-Modus für den AMC Agent... 3 3. Ereignisse des AMC Agent festlegen...

Mehr

Internet online Update (Internet Explorer)

Internet online Update (Internet Explorer) Um Ihr Consoir Beta immer schnell und umkompliziert auf den aktuellsten Stand zu bringen, bieten wir allen Kunden ein Internet Update an. Öffnen Sie Ihren Internetexplorer und gehen auf unsere Internetseite:

Mehr

15 Optimales Kodieren

15 Optimales Kodieren 15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen

Mehr

Partitionieren in Vista und Windows 7/8

Partitionieren in Vista und Windows 7/8 Partitionieren in Vista und Windows 7/8 Windows Vista und Windows 7 können von Haus aus Festplatten partitionieren. Doch die Funktion ist etwas schwer zu entdecken, denn sie heißt "Volume verkleinern".

Mehr

STAHR Controlling. Erste Schritte in der Applikation

STAHR Controlling. Erste Schritte in der Applikation STAHR Controlling 1) Startseite Erste Schritte in der Applikation Nachdem Sie sich mit Ihren Zugangsdaten erfolgreich angemeldet haben, gelangen Sie auf die Startseite der Applikation. Hier sehen Sie die

Mehr

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware Datenübernahme von HKO 5.9 zur Advolux Kanzleisoftware Die Datenübernahme (DÜ) von HKO 5.9 zu Advolux Kanzleisoftware ist aufgrund der von Update zu Update veränderten Datenbank (DB)-Strukturen in HKO

Mehr

OSF Integrator für Btracking und Salesforce Anleitung für die Nutzer

OSF Integrator für Btracking und Salesforce Anleitung für die Nutzer OSF Integrator für Btracking und Salesforce Anleitung für die Nutzer Inhalt Beschreibung... 2 Beginn der Nutzung... 2 OSF Integrator für Btracking und Salesforce... 3 1. Fügen Sie Rechnungs- und Versandadressen

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Zahlensysteme: Oktal- und Hexadezimalsystem

Zahlensysteme: Oktal- und Hexadezimalsystem 20 Brückenkurs Die gebräuchlichste Bitfolge umfasst 8 Bits, sie deckt also 2 8 =256 Möglichkeiten ab, und wird ein Byte genannt. Zwei Bytes, also 16 Bits, bilden ein Wort, und 4 Bytes, also 32 Bits, formen

Mehr

Schritt 1 - Registrierung und Anmeldung

Schritt 1 - Registrierung und Anmeldung Schritt 1 - Registrierung und Anmeldung Anmeldung: Ihre Zugangsdaten haben Sie per EMail erhalten, bitte melden Sie sich mit diesen auf www.inthega-datenbank.de an. Bitte merken Sie sich die Zugangsdaten

Mehr

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Dateiname: ecdl_p2_02_03_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul 2 Tabellenkalkulation

Mehr

How to do? Projekte - Zeiterfassung

How to do? Projekte - Zeiterfassung How to do? Projekte - Zeiterfassung Stand: Version 4.0.1, 18.03.2009 1. EINLEITUNG...3 2. PROJEKTE UND STAMMDATEN...4 2.1 Projekte... 4 2.2 Projektmitarbeiter... 5 2.3 Tätigkeiten... 6 2.4 Unterprojekte...

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Vollständigkeit halber aufgeführt. Gehen wir einmal davon aus, dass die von uns angenommenen 70% im Beispiel exakt berechnet sind. Was würde

Mehr

Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer

Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer Zentrum für Datenverarbeitung der Universität Tübingen Inhaltsverzeichnis 1.Synchronisation...aber

Mehr

Funktionsbeschreibung. Lieferantenbewertung. von IT Consulting Kauka GmbH

Funktionsbeschreibung. Lieferantenbewertung. von IT Consulting Kauka GmbH Funktionsbeschreibung Lieferantenbewertung von IT Consulting Kauka GmbH Stand 16.02.2010 odul LBW Das Modul LBW... 3 1. Konfiguration... 4 1.1 ppm... 4 1.2 Zertifikate... 5 1.3 Reklamationsverhalten...

Mehr

Lösungshinweise zur Einsendearbeit 2 SS 2011

Lösungshinweise zur Einsendearbeit 2 SS 2011 Lösungshinweise zur Einsendearbeit 2 zum Kurs 41500, Finanzwirtschaft: Grundlagen, SS2011 1 Lösungshinweise zur Einsendearbeit 2 SS 2011 Finanzwirtschaft: Grundlagen, Kurs 41500 Aufgabe Finanzierungsbeziehungen

Mehr

EINFACHES HAUSHALT- KASSABUCH

EINFACHES HAUSHALT- KASSABUCH EINFACHES HAUSHALT- KASSABUCH Arbeiten mit Excel Wir erstellen ein einfaches Kassabuch zur Führung einer Haushalts- oder Portokasse Roland Liebing, im November 2012 Eine einfache Haushalt-Buchhaltung (Kassabuch)

Mehr