Implementierung der SQL Operatoren GROUP BY und CUBE
|
|
|
- Carsten Burgstaller
- vor 10 Jahren
- Abrufe
Transkript
1 Implementierung der SQL Operatoren GROUP BY und CUBE Seminararbeit von Christian Brandt Seminar Advanced Data Warehousing WS 2003/2004 Einführung Ein zentrales Element von OLAP - Anwendungen ist die Aggregation und insbesondere bei multidimensionaler Datenanalyse die Aggregation über viele Mengen von Attributen. Ein Einzelhandelsgeschäft könnte zum Beispiel eine Tabelle 'Verkauf' haben, in der für jedes Datum, jeden Kunden und für jedes Produkt der Umsatz gespeichert ist. Mögliche Anfragen sind dann: Gib für jedes Produkt eine Aufschlüsselung der Verkäufe pro Monat! Wieviel Umsatz brachte jedes einzelne Produkt? Wie groß ist der Gesamtumsatz? oder all diese Informationen auf einmal... Eine Möglichkeit der mehrdimensionalen Aggregation ist der CUBE - Operator, auf dessen Implementation, wie in [Agarwal96] vorgeschlagen, hier näher eingegangen wird. Außerdem werden einführend zwei Ansätze zur Berechnung einfacher Aggregate mit GROUP BY nach [Lehner03] beschrieben. Begriffe Aggregate kombinieren eine Menge von Tupeln zu einem einzigen Wert. In Standard SQL gibt es die Aggregatfunktionen COUNT(), SUM(), MIN(), MAX() und AVG(), in IBM DB2 werden zusätzlich Funktionen für Standardabweichung und Varianz zur Verfügung gestellt. Man unterscheidet folgende Klassen von Aggregatfunktionen: Die distributiven Funktionen erlauben die Zerlegung der Eingabemenge in disjunkte Teile, die einzeln aggregiert und später kombiniert werden können. Das heißt es gibt eine Funktion G, die aus den Ergebnissen der Aggregatfunktion F über den einzelnen Teilen das Gesamtresultat berechnet. Beispiele sind MIN(), MAX(), COUNT() und SUM(). 1
2 Algebraische Aggregatfunktionen können mit Hilfe von einer festen Menge distributiver Funktionen ausgedrückt werden. Der Durchschnitt AVG() kann zum Beispiel mit Hilfe der zwei Funktionen COUNT() und SUM() berechnet werden. Bei holistischen Funktionen kann die Eingabemenge nicht zerlegt werden. Die Berechnung des MEDIAN() aus einer Menge distributiver Funktionen ist nicht möglich. Es werden hier lediglich distributive und algebraische Aggregatfunktionen betrachtet. In SQL dient der GROUP BY - Operator zur Aggregation. Die Tupel werden nach den Attributen in der GROUP BY - Klausel partitioniert und für jede Partition die Aggregatfunktion berechnet. Die Ergebnisrelation enthält für jede Gruppe genau eine Zeile. Dabei dürfen im SELECT - Statement nur Aggregatfunktionen, Konstanten und die in der GROUP BY - Klausel auftretenden Ausdrücke und Attribute vorkommen. Der CUBE - Operator ist "die n-dimensionale Verallgemeinerung des GROUP BY - Operators". Er berechnet die Gruppierung für jede mögliche Teilmenge der Attributliste. Das sind bei n Attributen 2 n Kombinationen. In SQL könnte eine CUBE - Anfrage so aussehen: select K, P, sum(umsatz) as Summe from Verkauf group by cube (K, P) Diese Anfrage ist semantisch äquivalent zu einer Vereinigung aus den GROUP BYs über den Attributmengen: KP, K, P und einer Aggregation über alle Tupel der Relation. Eine Partition nach einer Attributmenge ist die Aufteilung der Relation in Teilmengen, deren Tupel in diesen Attributen identische Werte haben. Realisierung des GROUP BY - Operators In einem naiven Ansatz zur Berechnung von Gruppierungen wird der Tupelstrom der inneren Query nach den Gruppierungsattributen partitioniert. Anschließend wird für jede Partition das Aggregat berechnet, das Ergebnis nach den Bedingungen der HAVING - Klausel selektiert und zuletzt nach der durch ORDER BY gegebenen Reihenfolge sortiert. Die offensichtlichen Speicher- und Laufzeitprobleme dieses Vorgehens werden von den zwei folgenden Implementierungsvarianten teilweise gelöst. Unter der Voraussetzung, daß genügend Hauptspeicher vorhanden ist, wird bei der hashbasierten Variante anfangs auf jede Zeile des Tupelstroms eine über den Gruppierungsattributen definierte Hashfunktion angewendet, sodaß Tupel mit gleichen Werten in den Gruppierungsattributen auch im gleichen Bereich der Hashtabelle liegen. Danach werden alle Einträge der Tabelle durchlaufen und die Werte aggregiert, wobei die Ergebnistupel direkt an den nächsten Operator weitergereicht werden können (Pipelining). Bei der sortierungsbasierten Variante wird in der ersten Phase der Datenstrom nach den Gruppierungsattributen (evtl. auf dem Sekundärspeicher) sortiert, das heißt Tupel der gleichen Gruppe folgen direkt aufeinander. In der zweiten Phase werden die sortierten Datensätze sequentiell gelesen und 2
3 aggregiert. Bei jedem Wechsel der Gruppe wird ein Ergebnistupel ausgegeben Im Normalfall läuft diese Variante nicht in zwei getrennten Phasen ab, sondern die Ergebnistupel der Sortierung werden direkt an die Gruppierung übergeben. Die sortierungsbasierte Variante ist, wahrscheinlich wegen des geringen Hauptspeicherbedarfs, die bevorzugte. Realisierung des CUBE - Operators Die naive Realisierung des CUBE - Operators berechnet alle durch die Definition gegebenen Gruppierungskombinationen isoliert auf dem eingehenden Datenstrom. Die 2 n Gruppierungen werden durch Vereinigung am Ende zu einem Ergebnis zusammengefasst. Auf diese Art wird der möglicherweise große Datenstrom sehr häufig gelesen und das kostet Zeit. Bei der Auswertung des CUBE kann die direkte Ableitbarkeit höherwertiger Aggregate aus niederwertigen ausgenutzt werden, sodaß nicht stets die Basisdaten beansprucht werden müssen, sondern bereits berechnete Gruppierungen verwendet werden. CUBE(A,B,C) CUBE(A,B,C) (A,B,C) (A,B) (A,C) (B,C) (A) (B) (C) () naiver Ansatz Mögliche Optimierungen UNION (A,B,C) (B,C) (A,C) (A,B) (B) (C) () (A) UNION Ausnutzen der direkten Ableitbarkeit Im Folgenden geht es um einige Heuristiken, die Optimierungen bei der Auswertung von mehreren ableitbaren GROUP BYs vornehmen. Smallest parent ist eine Optimierung deren Ziel es ist, ein GROUP BY aus dem vorhergehenden (niederwertigen) zu berechnen, welches die kleinste Kardinalität hat. Man spart dadurch Aggregierungskosten. Um die Kardinalität eines GROUP BY zu kalkulieren ist es notwendig, gute Abschätzungen über die Anzahl verschiedener Werte einer Spalte zu haben. Zum Beispiel kann AB aus ABC, ABD und ABCD berechnet werden. Natürlich wählt man hier nicht ABCD, aber auch zwischen ABC und ABD kann es deutliche Größenunterschiede geben. Cache results ist eine Optimierung, mit deren Hilfe Plattenzugriffe gespart werden sollen. Zu diesem Zweck wird das Ergebnis einer GROUP BY - Berechnung im Hauptspeicher gehalten, um daraus die höherwertigen Aggregate zu errechnen. Wurde ABC gerade berechnet, so kann AB daraus ermittelt werden, während ABC noch im Hauptspeicher ist, ohne zusätzliches Lesen vom Sekundärspeicher. 3
4 Amortize scans ist eine Optimierung, bei der ebenfalls versucht wird Plattenzugriffe zu sparen, indem während eines sequentiellen Scans so viele GROUP BYs wie möglich im Hauptspeicher berechnet werden. Befindet sich etwa des Ergebnis der Gruppierung ABCD auf Platte, so könnten ABC, ABD, ACD und BCD in einem Durchlauf daraus berechnet werden. Share sorts ist eine Optimierung speziell für sortierungsbasierte Methoden. Sie zielt darauf ab, eine vorhandene Sortierung auf den Attributen einer Relation oder einer vorhergehenden Gruppierung für die Berechnung mehrerer GROUP BYs zu verwenden, um Sortierungskosten zu sparen. Share partitions ist eine Optimierung speziell für hashbasierte Methoden. Reicht der Hauptspeicher für die Hashtabelle nicht aus, so werden die Daten partitioniert. Die Aggregation wird auf den Partitionen durchgeführt, die in den Speicher passen. Es werden hier mehrere Gruppierungen auf den vorhandenen Partitionen berechnet, um Partitionierungskosten zu sparen. Die angesprochenen Verfahren sind in der Praxis oft widersprüchlich. Normalerweise ist der Hauptspeicher wesentlich kleiner als die zu aggregierenden Daten. In diesem Fall können sich smallest parent und cache results widersprechen. Wählt man zum Errechnen den kleinsten Vorgänger, so muß dieser evtl. von Platte gelesen werden. Wählt man einen Vorgänger aus dem Cache, so ist der evtl. groß und die Aggregation aufwendig. Analog dazu verhalten sich smallest parent und share sorts, zwischen denen im folgenden Algorithmus ein Kompromiß gesucht wird. Algorithmus PipeSort Der Algorithmus erzeugt mit Hilfe vieler Abschätzungen einen Berechnungsplan für die Auswertung einer CUBE - Anfrage, bei dem es eine festgelegte Reihenfolge der Attribute gibt, nach der die Tupel sortiert sind. Die Sortierung wird dann zur Berechnung mehrerer GROUP BYs im Pipeline - Verfahren genutzt. Während der Berechnung einer Pipeline muß für jedes GROUP BY nur ein Tupel im Speicher gehalten werden. Als Eingabe erhält der Algorithmus einen gerichteten azyklischen Graphen. Eingabe: Aggregationsgitter Angenommen man hat für jedes GROUP BY die geschätzte Anzahl Ergebnistupel. Dann wird der Eingabegraph (Aggregationsgitter) wie folgt konstruiert. Ein Knoten entspricht einer durch den CUBE definierten Gruppierung (Attributmenge). Es gibt eine gerichtete Kante zwischen Knoten i und j, wenn j aus i ableitbar ist, das heißt wenn j genau ein Attribut weniger hat als i und sonst identisch ist. Der Knoten i heißt dann parent von j. Jede Kante ist mit A- und S- Kantengewichten versehen: S ij geschätzte Kosten um i zu sortieren, wenn es unsortiert in den Attributen von j vorliegt, wenn also Tupel einer Gruppe nicht direkt aufeinander folgen. S ij enthält auch die geschätzten Aggregationskosten. A ij geschätzte Kosten, wenn i sortiert in den Attributen von j vorliegt. Das sind nur die Kosten der Aggregation. 4
5 all A B C D AB AC AD BC BD CD ABC ABD ACD BCD Beispiel für ein Aggregationsgitter, all bezeichnet das leere GROUP BY Ausgabe: Berechnungsplan Die Ausgabe ist ein Subgraph des Aggregationsgitters, der den Berechnungsplan repräsentiert. Dieser hat folgende Eigenschaften: Jeder GROUP BY - Knoten ist mit einem einzelnen parent, aus dem er später berechnet wird, verbunden und hat eine festgelegte Sortierreihenfolge seiner Attribute. Eine Kante e ij hat nur noch ein Gewicht: A ij - Knoten j bestimmt die Reihenfolge der Attribute von i während der Berechnung. Die Sortierung wird bei der Aggregation genutzt. S ij - i muß erst sortiert werden, damit j daraus berechnet werden kann. Von einem Knoten i kann nur eine A - Kante ausgehen, denn es gibt ja nur ein Präfix, das genau ein Zeichen weniger hat. Ziel des Algorithmus ist es einen Subgraphen zu finden, dessen Kantensumme minimal ist. Einen solchen Subgraphen wird PipeSort nicht suchen, stattdessen wird eine Methode verwendet, die Ebene für Ebene vorgeht und lokal die Kantensumme minimiert. PipeSort ABCD PipeSort betrachtet das Aggregationsgitter Ebene für Ebene. Für jede Ebene k, wobei k die Anzahl Attribute in den Gruppierungen ist, sucht es den günstigsten Weg um alle Knoten darin aus k +1 zu berechnen. Das Problem wird auf das gewichtete Matching in bipartiten Graphen reduziert. Einschub: Was ist ein bipartites Matching minimalen Gewichtes? In einem bipartiten Graphen gibt es zwei disjunkte Knotenmengen, innerhalb derer keine Kanten verlaufen. Die Endknoten aller Kanten liegen in verschiedenen Partitionen. Ein Matching eines Graphen ist eine Teilmenge M der Kanten, sodaß keine zwei Kanten aus M einen gemeinsamen Knoten haben. Ein Matching maximalen Gewichtes ist ein Matching, sodaß die Summe der Gewichte aller Kanten aus M maximal wird. 5
6 Das Problem eines Matching minimalen Gewichtes läßt sich leicht darauf abbilden. Man ersetzt die Kantengewichte w(e) aller Kanten e durch max - w(e), wobei max das Gewicht der schwersten Kante ist. Für die Reduktion wird jeder Knoten der Ebene k+1 (parent Ebene) mit seinen Kanten zu Ebene k kopiert. Die Kanten der Originalknoten werden mit A - Kosten markiert, die Kanten der Kopien mit S - Kosten. Nach der Berechnung des Matchings sind alle Knoten j aus k mit genau einem Knoten i aus k+1 verbunden. Die Komplexität des verwendeten Matching Algorithmus ist O(n 3 ), wobei n die Knotenzahl ist. A B C A B C A B C AB AC BC Ebenen k und k+1 AB 2 AB AC AC BC BC Kopie der Elternknoten bezeichnet A - Kante bezeichnet S - Kante AB 2 AB AC AC BC nach dem Matching BC 20 Ergebnis Das Ergebnis des Algorithmus ist ein Spannbaum des Aggregationsgitters, aus dem sich mögliche Pipelines und notwendige Sortierungen direkt ablesen lassen. all A B C D BA AC AD CB DB CD CBA BAD ACD DBC CBAD Basisdaten Ein fertiger Berechnungsplan 6
7 all C B A D CB BA AC DB AD CD CBA BAD ACD DBC BAD ACD ACD CBAD CBAD CBAD CBAD Basisdaten Es werden also die Rohdaten nach den Attributen ABCD sortiert und aggregiert. Jedes Ergebnistupel der Aggregation wird für die Berechnung von CBA hochpropagiert, deren Ergebnisse an CB und so weiter. Für die weiteren Pipelines müssen bereits vorliegende GROUP BYs neu sortiert werden. Pseudocode Eingabe: Aggregationsgitter mit A- und S-Kantengewichten für Ebene k = 0 bis N-1 erzeuge Kopien jedes k+1 - Knotens markiere die Kanten der Originale mit den A- Kosten markiere die Kanten der Kopien mit den S- Kosten finde minimal gewichtetes Matching auf den modifizierten Ebenen für jedes GROUP BY in Ebene k+1 lege Attribut-Reihenfolge der Knoten fest, die mit A-Kanten verbunden sind Ausgabe: Graph mit verbliebenen A- und S- Kanten und festgelegter Reihenfolge der Attribute in den Elternknoten. Zusammenfassung Die hier gezeigte Methode PipeSort ist nur bedingt einsetzbar. Das Ziel einer guten Balance zwischen Sortier- und Aggregieraufwand ist gelungen, dabei wurden aber Betrachtungen zum Speicherbedarf und daraus resultierender Partitionierung der Daten völlig außer Acht gelassen. Die mittels Matching für jede Ebene gefundene Lösung ist nicht beweisbar optimal in Bezug auf die Gesamtkantensumme. Aber selbst wenn sie es wäre, ließe sich der fertige Berechnungsplan mit Blick auf den Speicherbedarf gewiß noch verbessern. Abgesehen davon sind die Gewichte natürlich nur Schätzungen. Algorithmus PipeHash Die auszuwertenden Pipelines Pipelinekante Sortierkante Der Algorithmus führt die Berechnung des CUBE in ausgewählten Teilbäumen des Aggregationsgitters durch, dabei werden vor allem die Optimierungen cache results und amortize scans betrachtet. Das heißt das Hauptaugenmerk liegt auf vorsichtiger Speicherallokation für mehrere Hashtabellen. Es werden für die Eingabe nur 7
8 Größenabschätzungen der Gruppierungen benötigt. Wenn der Hauptspeicher nicht beschränkt wäre, könnte man mit folgender Methode fast alle genannten Optimierungen nutzen: für Ebene k = N-1 bis 0 für jedes GROUP BY g in Ebene k+1 Berechne in einem Durchlauf alle GROUP BYs der Ebene k, für die g smallest parent ist speichere g auf Platte und gib Hauptspeicher frei Normalerweise sind die Datenmengen allerdings zu groß für den Hauptspeicher. Die Daten werden dann auf einem oder mehreren Attributen partitioniert, sodaß die Hashtabellen dafür in den Speicher passen. Die Entscheidung, welche GROUP BYs zusammen zu berechnen sind, wann Speicher zu allozieren und zu deallozieren ist und nach welchen Attributen zu große Relationen partitioniert werden sollen, um insgesamt eine minimale Laufzeit bzw. minimale Anzahl Lesevorgänge unter den gegebenen Speicherbeschränkungen zu erhalten, ist offensichtlich ein schwieriges, vermutlich NPvollständiges Problem. Die angegebene Methode nutzt Heuristiken, um sich der Lösung zu nähern. Ein- und Ausgabe Die Eingabe dieses Algorithmus ist das oben bereits erwähnte Aggregationsgitter, mit dem Unterschied, daß die Kanten jetzt mit der Kardinalität des GROUP BY, von dem sie ausgehen, als einzigem Gewicht markiert sind. Die Ausgabe ist die fertige Berechnung des CUBE. Dabei werden ausgehend von einem minimal spannenden Baum des Aggregationsgitters Teilbäume ausgewählt und einzeln ausgewertet. PipeHash PipeHash findet zuerst einen minimal spannenden Baum auf dem Aggregationsgitter. Um die Optimierung amortize scans zu nutzen wird ein großer Teilbaum ausgewählt, um anschließend die Aggregate vieler Kinderknoten zu berechnen. Die Daten müssen wahrscheinlich partitioniert werden. Die Attribute, nach denen partitioniert wird, beschränken den Teilbaum auf die Gruppierungen, in denen sie vorkommen. Daher werden die partitionierenden Attribute so gewählt, daß unter Beachtung des Speicherbedarfs, ein möglichst großer Teilbaum ausgewählt werden kann. Die Heuristik Select-subtree befasst sich mit dieser Aufgabe. Compute-subtree berechnet dann für die Partitionen alle Aggregate des Teilbaums. Pseudocode Eingabe: Aggregationsgitter mit Kardinalitäts-Kantengewichten Berechne minimal spannenden Baum des Gitters und trage ihn in eine Liste ein Solange die Liste nicht leer ist entnimm irgendeinen Baum T U = Select-subtree(T) Compute-subtree(U) 8
9 Select-subtree Der übergebene Baum sei T, die Attributmenge seiner Wurzel sei S und s S. T s bezeichne den Teilbaum von T, der alle GROUP BYs enthält in denen s vorkommt und P s die Anzahl Partitionen des Wurzelknotens nach s. Select-subtree wählt unter allen s S den größten Teilbaum T s, dessen benötigter Speicher geteilt durch P s den verfügbaren Speicher nicht überschreitet. Der Teilbaum wird entfernt. Es bleibt ein Wald kleinerer Bäume, sie werden zur Liste hinzugefügt. Wenn von T benötigter Speicher < verfügbarer Speicher gib T zurück S = Menge der Attribute in root(t), der Wurzel von T für alle s S schätze Ps = # Partitionen von root(t) wenn auf s partitioniert Wähle s S sodaß Speicherbedarf(Ts)/Ps < verfügbarer Speicher und Ts größtmöglich Entferne Ts aus T. Füge verbleibenden Wald zur Liste hinzu gib Ts zurück Compute-subtree Compute-subtree führt die oben erwähnte Methode auf dem gewählten Teilbaum für jede Partition des Wurzelknotens durch, dabei wird share partitions ausgenutzt. Partitioniere root(u) nach s für jede Partition von root(u) für jeden Knoten i aus U in Breitensuche - Reihenfolge berechne alle Kinderknoten von i in einem Durchlauf gib Speicher für die Hashtabelle von i frei all all A B C D A A B C D AB AC AD BC BD CD AB AC AD AB BC BD CD ABC ABD ACD BCD ABC ABD ACD ABC BCD ABCD ABCD ABCD Basisdaten Basisdaten ein minimal spannender Baum T{A} verbleibender Wald 9
10 Beispiel Angenommen der Baum passt nicht vollständig in den Hauptspeicher, dann müssen die Daten zum Beispiel auf A partitioniert werden (siehe Abbildung) Für jede Partition wird am Anfang die Gruppierung ABCD berechnet. Der dargestellte Teilbaum wird wie folgt abgearbeitet. Durchlaufe ABCD im Speicher, um ABC, ABD und ACD daraus zu berechnen. ABCD und ABD werden nicht weiter benötigt und können rausgeschrieben werden. Durchlaufe ACD, um AD zu erhalten, schreibe ACD und AD. Durchlaufe ABC, um AB und AC zu berechnen, schreibe ABC und AC. Durchlaufe AB, um A zu berechnen und schreibe endlich AB und A. Das wiederholt sich für jede Partition. Nachdem T {A} fertig berechnet ist, wird der nächste Baum aus der Liste entnommen. Zusammenfassung Die PipeHash Methode ist für Speicherbeschränkungen optimiert. Sie leidet ebenso wie PipeSort unter vielen Abschätzungen, zum Beispiel bei der Kardinalität der Gruppierungen, den Partitionsgrößen und der Anzahl der Partitionen. Es kann deshalb nicht garantiert werden, daß jede Partition bzw. jeder Teilbaum in den Speicher paßt. Die angestrebten Optimierungen cache results, amortize scans und share partitions sind, vorausgesetzt die Schätzungen stimmen, gut umgesetzt. Allerdings wurde hier nicht auf Sortierungen und Größe der Elternknoten eingegangen. Da die Partitionen, über denen aggregiert wird, im Hauptspeicher vorliegen, sind die Sortierungs- und Aggregationskosten gering im Vergleich mit den entsprechenden Sekundärspeicheroperationen. Schluß Ein Vergleich der Methoden auf synthetischen Datenmengen zeigte, daß die PipeHash Methode auf dichten Werteverteilungen und PipeSort auf dünn besetzten Werteverteilungen im Vorteil ist. Beide Algorithmen sind schneller als entsprechende naive sortierungs- und hashbasierte Methoden. Nachträglich ist noch zu erwähnen, daß mir die Darstellung des PipeHash Algorithmus in [Agarwal96] unverständlich war und hier eine vereinfachte Variante beschrieben wird. Als Alternative zu den genannten Verfahren gibt es noch die Overlap - Methode aus dem selben Papier, die auch partielle Sortierreihenfolgen ausnutzt. Sie wurde aus Zeitgründen im Referat nicht behandelt. 10
11 Quellen [Agarwal96] [Lehner03] Agarwal, S., Agrawal, R., Deshpande, P., Gupta, A., Naughton, J. F., Ramakrishnan, R. and Sarawagi, S. (1996). "On the Computation of Multidimensional Aggregates". 22nd Conference on Very Large Data Bases, Bombay, India. Lehner, W. (2003). "Datenbanktechnologie für Data-Warehouse- Systeme", dpunkt.verlag. (Kap. 8.3) 11
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
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
Anmerkungen zur Übergangsprüfung
DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung
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
Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen
Abfragen lassen sich längst nicht nur dazu benutzen, die gewünschten Felder oder Datensätze einer oder mehrerer Tabellen darzustellen. Sie können Daten auch nach bestimmten Kriterien zu Gruppen zusammenfassen
Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.
Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten
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
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
Das Briefträgerproblem
Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................
Excel Pivot-Tabellen 2010 effektiv
7.2 Berechnete Felder Falls in der Datenquelle die Zahlen nicht in der Form vorliegen wie Sie diese benötigen, können Sie die gewünschten Ergebnisse mit Formeln berechnen. Dazu erzeugen Sie ein berechnetes
Berechnungen in Access Teil I
in Access Teil I Viele Daten müssen in eine Datenbank nicht eingetragen werden, weil sie sich aus anderen Daten berechnen lassen. Zum Beispiel lässt sich die Mehrwertsteuer oder der Bruttopreis in einer
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
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
Informationsblatt Induktionsbeweis
Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
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,
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
WS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
Unterscheidung: Workflowsystem vs. Informationssystem
1. Vorwort 1.1. Gemeinsamkeiten Unterscheidung: Workflowsystem vs. Die Überschneidungsfläche zwischen Workflowsystem und ist die Domäne, also dass es darum geht, Varianten eines Dokuments schrittweise
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
WS 2013/14. Diskrete Strukturen
WS 2013/14 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws1314
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
Grundlagen der Theoretischen Informatik, SoSe 2008
1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)
Handbuch Fischertechnik-Einzelteiltabelle V3.7.3
Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36
Suche schlecht beschriftete Bilder mit Eigenen Abfragen
Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere
Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
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
Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER
Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit
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
Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten
Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während
Informatik 12 Datenbanken SQL-Einführung
Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung
4 Aufzählungen und Listen erstellen
4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer
Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.
Betrifft Autor FIRST, LAST Markus Jägle ([email protected]) Art der Info Technische Background Info (April 2002) Quelle Aus dem NF9i-Kurs, NF9i-Techno-Circle der Trivadis und Oracle9i Data Warehousing
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
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
Theoretische Informatik SS 04 Übung 1
Theoretische Informatik SS 04 Übung 1 Aufgabe 1 Es gibt verschiedene Möglichkeiten, eine natürliche Zahl n zu codieren. In der unären Codierung hat man nur ein Alphabet mit einem Zeichen - sagen wir die
Erstellen von x-y-diagrammen in OpenOffice.calc
Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei
Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?
Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden [email protected] WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V
Grundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
Musterlösungen zur Linearen Algebra II Blatt 5
Musterlösungen zur Linearen Algebra II Blatt 5 Aufgabe. Man betrachte die Matrix A := über dem Körper R und über dem Körper F und bestimme jeweils die Jordan- Normalform. Beweis. Das charakteristische
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)
WS 2008/09. Diskrete Strukturen
WS 2008/09 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0809
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
1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. äume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/5, olie 1 2014 Prof. Steffen Lange - HDa/bI
Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze
Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit
Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung
Anleitung zur Daten zur Datensicherung und Datenrücksicherung Datensicherung Es gibt drei Möglichkeiten der Datensicherung. Zwei davon sind in Ges eingebaut, die dritte ist eine manuelle Möglichkeit. In
Berechnung der Erhöhung der Durchschnittsprämien
Wolfram Fischer Berechnung der Erhöhung der Durchschnittsprämien Oktober 2004 1 Zusammenfassung Zur Berechnung der Durchschnittsprämien wird das gesamte gemeldete Prämienvolumen Zusammenfassung durch die
4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:
4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie
Datenbanksysteme 2 Frühjahr-/Sommersemester 2014 28. Mai 2014
Lehrstuhl für Praktische Informatik III Prof. Dr. Guido Moerkotte Email: [email protected] Marius Eich Email: [email protected] Datenbanksysteme 2 8. Übungsblatt Frühjahr-/Sommersemester
Kapitel 6: Graphalgorithmen Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte
50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien
3. Verpackungskünstler. Berechnungen am Quader, Umgang mit Termen, räumliche Vorstellung
Berechnungen am Quader, Umgang mit Termen, räumliche Vorstellung Päckchen, die man verschenken möchte, werden gerne mit Geschenkband verschnürt. Dazu wird das Päckchen auf seine größte Seite gelegt, wie
Auswertung erstellen: Liste mit E-Mail-
Anleitung Auswertung erstellen: Liste mit E-Mail-Adressen Auswertung erstellen: Liste mit E-Mail- Adressen Das Beispiel Sie möchten für den Versand eines Newletters per E-Mail eine Liste der in mention
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:
Grundfunktionen und Bedienung
Kapitel 13 Mit der App Health ist eine neue Anwendung in ios 8 enthalten, die von vorangegangenen Betriebssystemen bislang nicht geboten wurde. Health fungiert dabei als Aggregator für die Daten von Fitness-
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
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
Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:
Tangentengleichung Wie Sie wissen, gibt die erste Ableitung einer Funktion deren Steigung an. Betrachtet man eine fest vorgegebene Stelle, gibt f ( ) also die Steigung der Kurve und somit auch die Steigung
ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN
ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN CHRISTIAN HARTFELDT. Zweiter Mittelwertsatz Der Mittelwertsatz Satz VI.3.4) lässt sich verallgemeinern zu Satz.. Seien f, g : [a, b] R auf [a,
3. GLIEDERUNG. Aufgabe:
3. GLIEDERUNG Aufgabe: In der Praxis ist es für einen Ausdruck, der nicht alle Detaildaten enthält, häufig notwendig, Zeilen oder Spalten einer Tabelle auszublenden. Auch eine übersichtlichere Darstellung
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
Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.
Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:
Eine Logikschaltung zur Addition zweier Zahlen
Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung
OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland
OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben
Leitfaden #1a. "zanox Publisher-Statistik" (next generation)
Leitfaden #1a "zanox Publisher-Statistik" (next generation) Thema: Sortieren von Leads und Sales nach dem Bearbeitungsdatum (inklusive Abschnitt "Filterung nach Transaktionsstatus") 1/8 Leitfaden "Sortieren
In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.
Tutorial: Wie erfasse ich einen Termin? In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Neben den allgemeinen Angaben zu einem
2.11 Kontextfreie Grammatiken und Parsebäume
2.11 Kontextfreie Grammatiken und Parsebäume Beispiel: Beispiel (Teil 3): Beweis für L(G) L: Alle Strings aus L der Länge 0 und 2 sind auch in L(G). Als Induktionsannahme gehen wir davon aus, dass alle
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
Eigene Dokumente, Fotos, Bilder etc. sichern
Eigene Dokumente, Fotos, Bilder etc. sichern Solange alles am PC rund läuft, macht man sich keine Gedanken darüber, dass bei einem Computer auch mal ein technischer Defekt auftreten könnte. Aber Grundsätzliches
Algorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik [email protected] Algorithmen für Graphen Fragestellungen: Suche
SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:
SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In
2.1 Erstellung einer Gutschrift über den vollen Rechnungsbetrag
1. Einführung Manchmal ist es notwendig, dem Kunden eine Gutschrift zu einer bestimmten Rechnung, über einzelne Positionen oder auch völlig frei von einer Basis-Rechnung zu erstellen. Die verschiedenen
Herzlich Willkommen bei der BITel!
Herzlich Willkommen bei der BITel! Damit Sie auch unterwegs mit dem iphone Ihre E-Mails abrufen können, zeigen wir Ihnen Schritt für Schritt wie Sie Ihr BITel-Postfach im iphone einrichten. Los geht's:
Bauteilattribute als Sachdaten anzeigen
Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...
6.2 Scan-Konvertierung (Scan Conversion)
6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster
Dokumentation. estat Version 2.0
Dokumentation estat Version 2.0 Installation Die Datei estat.xla in beliebiges Verzeichnis speichern. Im Menü Extras AddIns... Durchsuchen die Datei estat.xla auswählen. Danach das Auswahlhäkchen beim
8. Berechnung der kalkulatorischen Zinsen
8. Berechnung der kalkulatorischen Zinsen 8.1. Allgemeines In der laufenden Rechnung werden im Konto 322.00 Zinsen nur die ermittelten Fremdkapitalzinsen erfasst. Sobald aber eine Betriebsabrechnung erstellt
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
Kapitel 3 Frames Seite 1
Kapitel 3 Frames Seite 1 3 Frames 3.1 Allgemeines Mit Frames teilt man eine HTML-Seite in mehrere Bereiche ein. Eine Seite, die mit Frames aufgeteilt ist, besteht aus mehreren Einzelseiten, die sich den
Tevalo Handbuch v 1.1 vom 10.11.2011
Tevalo Handbuch v 1.1 vom 10.11.2011 Inhalt Registrierung... 3 Kennwort vergessen... 3 Startseite nach dem Login... 4 Umfrage erstellen... 4 Fragebogen Vorschau... 7 Umfrage fertigstellen... 7 Öffentliche
Idee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10
Binäre Bäume Bäume gehören zu den wichtigsten Datenstrukturen in der Informatik. Sie repräsentieren z.b. die Struktur eines arithmetischen Terms oder die Struktur eines Buchs. Bäume beschreiben Organisationshierarchien
Übungsaufgaben. - Vorgehensweise entsprechend dem Algorithmus der schriftlichen Multiplikation
Übungsaufgaben Anmerkung Allen Beispielen soll noch hinzugefügt sein, dass wertvolle Hinweise, also die Tipps und Tricks die der schnellen maschinellen Multiplikation zu Grunde liegen, neben dem toff zur
Datenaufbereitung in SPSS. Daten zusammenfügen
Daten zusammenfügen I. Fälle hinzufügen Diese Schritte müssen Sie unternehmen, wenn die Daten in unterschiedlichen Dateien sind; wenn also die Daten von unterschiedlichen Personen in unterschiedlichen
Zimmertypen. Zimmertypen anlegen
Zimmertypen anlegen Hier legen Sie Ihre Zimmer an, damit sie auf der Homepage dargestellt werden und online buchbar gemacht werden können. Wobei wir ausdrücklich darauf hinweisen möchten, dass es ganz
Zwischenablage (Bilder, Texte,...)
Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen
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...
LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.
Zusätze zum Gelben Rechenbuch LU-Zerlegung Peter Furlan Verlag Martina Furlan Inhaltsverzeichnis Definitionen 2 (Allgemeine) LU-Zerlegung 2 3 Vereinfachte LU-Zerlegung 3 4 Lösung eines linearen Gleichungssystems
Gleichungen Lösen. Ein graphischer Blick auf Gleichungen
Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term
Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! (bei z.b. Google Microsoft Powertoys suchen, oder diesen Link verwenden )
Wie erstelle ich Fotogalerien? Wie kann ich die auf meiner Homepage präsentieren? Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! Die ist eine Lösung für Windows XP Diese Lösung
Bedingungen. Bedingungen. Bedingungen
Oftmals ist das Arbeiten mit notwendig. Dabei können sich die auf Formatierungen beziehen, aber auch auf Transformationen. Bedingte Formatierung Datentransformation 24.04.2006 Einführung in Excel 91 24.04.2006
Alle Schlüssel-Karten (blaue Rückseite) werden den Schlüssel-Farben nach sortiert und in vier getrennte Stapel mit der Bildseite nach oben gelegt.
Gentlemen", bitte zur Kasse! Ravensburger Spiele Nr. 01 264 0 Autoren: Wolfgang Kramer und Jürgen P. K. Grunau Grafik: Erhard Dietl Ein Gaunerspiel für 3-6 Gentlemen" ab 10 Jahren Inhalt: 35 Tresor-Karten
Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten
Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,
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
infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock
infach Ihr Weg zum finanzellen Erfolg Geld Florian Mock FBV Die Grundlagen für finanziellen Erfolg Denn Sie müssten anschließend wieder vom Gehaltskonto Rückzahlungen in Höhe der Entnahmen vornehmen, um
Falten regelmäßiger Vielecke
Blatt 1 Gleichseitige Dreiecke Ausgehend von einem quadratischen Stück Papier kann man ohne weiteres Werkzeug viele interessante geometrische Figuren nur mit den Mitteln des Papierfaltens (Origami) erzeugen.
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,
Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt
Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen
Dokumentation IBIS Monitor
Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt
