Datenbanken II. Optimierung von Datenbanken. von Bettina Keil MIM 07

Größe: px
Ab Seite anzeigen:

Download "Datenbanken II. Optimierung von Datenbanken. von Bettina Keil 45748 MIM 07"

Transkript

1 Datenbanken II Optimierung von Datenbanken von Bettina Keil MIM 07

2 Inhaltsverzeichnis 1 Motivation 1 2 Phase 1.1: Optimierung des Datenbankschemas Ziel Konzeptuelles Schema Internes Schema Externes Schema Phase 1.2: Anwendungsoptimierung Ziel Optimierung der Anwendung Optimierung im Mehrbenutzerbetrieb Formulierung von SQL-Anweisungen Phase 2: Hauptspeicheroptimierung Ziel Optimierung des Datenbankpuffers Optimierer Phase 3: Eingabe-/Ausgabeoptimierung Ziel Betriebssystemfunktionen Lastverteilung Optimierung der physischen Speicherstrukturen Zusammenfassung 15 7 Quellenverzeichnis 16 i

3 1 Motivation Bei der Verwaltung großer Datenmengen mittels Datenbanken nimmt mit wachsender Zahl der Datensätze die Wichtigkeit der Performance der Datenbank zu. Diese kann auf vielfältige Weise gesteigert werden: Die Erstellung eines optimalen Datenbankschemas bildet den Grundstein einer effizient nutzbaren Datenbank. Weiterhin können Bereiche wie Anfragen oder Hardware in Bezug auf die Performance analysiert und umstrukturiert werden. Ein einfacher aber kostenintensiver Weg zur Performancesteigerung ist die Aufrüstung der Rechnersysteme durch Hinzufügen zusätzlicher Hardware. Durch eine geschickte Optimierung der bestehenden Datenbank können diese finanziellen Mehrbelastungen umgangen werden. Hauptmotivation ist die Verkürzung der Antwortzeiten in Verbindung mit einem erhöhten Datendurchsatz. Die Optimierung von Datenbanken umfasst 4 Phasen: In Phase 1 wird eine Optimierung des Datenbankschemas sowie eine Anwendungsoptimierung vorgenommen. Dabei liegt der Fokus auf der Schaffung eines effizient nutzbaren Datenbankschemas in Bezug auf die Anwendung, für welche die Datenbank konstruiert wurde. Ziel ist es, den Großteil der meistgenutzten Daten im Datenbankpuffer halten zu können. Die Anwendungsoptimierung zielt darauf ab, ineffiziente Datenbankanfragen zu vermeiden und Anfragen allgemein zu otpimieren. In Phase 2, der Hauptspeicheroptimierung, wird durch Anpassung des Datenbankpuffers und des Optimierers eine Minimierung der Anzahl physischer Speicherzugriffe angestrebt. In Phase 3, der Eingabe-/Ausgabeoptimierung bzw. Optimierung der Sekundärspeicherzugriffe, werden die in Phase 2 in der Anzahl minimierten physischen Zugriffe auf den Sekundärspeicher in ihrer Ausführung optimiert. Phase 4, die Konfliktoptimierung, dient dem Lösen verbleibender Zugriffskonflikte innerhalb der logischen Strukturen der Datenbank. In den folgenden Kapiteln werden die Phasen 1-3 näher beschrieben sowie detaillierte Optimierungsansätze dargestellt. Auf Phase 4, die Konfliktoptimierung, wird nicht näher eingegangen, da es sich um fallspezifisch vorzunehmende Konfliktlösungen handelt. 1

4 2 Phase 1.1: Optimierung des Datenbankschemas 2.1 Ziel Durch die Optimierung des Datenbankschemas soll die Anzahl der für die Anwendung der Datenbank benötigten Zugriffe auf die Datenbank minimiert werden sowie die verbleibenden Zugriffe in der Formulierung ihrer Anfragen optimiert werden. Die Erstellung des Datenbankschemas erfolgt nach dem relationalen Datenmodell, welches die in Tabellen gespeicherten Daten durch entsprechende Operationen mengenorientiert verknüpft und verarbeitet. Daraufhin folgt eine weitere Verfeinerung des Datenbankschemas durch Normalisierung, wobei das Schema in eine bestimmte Normalform gebracht wird. Diese sind die Erste Normalform, die Zweite Normalform, die Dritte Normalform, die Boyce-Codd Normalform und die Vierte Normalform. Das Datenbankschema besteht nach ANSI-SPARC aus einem internen Schema (Datenverwaltung auf Platte, Indexstrukturen,...), einem konzeptuellen Schema (Beschreibung der Gesamtstruktur, Integritätsbedingungen,...) und i.a. mehreren externen Schemata (Sichten für verschiedene Anwendungen, Benutzergruppen,...). Innerhalb dieser drei Ebenen der Drei-Schema-Architektur bestehen Möglichkeiten für die Optimierung des Datenbankschemas. 2.2 Konzeptuelles Schema Innerhalb des konzeptuellen Schemas wird die Gesamtstruktur der Datenbank für alle Benutzer beschrieben, welche sich auf die Objekte, die Datentypen, die Beziehungen untereinander und die Operationen bezieht. Mögliche abstrakte Datenmodelle für die Modellierung des Schemas sind das relationale Datenmodell und das Entity-Relationship- Modell. 2

5 KAPITEL 2. PHASE 1.1: OPTIMIERUNG DES DATENBANKSCHEMAS 3 Ein erster Ansatzpunkt für die Optimierung im konzenptuellen Schema ist die Zuweisung von Datentypen bei Attributen. Bei der Verwendung von Attributen sind variabel lange Datentypen oft sehr teuer, wenn zusätzlicher Speicherplatz bei einer Vergrößerung der Werte beschafft werden muss. So sollte z.b. statt VARCHAR der statische Datentyp CHAR genutzt werden, falls bekannt ist, dass sich die Größe des Attributs mit hoher Wahrscheinlichkeit ändern wird, jedoch mit Hinblick auf den grundsätzlich höheren Speicherbedarf dieses Datentyps. Somit ist im Zusammenhang mit den genutzten Werten abzuwägen, ob von vorneherein große Datentypen verwendet werden und somit ein hoher Speicherbedarf in Kauf genommen wird oder ob variable Datentypen genutzt werden, bei deren Vergrößerung kostspielige Operationen ausgeführt werden müssen. Ein weiterer Optimierungspunkt sind Tabellen: Beim Anlegen von Tabellen sollte die Nutzung der Daten in der Anwendung genauso berücksichtigt werden wie die semantischen Beziehungen der Entitäten sowie die Aspekte der Normalisierung. Bei der Normalisierung kann eine hohe Anzahl von Tabellen entstehen, die unter Anwendungsaspekten und bei Auftreten von 1:1-Muss-Beziehungen zusammengefasst werden können. Umgedreht können auch Tabellen einer vertikalen Partitionierung - analog führt auch eine horizontale Partitionierung zu mehr und kleineren Tabellen - unterzogen werden, sofern einige Attribute nur selten genutzt werden, die allerdings bei Anfragen auf die oftgenutzten Attribute die Suche behindern. Wie eben bereits angedeutet, bedeutet eine Normalisierung nicht immer die effizienteste Lösung eines Datenbankkonzepts für die Anwendung. Zwar werden dadurch Redundanzen vermindert bzw. eliminiert, jedoch kann durch gezielte Denormalisierung - und somit auch Wiedereinführung von Redundanzen - eine bessere Performance erreicht werden, da Verbundoperationen umgangen werden, wodurch allerdings ein höherer Aufwand bei der Wartung der Redundanzen entsteht. Redundanzen sind nicht immer nur exakt doppelt vorkommende Attribute, die meist vermieden werden sollen. Redundanzen erstrecken sich auch auf abgeleitete Attribute, womit Atrribute bezeichnet werden, die aus Kombination bzw. Modifikation anderer Attribute hergeleitet werden können, sofern dies durch das Datenbanksystem effizient unterstützt wird. 2.3 Internes Schema Innerhalb des internen Schemas, auch physisches Schema genannt, wird die Datenverwaltung auf der Platte beschrieben sowie Zugriffspfade wie z.b. Indexstrukturen definiert. Je nach Anwendungsfall kann die Nutzung eines bestimmten Indexes Vorteile bei Datenbankoperationen bringen. Für das Anlegen eines Indexes auf eine Spalte sprechen

6 KAPITEL 2. PHASE 1.1: OPTIMIERUNG DES DATENBANKSCHEMAS 4 u.a. die folgenden Gründe: die Spalte wird häufig in Suchprädikaten referenziert, die spalte bildet einen Primär- oder Fremdschlüssel und/oder die Spalte besitzt eine hohe Selektivität. Gegen einen Index sprechen folgende Gründe: die Spaltenwerte ändern sich häufig, die Spalte kann NULL-Werte enthalten und/oder die Spalte gehört zu sehr kleinen Tabellen. Neben Indexen auf ein Attribut exisitieren verkettete Indexe, bei denen der Schlüssel aus zwei und mehr Attributen zusammengesetzt ist. Diese Indexe sind für AND-Argumente in der WHERE-Klausel einer Anfrage von Vorteil. Ähnlich wird das Überladen von Indexen genutzt, wenn über den Index auf die gesamte Tabelle zugegriffen werden soll, somit die angehängten Spalten mitgezogen werden. Dies kann natürlich auch nachteilig sein, sofern nicht alle Spalten genutzt werden, es wird von nutzlos überladenen Indexen gesprochen. 2.4 Externes Schema Innerhalb der meist vielfältigen externen Schemata werden - neben Prozeduren und Funktionen - Sichten, für verschiedene Anwendungen und Benutzergruppen angelegt, wodurch nur ein gewisser, anwendungsspezifischer Ausschnitt der Daten sichtbar ist. Nichtbenötigte Daten bleiben verborgen. Bei der Nutzung von Sichten sollte beachtet werden, dass diese, sofern sie ausschließlich auf einer Tabelle operieren, besser vermieden werden, da sonst unnötige Verbundoperationen zur Ersetllung der Sicht durchgeführt werden müssen. Durch Prozeduren, speziell prozedurale SQL-Erweiterungen datenbankinterner Prozeduren, lassen sich Teile der Anwendung in die Bearbeitung durch das Datenbankmanagementsystem übertragen. Außerdem können verschiedene SQL-Anweisungen zusammengefasst, kompakt übertragen und direkt auf der Datenbank ausgeführt werden. Dadurch werden Anwendung und Netzwerk, somit die Kommunikationskanäle zwischen Anwendung und Datenbank, entlastet, jedoch auf Kosten der CPUs des Datenbanksystems, welche einer höheren Belastung durch die Ausführung der Prozeduren ausgesetzt sind.

7 3 Phase 1.2: Anwendungsoptimierung 3.1 Ziel Ähnlich der Optimierung des Datenbankschemas soll durch die Anwendungsoptimierung die Anzahl der für die Anwendung der Datenbank benötigten Zugriffe auf die Datenbank minimiert sowie die verbleibenden Zugriffe in der Formulierung ihrer Anfragen optimiert werden. Bei der Betrachtung der Daten sowie der Zugriffe auf die Daten der Datenbank in Hinblick auf eine Anwendungsoptimierung wird eine vorherige Optimierung der Geschäftsprozesse durch beispielsweise ein Workflow-Management vorausgesetzt. Dies soll bereits vor Erstellung des Datenbankschemas eine unnötige Belastung des Datenbankmanagementsystems vermeiden sowie die benötigten Daten und Anfragen minimieren. Von einem optimierten Datenbankschema ausgehend, bieten sich mehrere Ansatzmöglichkeiten für die Anwendungsoptimierung. Diese beziehen sich einerseits auf die tatsächliche Optimierung der Anwendung sowie auf die Formulierung der SQL-Anweisungen. Ein wichtiger Ansatz ist weiterhin die Optimierung im Mehrbenutzerbetrieb hinsichtlich Transaktionen und deren Synchronisation. 3.2 Optimierung der Anwendung Bei der Optimierung der Anwendung wird vorrangig das Vermeiden überflüssiger Daten in Datenbankanfragen angestrebt. Dadurch wird die Kommunikation mit dem Datenbankmanagementsystem reduziert sowie die Hauptspeicher- und Zugriffseffizienz hinsichtlich Speicherbedarf, Datenmenge und somit Zugriffszeiten erhöht. Die Reduktion der Kommunikation zwischen Anwendung und Datenbankmanagementsystem ist ein wichtiges Ziel bei der Optimierung. Bei der Abwägung von satzorientiertem gegen mengenorientierten Datenzugriff, sollte auf letzteren zurückgegriffen werden sofern die Anwendungsanforderungen erfüllt werden können. Gegenüber einer wiederholten satzorientierten Bearbeitung in Schleifen, vermindert eine geschickte mengenorientierte 5

8 KAPITEL 3. PHASE 1.2: ANWENDUNGSOPTIMIERUNG 6 Bearbeitung den Zugriff auf die Datenbank. Daten können im Nachhinein aus dem größeren Datensatz durch die Anwendung satzweise bearbeitet werden. Bei der Formulierung von Datenbankanfragen sollte darauf geachtet werden, dass strukturgleiche Anfragen identisch formuliert werden. Selbst bei kleinen Unterschieden - beispielsweise die Verwendung von zwei Leerzeichen zwischen den Worten statt eines Leerzeichens - kann es dazu führen, dass der Parser des Datenbankmanagementsystems den Ausführungsplan neu berechnet, wodurch Performance eingebüßt wird. Unterscheiden sich Anfragen lediglich im Wert des Suchprädikats, können sogenannte Hostvariablen genutzt werden, eine Art Platzhalter, der durch die jeweiligen Werte ersetzt wird. Der Parser muß dann den Ausführungsplan nur einmal berechnen. Die Rechenzeit wird reduziert und Hauptspeicherplatz gespart. 3.3 Optimierung im Mehrbenutzerbetrieb Durch den Mehrbenutzerbetrieb können Ressourcen besser ausgenutzt werden, da bei Wartezeiten eines Prozesses ein anderer Prozess die Rechenleistung nutzen kann, bis er selbst auf Betriebsmittel oder Nutzereingaben warten muß. Für die Kontrolle bezüglich der Konsistenzerhaltung im Mehrbenutzerbetrieb wird das Prinzip der Isolation aus dem ACID-Paradigma zugrunde gelegt: Jede Transaktion sieht die Datenbank so, als sei sie selbst die einzige darauf laufende Anwendung. Beim Konzept der Serialisierbarkeit wird das Konzept der Isolation, als Vorteil der seriellen Ausführung, mit den Vorteilen des Mehrbenutzerprinzips, erhöhtem Datendurchsatz, kombiniert. Es entstehen Ausführungspläne von kontrollierten, nebenläufigen und verzahnten Transaktionen. Dabei ist immer abzuwägen, wieviele Transaktionen parallel ablaufen können und dass dennoch die Konsistenz der Daten gesichert ist. Dabei spielt die Synchronisation eine wichtige Rolle, welche eigentlich durch das Datenbankmanagementsystem übernommen wird. Sollte sie allerdings explizit definiert werden, sind folgende Regeln zu beachten: Der Sperrmodus sollte abhängig von der Operation - Lesen oder Schreiben - gewählt werden. Bei Aufeinanderfolgen von Leseund Schreiboperationen auf dasselbe Objekt sollte in den meisten Fällen gleich eine Schreibsperre angefordert werden, um Verklemmungen zu vermeiden. Es sollten nur die tatsächlich für die Transaktion benötigten Datensätze, Tabellen oder Seiten gesperrt werden - bei einer Vielzahl kleiner Datensätze kann es allerdings auch effizienter sein, die komplette Tabelle zu sperren, da so ein unnötig hoher Synchronisationsaufwand vermieden werden kann.

9 KAPITEL 3. PHASE 1.2: ANWENDUNGSOPTIMIERUNG 7 Allgemein sollten Transaktionen durch eine Transaktionsanalyse erfasst werden. Davon ausgehend sollten Transaktionen möglichst kurz sein, damit Ressourcen nicht zu lange von einer einzigen Transaktion blockert werden. 3.4 Formulierung von SQL-Anweisungen Ziel der Anfrageoptimierung sind eine möglichst schnelle Anfragebearbeitung sowie eine möglichst geringe Anzahl von Seitenzugriffen. Zwar wird diese Aufgabe zumeist vom Optimierer übernommen, kann aber auch direkt beeinflußt werden. Dabei sind folgende Ziele zu beachten: Selektionen sollten so früh wie möglich erfolgen, um Zwischenergebnisse klein zu halten. Basisoperationen, die wie Selektion und Projektion zusammengefasst werden können, sollten ohne Zwischenspeicherung von Zwischenergebnissen als ein Berechnungsschritt realisiert werden. Es sollten nur Berechnungen ausgeführt werden, die auch einen Beitrag zum Gesamtergebnis liefern. Redundante Operationen, Idempotenzen (z.b. die Vereinigung einer Relation mit sich selbst) oder nachweisbar leere Zwischenrelationen können aus Berechnungsplänen entfernt werden. Das Zusammenfassen gleicher Teilausdrücke ermöglicht die Wiederverwendung von Zwischenergebnissen. Zu beachten ist, dass Zwischenergebnisse nicht indexiert werden können. Verbundoperationen sind bei der Nutzung derselben Datensätze - allerdings ohne Operationen wie AVG, MIN, MAX - Unteranfragen vorzuziehen. Bei Unteranfragen sollten die Anfragen mit der höchsten Selektivität die inneren Anfragen darstellen, da diese zwischengespeichert werden müssen, und die Schachtelungstiefe sollte möglichst gering gehalten werden. Um kostspielige Sortieroperationen zu vermeiden, sollte die ORDER BY-Funktion nicht bei bereits in der gewünschten Reihenfolge gespeicherten Daten verwendet werden. Die Funktionen DISTINCT und UNION sollten vermieden werden, wenn doppelte Datensätze bereits ausgeschlossen werden können. In der Regel wird die Optimierung in die drei Phasen logische Optimierung, interne Optimierung und kostenbasierte Optimierung unterteilt - worauf in dieser Arbeit nicht expliziter eingegangen werden soll - zumeist findet jedoch eine Kombination der drei Modelle statt, so dass der beste Ausführungsplan basierend auf Heuristiken und statistischen Informationen erstellt wird.

10 4 Phase 2: Hauptspeicheroptimierung 4.1 Ziel Der Hauptspeicher in Datenbannkmanagementsystemen dient der Zwischenspeicherung von Daten. Diese sind vom Hauptspeicher mit Zugriffszeiten im Nanosekundenbereich schneller abrufbar als vom Sekundärspeicher, bei dem sich Zugriffszeiten im Millisekundenbereich bewegen. Natürlich können nicht alle Daten im Hauptspeicher liegen, da dieser zumeist eine Kapazität von lediglich 32 MB bis 1 GB aufweist, im Gegensatz zum Sekundärspeicher mit Kapazitäten von 1 GB bis mehrere Terrabyte. Ziel der Hauptspeicheroptimierung ist die Minimierung der Anzahl unnützer physischer Zugriffe auf den Sekundärspeicher durch eine Optimierung des Hauptspeichers bezüglich der Verteilung der Ressourcen auf die einzelnen Komponenten des Datenbankpuffers. Dazu zählen der Datenpuffer, der SQL-/Prozedurpuffer und der Protokollpuffer. Diese sollten eine bestimmte Menge der Daten beinhalten. Eine einfache Vergrößerung des Hauptspeichers bringt nur bedingt Performancesteigerungen, da mit größerer Kapazität und größerer Datenmenge wiederum ein erhöhter Verwaltungsaufwand eintritt. 4.2 Optimierung des Datenbankpuffers Wie bereits erwähnt, brint eine bloße Vergrößerung des Hauptspeichers nicht automatisch eine Leistungssteigerung. Vielmehr ist es sinnvoll, die Daten des Datenbankpuffers bezügliche der Semantik der Datenstrukturen aufzuteilen und auf semantisch verschiedene Puffer aufzuteilen. Den verschiedenen Aufgabenbereichen der Datenbank werden somit optimale Pufferanteile zugewiesen. Dabei sind folgende Komponenten des Datenbankpuffers sowie deren optimaler Füllgrad zu beachten: Im Datenpuffer werden die Daten (Tabellen und Indexe) gehalten, auf die zugegriffen wird. Es sollten möglichst soviele Daten enthalten sein, dass die Mehrzahl der Anfragen bereits mit dem Zugriff auf den Datenpuffer beantwortet werden können. Es wird eine Trefferrate von 80-90% empfohlen. Das heißt, dass 80-90% der für die Anfragen benötigten Daten im Datenpuffer enthalten sind. 8

11 KAPITEL 4. PHASE 2: HAUPTSPEICHEROPTIMIERUNG 9 Der SQL-/Prozedurpuffer enthält die SQL-Anweisungen und Prozeduren, die bereits durch das Datenbankmanagementsystem übersetzt und optimiert wurden. Daher sollten auch SQL-Anweisungen in einheitlicher Form formuliert werden, damit Ausführungspläne wiederverwendet werden können und nicht ineffizient neu berechnet werden müssen. Für die im SQL-/Prozedurpuffer enthaltenen Anweisungen und Prozeduren wird eine Trefferrate von bis zu 99% empfohlen. Somit sollten für eine optimale Nutzung der Datenbank eigentlich alle Anweisungen darin enthalten sein. Im Protokollpuffer werden die Transaktionen protokolliert, genauer die Log-Einträge, die bei Transaktionsende in die Protokolldatei geschrieben werden, zwischengespeichert. Die Größe des Protokollpuffers ist relativ zur durchschnittlichen Änderungswahrscheinlichkeit der Daten sowie der Häufigkeit des Schreibens des Protokollpufferinhalts in die Protokolldatei zu wählen. Es wird empfohlen, die Wartezeit gegen 0 laufen zu lassen bzw. Fehlversuche beim Schreiben der Protokolldatei unter 5% zu halten. Ausgehend von den eben vorgestellten optimalen Größen der einzelnen Datenbankpufferelemente, ist die optimale Größe des gesamten Datenbankpuffers zu ermitteln. Basierend auf einer optimalen Größe in Relation zur Gesamtgröße des Haupspeichers sowie der optimalen Größe der einzelnen Elemente wird der Speicher zugeteilt, wobei der SQL-/Prozedurpuffer und der Protokollpuffer höhere Priorität besitzen, da es zu Wartezeiten und Performanceeinbußen kommen kann, wenn Transaktionen bei gefülltem Protokollpuffer ihre Änderungen nicht protokollieren können bzw. Ausführungspläne aufwendig berechnet werden müssen, sofern sie nicht im Puffer enthalten sind. 4.3 Optimierer Der Optimierer eines Datenbankmanagementsystems berechnet die Ausführungspläne, die geeignetste Strategie für den Datenzugriff bei Datenbankanfragen, wobei er kostengünstige Operationen nach vorne zieht und kostspielige Operationen anhängt. Der Optimierung liegen die zwei Varianten regelbasierte und kostenbasierte Optimierung zugrunde. Die regelbasierte Optimierung bezieht sich auf das Erkennen kostengünstiger, primär auszuführender Operationen anhand der Syntax. Die kostenbasierte Optimierung dagegen umfasst das Erkennen tatsächlich kostengünstigster Operationen anhand von Statistiken. Dabei ist natürlich vorausgesetzt, dass das System über aktuelle statistische Angaben bezüglich der Anzahl der Datensätze und der Selektivität der Attribute verfügt, welche optimalerweise bei zuvoriger niedriger Datenbanklast berechnet wurden. Die Vorgehensweise des Optimierers kann durch Planhinweise beeinflußt werden, welche die

12 KAPITEL 4. PHASE 2: HAUPTSPEICHEROPTIMIERUNG 10 Wahl des Optimierers, die Nutzung bzw. das Übergehen von Indexen, die Festlegung der Reihenfolge von Verbundoperationen sowie die Ausführung von Verbundoperationen betreffen. Im folgenden sind die Einflußmöglichkeiten am Beispiel von Oracle und DB2 dargestellt. Der DB2-Optimierer kann durch Angabe einer der folgenden Optimierungsklassen beeinflußt werden: Klasse 0 führt eine minimale Optimierung durch, die bei einfachen, interaktiven Anfragen genutzt werden sollte Klasse 1 führt keine Auswertung von Attributwertverteilungen zur Selektivitätsabschätzung durch Klasse 2 nutzt Informationen über Attributwertverteilungen Klasse 3 nutzt dynamische Programmierung zur Planauswahl Klasse 5 ist der Defaultwert, für interaktive Anfragen werden Heuristiken zur Einschränkung des Suchraumes verwendet Klasse 7 wie Klasse 5, ohne Einschränkung des Suchraumes Klasse 9 nutzt alle Optimierungstechniken, die DB2 zur Verfügung stehen In Oracle stehen die zwei Varianten regelbasierte Optimierung und kostenbasierte Optimierung zur Verfügung. Der Optimierer kann auf drei Arten beeinflußt werden: durch Angaben in der Initialisierungsdatei init.ora, durch Setzen von Parametern für einzelne Sitzungen mittels ALTER SESSION und durch Hints für Einzelanfragen. Die folgenden Modi können eingestellt werden: choose: Das System übernimmt die Auswahl zwischen regelbasierter und kostenbasierter Optimierung. Bei Vorliegen statistischer Angaben wird auf die kostenbasierte Optimierung zurückgegriffen. all rows: Optimiert wird bezüglich der Zeit der Bereitstellung des Gesamtergebnisses. first rows: Optimiert wird bezüglich der Zeit der Bereitstellung der ersten Tupel des Gesamtergebnisses. rule: Optimiert wird ausschließlich über regelbasierte Optimierung.

13 KAPITEL 4. PHASE 2: HAUPTSPEICHEROPTIMIERUNG 11 Hints, dir nur bei der kostenbasierten Optimierung erkannt werden, beeinflussen den gewählten Optimierungsmodus, die Auswahl konkreter Algorithmen, die Auswahl von Indexen, die Reihenfolge der Berechnung und weitergehende Optimierungsparameter wie beispielsweise den Parallelisierungsgrad von Anfragen.

14 5 Phase 3: Eingabe-/Ausgabeoptimierung 5.1 Ziel Die Eingabe-/Ausgabeoptimierung bzw. Optimierung der Sekundärspeicherzugriffe soll die verbleibenden Zugriffe auf den Sekundärspeicher optimieren. Dies wird durch gezielte Beeinflussung der physischen Struktur des Speichers erwirkt, durch Verteilung der Eingabe- /Ausgabelast auf verschiedene Festplatten sowie durch Umgehung gewisser Funktionen des Betriebssystems. 5.2 Betriebssystemfunktionen Für die Steigerung der Performance eines Datenbankmanagementsystems kann es sinnvoll sein, gewisse Betriebssystemfunktionen zu umgehen. Beim durch das Betriebssystem gesteuerten Schreiben von Daten durchlaufen die Daten den Datenbankpuffer, den Hauptspeicherpuffer und den Dateisystempuffer bevor sie in die Dateien der Datenbank geschrieben werden. Für das Schreiben großer Datenmengen bedeutet dies einen hohen Rechenaufwand. Durch den Einsatz eines Raw Devices 1 können diese Zwischenstationen umgangen werden, ein direkter Zugriff auf die Festplatte wird ermöglicht. Dem gegenüber steht allerdings ein dadurch bedingter erhöhter Administrationsaufwand bei der erforderlichen Datensicherung. 5.3 Lastverteilung Im Zuge der Sekundärspeicheroptimierung sollte eine geschickte Lastverteilung vorgenommen werden. Dazu werden beispielsweise die Blöcke auf unterschiedliche Datenträger verteilt, wodurch ein paralleler Zugriff auf die Daten ermöglicht wird. Ebenso ist eine Trennung von Tabellendaten und den zugehörigen Indexdateien sinnvoll. Dies macht sich 1 Ein Raw Device bzw. Raw Partition ist eine zeichenorientierte Gerätedatei, die den direkten Zugriff auf eine Festplattenpartition erlaubt. Das Raw Device abstrahiert die Daten nicht über ein Dateisystem. Beim Zugriff auf das Device wird die Datenträgerverwaltung des Betriebssystems weitgehend umgangen. 12

15 KAPITEL 5. PHASE 3: EINGABE-/AUSGABEOPTIMIERUNG 13 besonders bei Vorgängen wie Neuindexierung, Reindexierung sowie dem Schreiben von Datensätzen positiv bemerkbar. Ebenso wird dadurch der seriell ablaufende Datenimport optimiert, wenn die Daten nicht zwischendurch im Datenbankpuffer abgelegt werden können. Weiterhin sollte eine Partitionierung vorgenommen werden. Diese betrifft vor allem an Verbundoperationen beteiligte Daten, die auf verschiedene Datenträger abgelegt werden. Dadurch werden Selektionen parallelisierbar gemacht. Bei der Verwaltung großer Datenmengen empfiehlt sich eine horizontale Partionierung der Daten auf verschiedene Festplatten. Weiterhin sollten auch Datendateien und Protokolldateien auf verschiedenen Festplatten abgelegt werden. Abgesehen von der Verteilung der Daten und Verwaltungsdateien wird bezügliche der Hardware der Einsatz eines RAID-Verbundes empfohlen. Besonders die Kombination aus RAID 0, welches das Striping ermöglicht, sowie RAID 1, wodurch eine Spiegelung der Daten erreicht wird. Diese dient der Sicherung der Daten. 5.4 Optimierung der physischen Speicherstrukturen Bei Festlegung der Blockgröße, welche gleichfalls die Größe der Seite betrifft, sind folgende Aspekte relevant für eine effiziente Nutzung des Datenbankpuffers: Es sollte ein möglichst geringer Anteil an Verwaltungsinformationen enthalten sein, es sollten lediglich gewünschte Daten enthalten sein, es sollte möglichst wenig freier Platz bei Lesezugriffen und möglichst viel freier Platz bei Schreibzugriffen vorhanden sein. Da diese Aspekte jedoch nicht einfach umsetzbar sind, sollten besonders die Anforderungen der Anwendung berücksichtigt werden, da diese Aufschluß über die häufigsten Operationen geben können. Allgemein spricht für die Verwendung kleiner Blöcke, dass dadurch weniger Bedarf an Datenbankpufferplatz besteht und die Wahrscheinlichkeit nicht benötigter Daten sowie die Konfliktwahrscheinlichkeit minimiert werden. Nachteilig ist allerdings, dass Verwaltungsinformationen in einem schlechten Verhältnis zu den Nutzdaten stehen. Große Blöcke sind optimal bei Tabellen mit großen Datensätzen verbunden mit einer Minimierung der Anzahl der Blöcke. Weiterhin sind große Blöcke bei sortierten und geclusterten Datensätzen zu bevorzugen. Einen Nachteil stellt dabei jedoch die größere Höhe der Indexbäume dar. Clustertechniken ermöglichen einen effizienten und schnelleren Zugriff auf zusammenhängende Datensätze. Jedoch werden Anweisungen ohne Cluster Key langsam abgefertigt und es ist zu beachten, dass die Blockgröße ausreichend groß für Einfügeoperationen gewählt wird.

16 KAPITEL 5. PHASE 3: EINGABE-/AUSGABEOPTIMIERUNG 14 Für eine Laufzeitverbesserung ist zuweilen eine Reorganisation der Speicherstrukturen unumgänglich. Dabei werden Datensätze, die durch den laufenden Betrieb über mehrere Blöcke verteilt wurden, wieder vereint. Auch Tabellen, die über mehrere Blöcke verteilt sind, werden defragementiert und wieder zusammengefügt. Ebenso wird mit Clustern verfahren. Diese Reorganisation, wie auch das Löschen von Datensätzen, zieht eine Neuberechnung der Indexe nach sich, so dass diese wieder schmalere Binärbäume darstellen.

17 6 Zusammenfassung Die Optimierung von Datenbanken umfasst 4 Phasen: die Optimierung des Datenbankschemas und der Anwendung, die Hauptspeicheroptimierung, die Eingabe-/Ausgabeoptimierung und die Konfliktoptimierung. Diese 4 Phasen berücksichtigen die theoretische Formierung der Datenbank ebenso wie die Anwendung an sich, die physichen Strukturen des Datenbankmanagementsystems sowie die SQL-Syntax. Ziel der Optimierung ist eine allgemeine Performancesteigerung des Datenbankmanagementsystems, welche sich durch eine Laufzeitverbesserung verbunden mit erhöhtem Datendurchsatz auszeichnet. Damit wird auch der Kauf zusätzlicher Hardware unterbunden und eine mittel- bis langfristig günstigere Wartung erreicht. Innerhalb der einzelnen Phasen der Optimierung wird die Anzahl der für die Anwendung der Datenbank benötigten Zugriffe auf die Datenbank minimiert sowie die verbleibenden Zugriffe in der Formulierung ihrer Anfragen optimiert. Dies erfolgt bereits in der ersten Phase, bei der Erstellung des Datenbankschemas, wobei auf allen drei Ebenen der Drei- Schema-Architektur Möglichkeiten für die Optimierung des Datenbankschemas bestehen. Ebenso erfolgt eine tatsächliche Optimierung der Anwendung sowie eine Optimierung der Formulierung der SQL-Anweisungen. In Phase 2, der Hauptspeicheroptimierung, werden die unnützen physischen Zugriffe auf den Sekundärspeicher minimiert. Dies erfolgt durch eine Optimierung des Hauptspeichers bezüglich der Verteilung der Ressourcen auf die einzelnen Komponenten des Datenbankpuffers. Die Einhaltung optimaler Trefferraten für Datenpuffer, SQL-/Prozedurpuffer und Protokollpuffer erhöhen die Effizenz des Datenbankmanagementsystems. Nach der Minimierung der Sekundärspeicherzugriffe werden die verbleibenden Zugriffe in Phase 3, der Eingabe-/Ausgabeoptimierung, optimiert. Dies wird durch gezielte Beeinflussung der physischen Struktur des Speichers erwirkt, durch Verteilung der Eingabe- /Ausgabelast auf verschiedene Festplatten sowie durch Umgehung gewisser Funktionen des Betriebssystems. In Phase 4, der Konfliktoptimierung, werden system- und anwendungsabhängig, verbleibende Zugriffskonflikte gelöst. 15

18 7 Quellenverzeichnis Kempler, A. und A. Eickler: Datenbanksysteme, 6. Auflage - München: Oldenbourg Wissenschaftsverlag GmbH, ISBN Kudraß, Thomas (Hrsg.): Taschenbuch Datenbanken - Leipzig: Carl Hanser Verlag, ISBN Saake, Gunter: Datenbanken: Implementierungstechniken / Gunter Saake; Andreas Heuer - Bonn: MITP-Verlag GmbH, ISBN

Grundlagen von Datenbanken

Grundlagen von Datenbanken Grundlagen von Datenbanken Aufgabenzettel 1 Grundlagen Datenbanken: Kurzer historischer Überblick (1) Anwendung 1 Anwendung 2 Datei 1 Datei 2 Datei 3 Zugriff auf Dateien ohne spezielle Verwaltung 2 Exkurs:

Mehr

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Moderne Datenbanksysteme sind nach der 3-Ebenen-Architektur gebaut: Anwendung 1 Web-Anwendung Anwendung 2 Java-Programm... Anwendung n Applikation

Mehr

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt Andreas Heuer Gunter Saake Kai-Uwe Sattler Datenbanken kompakt Inhaltsverzeichnis Vorwort v 1 Was sind Datenbanken 1 1.1 Warum Datenbanken 1 1.2 Datenbanksysteme 4 1.3 Anforderungen: Die Codd'schen Regeln

Mehr

Physische Datenorganisation

Physische Datenorganisation Physische Datenorganisation Physische Datenorganisation 2002 Prof. Dr. Rainer Manthey Informationssysteme 1 Übersicht Datenbanken, Relationen und Tupel werden auf der untersten Ebene der bereits vorgestellten

Mehr

Einführung in Datenbanksysteme. H. Wünsch 01.2001

Einführung in Datenbanksysteme. H. Wünsch 01.2001 Einführung in Datenbanksysteme H. Wünsch 01.2001 H. Wünsch 01/2001 Einführung Datenbanken 2 Was sind Datenbanken? Datenbanken sind Systeme zur Beschreibung, Speicherung und Wiedergewinnung von Datenmengen.

Mehr

Relationale Datenbanken Datenbankgrundlagen

Relationale Datenbanken Datenbankgrundlagen Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern

Mehr

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken Profilbezogene informatische Bildung in den Klassenstufen 9 und 10 Schwerpunktthema Robby Buttke Fachberater für Informatik RSA Chemnitz Fachliche Einordnung Phasen relationaler Modellierung Fachlichkeit

Mehr

Einführung in Datenbanken

Einführung in Datenbanken Grundlagen der Programmierung 2 Einführung in Datenbanken Grundlagen der Programmierung 2 I-1 Inhalt Einführung Entity-Relationship-Diagramm Relationales Modell Entity-Relationship-Diagramm ins Relationales

Mehr

RAID. Name: Artur Neumann

RAID. Name: Artur Neumann Name: Inhaltsverzeichnis 1 Was ist RAID 3 1.1 RAID-Level... 3 2 Wozu RAID 3 3 Wie werden RAID Gruppen verwaltet 3 3.1 Software RAID... 3 3.2 Hardware RAID... 4 4 Die Verschiedenen RAID-Level 4 4.1 RAID

Mehr

Kapitel 8: Physischer Datenbankentwurf

Kapitel 8: Physischer Datenbankentwurf 8. Physischer Datenbankentwurf Seite 1 Kapitel 8: Physischer Datenbankentwurf Speicherung und Verwaltung der Relationen einer relationalen Datenbank so, dass eine möglichst große Effizienz der einzelnen

Mehr

Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien

Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien Boris Meißner 05-INDT Fachbereich Informatik, Mathematik und Naturwissenschaften HTWK-Leipzig 05. Juni 2008 Boris Meißner (Fb IMN - HTWK-Leipzig)

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

Software-Engineering und Datenbanken

Software-Engineering und Datenbanken Software-Engineering und Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Prof. Dr. Bernhard Schiefer 1-1 Wesentliche Inhalte Begriff DBS Datenbankmodelle

Mehr

Die Grundbegriffe Die Daten Die Informationen

Die Grundbegriffe Die Daten Die Informationen Die Grundbegriffe Die Daten sind diejenigen Elemente, die vom Computer verarbeitet werden. Die Informationen sind Wissenselemente, welche durch die Analyse von Daten erhalten werden können. Die Daten haben

Mehr

Inhaltsverzeichnis. jetzt lerne ich

Inhaltsverzeichnis. jetzt lerne ich Inhaltsverzeichnis jetzt lerne ich Einführung 15 1 Erste Schritte 21 1.1 Datenbanken und Datenbank-Managementsysteme 21 1.2 Zugriff auf Datenbanken 22 1.3 Was der Großvater noch wusste... 22 1.4 Einordnung

Mehr

Datenbanken. Dateien und Datenbanken:

Datenbanken. Dateien und Datenbanken: Dateien und Datenbanken: Professionelle Anwendungen benötigen dauerhaft verfügbare, persistent gespeicherte Daten. Datenbank-Systeme bieten die Möglichkeit, Daten persistent zu speichern. Wesentliche Aspekte

Mehr

Entwurf von Datenbanken

Entwurf von Datenbanken Bisher: was sind Datenbanken? Wie funktionieren sie? Im Folgenden: wie entwickle ich eine Datenbank? Was ist eine gute Datenbank? Der Datenbankentwurfsprozess Das Entity Relationship (ER) Modell Abbildung

Mehr

Bedeutung der Metadateien. Alle Metadaten werden in Dateien gehalten. NTFS ist ein Journal-File-System

Bedeutung der Metadateien. Alle Metadaten werden in Dateien gehalten. NTFS ist ein Journal-File-System 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6.3 Metadaten 6.3 Metadaten (2) Alle Metadaten werden in Dateien gehalten Indexnummer 0 1 2 3 4 5 6 7 8 16 17 MFT

Mehr

Hardware- und Software-Anforderungen IBeeS.ERP

Hardware- und Software-Anforderungen IBeeS.ERP Hardware- und Software-Anforderungen IBeeS.ERP IBeeS GmbH Stand 08.2015 www.ibees.de Seite 1 von 8 Inhalt 1 Hardware-Anforderungen für eine IBeeS.ERP - Applikation... 3 1.1 Server... 3 1.1.1 Allgemeines

Mehr

Oracle Automatic Storage Management (ASM) Best Practices

Oracle Automatic Storage Management (ASM) Best Practices Oracle Automatic Storage Management (ASM) Best Practices Markus Michalewicz BU Database Technologies ORACLE Deutschland GmbH 2 Page 1 www.decus.de 1 Agenda ASM Funktionalität und Architektur Storage Management

Mehr

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector 7.4 Analyse anhand der SQL-Trace 337 7.3.5 Vorabanalyse mit dem Code Inspector Der Code Inspector (SCI) wurde in den vorangegangenen Kapiteln immer wieder erwähnt. Er stellt ein paar nützliche Prüfungen

Mehr

Datenintegrität und Transaktionskonzept

Datenintegrität und Transaktionskonzept und Transaktionskonzept 1. / Datenkonsistenz 1 Mögliche Gefährdung der : Missachtung von Konsistenzbedingungen ("Semantische Integrität") Inkorrekte Verweise auf Datensätze in verschiedenen Tabellen ("Referentielle

Mehr

Kapitel 6 Anfragebearbeitung

Kapitel 6 Anfragebearbeitung LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 6 Anfragebearbeitung Vorlesung: PD Dr. Peer Kröger

Mehr

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert Maika Büschenfeldt Datenbanken: Skript 1 1. Was ist eine relationale Datenbank? In Datenbanken können umfangreiche Datenbestände strukturiert abgelegt werden. Das Konzept relationaler Datenbanken soll

Mehr

SQL Server 2008 Performance-Optimierung

SQL Server 2008 Performance-Optimierung Holger Schmeling SQL Server 2008 Performance-Optimierung Das Praxisbuch für Entwickler und Administratoren ^ ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

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

Mehr

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational

Mehr

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: Datenbanksysteme Entwicklung der Datenbanksysteme Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: 1. Generation: In den fünfziger

Mehr

Abschluss Einblick und Ausblick

Abschluss Einblick und Ausblick Abschluss Einblick und Ausblick Prof. Dr. T. Kudraß 1 Benutzer Komponenten eines DBMS (Überblick) I/O-Prozessor Output-Generierung Parser für selbst. oder eingebettete Kommandos Precompiler Autorisierungs-Kontrolle

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

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff von Athanasia Kaisa Grundzüge eines Zwischenspeichers Verschiedene Arten von Zwischenspeicher Plattenzwischenspeicher in LINUX Dateizugriff

Mehr

Informatik II Datenorganisation Datenbanken

Informatik II Datenorganisation Datenbanken Informatik II Datenorganisation Datenbanken Studiengang Wirtschaftsingenieurwesen (2. Semester) Prof. Dr. Sabine Kühn Tel. (0351) 462 2490 Fachbereich Informatik/Mathematik skuehn@informatik.htw-dresden.de

Mehr

Vorlesung 30.03.2009 1) Einführung

Vorlesung 30.03.2009 1) Einführung Vorlesung 30.03.2009 1) Einführung Was versteht man unter dem Begriff Datenbank? - Eine Datenbank ist eine Struktur zur Speicherung von Daten mit lesendem und schreibendem Zugriff - Allgemein meint man

Mehr

Im Fall einer Personaldatenbank würde eine Relation beispielsweise wie folgt aussehen:

Im Fall einer Personaldatenbank würde eine Relation beispielsweise wie folgt aussehen: Grundwissen zu relationalen Datenbanken Die Funktion einer relationalen Dankbank besteht in der elektronischen Verwaltung von Daten in Computersystemen. Die Basis für relationale Datenbanken bildet das

Mehr

Die allerwichtigsten Raid Systeme

Die allerwichtigsten Raid Systeme Die allerwichtigsten Raid Systeme Michael Dienert 4. Mai 2009 Vorbemerkung Dieser Artikel gibt eine knappe Übersicht über die wichtigsten RAID Systeme. Inhaltsverzeichnis 1 Die Abkürzung RAID 2 1.1 Fehlerraten

Mehr

Datenbanksysteme II. Vorlesung: PD Dr. Peer Kröger

Datenbanksysteme II. Vorlesung: PD Dr. Peer Kröger Datenbanksysteme II Sommersemester 2012 Vorlesung: PD Dr. Peer Kröger Dieses Skript basiert auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München von Prof. Dr. Christian Böhm (Sommersemester

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

1 Die Active Directory

1 Die Active Directory 1 Die Active Directory Infrastruktur Prüfungsanforderungen von Microsoft: Configuring the Active Directory Infrastructure o Configure a forest or a domain o Configure trusts o Configure sites o Configure

Mehr

Betriebssysteme K_Kap11C: Diskquota, Raid

Betriebssysteme K_Kap11C: Diskquota, Raid Betriebssysteme K_Kap11C: Diskquota, Raid 1 Diskquota Mehrbenutzer-BS brauchen einen Mechanismus zur Einhaltung der Plattenkontingente (disk quotas) Quota-Tabelle enthält Kontingenteinträge aller Benutzer

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

Architekturen im DB-Umfeld

Architekturen im DB-Umfeld Architekturen im DB-Umfeld ANSI/SPARC und DIAM 66 Motivation 67 Ziele von Architekturdefinitionen I Strukturierung des Chaos Komplexe (IT-)Anwendungen und reale Problemstellungen bestehen aus vielen Einzelteilen.

Mehr

1. Einführung: 1.3 Aufbau und Architektur von DBMS

1. Einführung: 1.3 Aufbau und Architektur von DBMS 1. Einführung: 1.3 Aufbau und Architektur von DBMS Bestandteile eines Datenbanksystems Datenbanksystem Datenbanksystem Oberbegriff Datenbank (DB) Systemschnittstelle Datenbankmanagementsystem (DBMS) Speicher

Mehr

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Dieser Fragenkatalog wurde aufgrund das Basistextes und zum Teil aus den Prüfungsprotokollen erstellt, um sich auf mögliche

Mehr

PARAGON SYSTEM UPGRADE UTILITIES

PARAGON SYSTEM UPGRADE UTILITIES PARAGON SYSTEM UPGRADE UTILITIES VIRTUALISIERUNG EINES SYSTEMS AUS ZUVOR ERSTELLTER SICHERUNG 1. Virtualisierung eines Systems aus zuvor erstellter Sicherung... 2 2. Sicherung in eine virtuelle Festplatte

Mehr

Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])

Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs]) Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs]) Hochschule für Technik, Wirtschaft und Kultur Leipzig 06.06.2008 Datenbanken II,Speicherung und Verarbeitung großer Objekte

Mehr

STORAGE. Martin Schmidt Berufsschule Obernburg

STORAGE. Martin Schmidt Berufsschule Obernburg STORAGE Martin Schmidt Berufsschule Obernburg Storage Begriffserklärung Storage ist die Bezeichnung für eine große Menge zusammenhängenden Speicherplatz in einem Netzwerk. Storage heißen auch die große

Mehr

Vom Datenmodell zur Datenbank

Vom Datenmodell zur Datenbank Vom Datenmodell zur Datenbank Eine Einführung in Relationale Datenbanksysteme am Beispiel MS-ACCESS 1-1 Inhaltsverzeichnis Inhalt Kapitel 1: Grundlagen Inhaltsverzeichnis... 1-2 1 Was versteht man unter

Mehr

Datenbanken. Einführung. Tobias Galliat. Sommersemester 2012

Datenbanken. Einführung. Tobias Galliat. Sommersemester 2012 Datenbanken Einführung Tobias Galliat Sommersemester 2012 Basistext: A. Kemper, A. Eickler: Datenbanksysteme, Oldenbourg Verlag, München, 2011, 8. Auflage, Preis: 39,80 ebenfalls empfehlenswert: T. Kudraß

Mehr

Ein Ausflug zu ACCESS

Ein Ausflug zu ACCESS Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet

Mehr

Microsoft Access Doku

Microsoft Access Doku Microsoft Access Doku Grundlegende Funktionen Eine Datenbank besteht aus einzelnen Datensätzen. Grundlegend besteht eine Datenbank immer aus einer Tabelle. Microsoft Access ähnelt im Aufbau stark den anderen

Mehr

Dateiorganisation und Zugriffsstrukturen

Dateiorganisation und Zugriffsstrukturen Dateiorganisation und Zugriffsstrukturen Prof. Dr. T. Kudraß 1 Mögliche Dateiorganisationen Viele Alternativen existieren, jede geeignet für bestimmte Situation (oder auch nicht) Heap-Dateien: Geeignet

Mehr

6. Datenintegrität. Integritätsbedingungen

6. Datenintegrität. Integritätsbedingungen 6. Integritätsbedingungen dienen zur Einschränkung der Datenbankzustände auf diejenigen, die es in der realen Welt tatsächlich gibt. sind aus dem erstellten Datenmodell ableitbar (semantisch) und können

Mehr

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join Parsen der Anfrage (SQL) Transformation in eine Standardform (Relationenalgebra) Logische Optimierung Transformation in alternative Zugriffspläne, Physische Optimierung Ausführung des gewählten Zugriffsplans

Mehr

Wiederherstellung (Recovery)

Wiederherstellung (Recovery) Fragestellungen Aufgaben der Komponenten für das Recovery: Sicherstellung der Dauerhaftigkeit der gespeicherten Daten, d.h. Daten, die in einer Transaktion einmal bestätigt wurden (commit), bleiben auch

Mehr

SYSTEM J - Konzeption und prototypische Umsetzung eines Praktikums zur Datenbanksystementwicklung

SYSTEM J - Konzeption und prototypische Umsetzung eines Praktikums zur Datenbanksystementwicklung Einführung Architektur Komponenten FileManager BufferManager RecordManager IndexManager LockManager CatalogManager Compiler Optimizer RunTime Erfahrungen SYSTEM J - Konzeption und prototypische Umsetzung

Mehr

2. Braunschweiger Linux-Tage. Vortrag über RAID. von. Thomas King. http://www.t-king.de/linux/raid1.html. 2. Braunschweiger Linux-Tage Seite 1/16

2. Braunschweiger Linux-Tage. Vortrag über RAID. von. Thomas King. http://www.t-king.de/linux/raid1.html. 2. Braunschweiger Linux-Tage Seite 1/16 2. Braunschweiger Linux-Tage Vortrag über RAID von Thomas King http://www.t-king.de/linux/raid1.html 2. Braunschweiger Linux-Tage Seite 1/16 Übersicht: 1. Was ist RAID? 1.1. Wo wurde RAID entwickelt? 1.2.

Mehr

Teil VI. Datenbanken

Teil VI. Datenbanken Teil VI Datenbanken Überblick 1 Grundlegende Begriffe Motivation 2 Relationale Datenbanksysteme Das Relationale Datenmodell SQL 3 Entwurf von Datenbanken Das Enity Relationship (ER) Modell Abbildung von

Mehr

Lösungsskizzen zur Abschlussklausur Betriebssysteme

Lösungsskizzen zur Abschlussklausur Betriebssysteme Lösungsskizzen zur Abschlussklausur Betriebssysteme 24. Januar 2013 Name: Vorname: Matrikelnummer: Studiengang: Hinweise: Tragen Sie zuerst auf allen Blättern (einschlieÿlich des Deckblattes) Ihren Namen,

Mehr

Acronis TrueImage (Version 7.0) Benutzerführung. genutzte Quelle: http://www.acronis.de / Hilfedatei zum Programm Acronis TrueImage Version 7.

Acronis TrueImage (Version 7.0) Benutzerführung. genutzte Quelle: http://www.acronis.de / Hilfedatei zum Programm Acronis TrueImage Version 7. Hier finden Sie von der Firma GriCom Wilhelmshaven eine, um ein Backup Ihres Computers / Ihrer Festplatten zu erstellen und dieses Backup bei Bedarf zur Wiederherstellung zu nutzen. Diese Bedienerführung

Mehr

Aufbau Datenbanksysteme

Aufbau Datenbanksysteme Aufbau Datenbanksysteme Lehrveranstaltung Datenbanktechnologien Prof. Dr. Ingo Claßen Prof. Dr. Martin Kempa Hochschule für Technik und Wirtschaft Berlin Speichersystem c Ingo Claßen, Martin Kempa Softwarearchitektur

Mehr

Einführung. Kapitel 1 2 / 508

Einführung. Kapitel 1 2 / 508 Kapitel 1 Einführung 2 / 508 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern und Verwalten von Daten. Warum kein herkömmliches Dateisystem verwenden? Ausfallsicherheit und Skalierbarkeit

Mehr

Raumbezogene Datenbanken (Spatial Databases)

Raumbezogene Datenbanken (Spatial Databases) Raumbezogene Datenbanken (Spatial Databases) Ein Vortrag von Dominik Trinter Alexander Christian 1 Inhalte Was ist ein raumbezogenes DBMS? Modellierung Abfragen Werkzeuge zur Implementierung Systemarchitektur

Mehr

2. Datenbank-Programmierung

2. Datenbank-Programmierung 2. Datenbank-Programmierung SQL ist eingeschränkt bezüglich der algorithmischen Mächtigkeit, z.b. Berechnung einer transitiven Hülle ist in Standard-SQL nicht möglich. Die Einschränkung ist von Bedeutung

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

Themen. M. Duffner: Datenbanksysteme

Themen. M. Duffner: Datenbanksysteme Datenbanksysteme Themen Theorie Einführung Datenbank, Datenbankmanagementsystem (DBMS), Aufgaben eines DBMS Relationale Datenbanken Daten als Tabellen Datenbankentwurf im Entity-Relationship-Modell Abfragesprache

Mehr

Inhaltsverzeichnis. BüroWARE Systemanforderungen ab Version 5.31. Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2

Inhaltsverzeichnis. BüroWARE Systemanforderungen ab Version 5.31. Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2 Inhaltsverzeichnis Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2 1. Terminal-Server-Betrieb (SQL)... 3 1.1. Server 3 1.1.1. Terminalserver... 3 1.1.2. Datenbankserver (bei einer Datenbankgröße

Mehr

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL 1 Transaktionen in SQL Um Daten in einer SQL-Datenbank konsistent zu halten, gibt es einerseits die Möglichkeit der Normalisierung, andererseits sog. Transaktionen. 2 Was ist eine Transaktion Eine Transaktion

Mehr

Was machen wir heute? Betriebssysteme Tutorium 12. Organisatorisches. Frage 12.1.a. Programmieraufgaben Vorstellung. Antwort

Was machen wir heute? Betriebssysteme Tutorium 12. Organisatorisches. Frage 12.1.a. Programmieraufgaben Vorstellung. Antwort Was machen wir heute? Betriebssysteme Tutorium 12 1 Organisatorisches Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität

Mehr

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer Speicherung von XML in (objekt-)relationalen Datenbanken Burkhard Schäfer Übersicht Motivation Anforderungen Ansätze modellorientiert strukturorientiert Zusammenfassung Motivation Warum XML in Datenbanken

Mehr

Klassifikation von Integrationskonflikten

Klassifikation von Integrationskonflikten Klassifikation von Integrationskonflikten Christiane Telöken 1 Inhaltsverzeichnis 1. Was bedeutet Integration? 2. Strukturelle Heterogenitätskonflikte 2.1 Konflikte bei bilateralen Korrespondenzen 2.2

Mehr

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken 30 Wozu dient ein Primärschlüssel? Mit dem Primärschlüssel wird ein Datenfeld

Mehr

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten.

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten. Einführung SQL 2010 Niko Becker Mit unseren Übungen zu ACCESS können Sie Aufbau und Struktur einer relationalen Datenbank kennenlernen. Wir zeigen Ihnen wie Sie Tabellen, Formulare und Berichte erstellen

Mehr

Datenträgerverwaltung

Datenträgerverwaltung Datenträgerverwaltung Datenträgerverwaltung 1/9 Datenträgerverwaltung Inhaltsverzeichnis Vorgangsweise...2 Umwandeln einer Basisfestplatte in eine Dynamische Festplatte... 2 Spiegelung erstellen... 4 Partitionen

Mehr

Access Grundkurs. M. Eng. Robert Maaßen

Access Grundkurs. M. Eng. Robert Maaßen Access Grundkurs M. Eng. Robert Maaßen Wer steht da? M. Eng. Robert Maaßen ich@robertmaassen.de www.robertmaassen.de Studium: Informatik Vertiefungsrichtung Medientechnik, Diplom Ingenieur (FH), HAWK,

Mehr

Definition Informationssystem

Definition Informationssystem Definition Informationssystem Informationssysteme (IS) sind soziotechnische Systeme, die menschliche und maschinelle Komponenten umfassen. Sie unterstützen die Sammlung, Verarbeitung, Bereitstellung, Kommunikation

Mehr

Datenbanken (WS 2015/2016)

Datenbanken (WS 2015/2016) Datenbanken (WS 2015/2016) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de) Sprechstunde

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

Synchronisation in Datenbanksystemen in a nutshell

Synchronisation in Datenbanksystemen in a nutshell Synchronisation in Datenbanksystemen in a nutshell 1. Modell für nebenläufige Transaktionen und Korrektheitskriterium Transaktionsmodell: Folgen von Lese und Schreiboperationen abgeschlossen durch c=commit.

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

Lokales Storage Teil 1

Lokales Storage Teil 1 Lokales Storage Teil 1 Zinching Dang 08. Juli 2015 1 Lokales Storage im Allgemeinen Lokales Storage im Allgemeinen Datenträger, die direkt am Host angeschlossen sind Anbindung über verschiedene Bus-Systeme

Mehr

Arbeiten mit ACCESS 2013

Arbeiten mit ACCESS 2013 Dipl.-Hdl., Dipl.-Kfm. Werner Geers Arbeiten mit ACCESS 2013 Datenbanken mit Datenmodellierung Tabellen, Abfragen, Formularen und Berichten Beziehungen Makros Datenaustausch SQL Structured Query Language

Mehr

10. Datenbank Design 1

10. Datenbank Design 1 1 Die Hauptaufgabe einer Datenbank besteht darin, Daten so lange zu speichern bis diese explizit überschrieben oder gelöscht werden. Also auch über das Ende (ev. sogar der Lebenszeit) einer Applikation

Mehr

Datenbanken. Ein DBS besteht aus zwei Teilen:

Datenbanken. Ein DBS besteht aus zwei Teilen: Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)

Mehr

Form Designer. Leitfaden

Form Designer. Leitfaden Leitfaden Copyright Die hier enthaltenen Angaben und Daten können ohne vorherige Ankündigung geändert werden. Die in den Beispielen verwendeten Namen und Daten sind frei erfunden, soweit nichts anderes

Mehr

Schulinternes Curriculum im Fach Informatik

Schulinternes Curriculum im Fach Informatik Schulinternes Curriculum im Fach Informatik Unterricht in EF : 1. Geschichte der elektronischen Datenverarbeitung (3 Stunden) 2. Einführung in die Nutzung von Informatiksystemen und in grundlegende Begriffe

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

1 Grundbegriffe...1. 2 Datenbanksysteme...7. 3 Entwicklung von Datenbanksystemen...15. Inhaltsverzeichnis. 1.1 Information und Daten...

1 Grundbegriffe...1. 2 Datenbanksysteme...7. 3 Entwicklung von Datenbanksystemen...15. Inhaltsverzeichnis. 1.1 Information und Daten... Inhaltsverzeichnis 1 Grundbegriffe...1 1.1 Information und Daten...2 1.2 Datenorganisation...3 1.3 Dateikonzept...5 1.4 Kontroll- und Vertiefungsfragen...6 2 Datenbanksysteme...7 2.1 Datenintegration...7

Mehr

BERUFSPRAKTIKUM UND -VORBEREITUNG

BERUFSPRAKTIKUM UND -VORBEREITUNG Department für Geographie Marco Brey BERUFSPRAKTIKUM UND -VORBEREITUNG Crashkurs IT-Methoden ein anwendungsorientierter Einstieg in Datenbanksysteme, Programmierung und fortgeschrittene Excel-Funktionen

Mehr

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Carl-Christian Kanne. Einführung in Datenbanken p.1/513 Einführung in Datenbanken Carl-Christian Kanne Einführung in Datenbanken p.1/513 Kapitel 1 Einführung Einführung in Datenbanken p.2/513 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern

Mehr

1. Einführung. 2. Vorbereitung. 3. Import von Firmenkunden

1. Einführung. 2. Vorbereitung. 3. Import von Firmenkunden 1. Einführung Über den Kundenimport können Sie Kundendaten aus vielen gängigen Formaten bequem in orgamax importieren, ohne diese einzeln eingeben zu müssen. In dieser Dokumentation sind verschiedene Szenarien,

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

Datenbanken. Methodik der Lehrveranstaltung

Datenbanken. Methodik der Lehrveranstaltung Lehrkräfte: Datenbanken (DB) 1.) Prof. Dr.-Ing. Martin Pollakowski Fachbereich Elektrotechnik Raum C-4.03, Tel.: - 226, E-Mail: martin.pollakowski@fh-gelsenkirchen.de 2.) Dipl.-Ing. Peter Mroczek Raum:

Mehr

Histogramme in der Datenbankoptimierung. Marian Marx 26.06.2008

Histogramme in der Datenbankoptimierung. Marian Marx 26.06.2008 Histogramme in der Datenbankoptimierung Marian Marx 26.06.2008 Inhaltsverzeichnis 1. Histogramme im Allgemeinen 1.1 Definition Histogramm 1.2 Beispiel Histogramm 2. Histogramme in der Datenbankoptimierung

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann Blatt Nr. 11 Übung zur Vorlesung Einsatz und Realisierung von Datenbanksystemen im SoSe15 Moritz Kaufmann (moritz.kaufmann@tum.de)

Mehr

dimag dimag Das Digitale Magazin des Landesarchivs Baden- Württemberg

dimag dimag Das Digitale Magazin des Landesarchivs Baden- Württemberg Das Digitale Magazin des Landesarchivs Baden- Württemberg Praxisnah entwickelt Mehrstufiges Prototyping Stetige Erprobung und Verbesserung im Pilotbetrieb Bisher übernommen Fachanwendungen (Datenbanken)

Mehr

Inhalt. 1. MySQL-Einführung 1. 2. Datenbankentwurf 27

Inhalt. 1. MySQL-Einführung 1. 2. Datenbankentwurf 27 Inhalt 1. MySQL-Einführung 1... 1.1 Geschichte von MySQL... 1 1.2 Entscheidungskriterien für MySQL... 2 1.3 Installation eines MySQL-Servers... 3 1.3.1 Linux... 5 1.3.2 Windows 9x/Me/NT/2000/XP... 7 1.3.3

Mehr

SOLISYON GMBH CHRISTIAN WOLF, BENJAMIN WEISSMAN. Optimierung von Abfragen in MS SQL Server DWH-Umgebungen

SOLISYON GMBH CHRISTIAN WOLF, BENJAMIN WEISSMAN. Optimierung von Abfragen in MS SQL Server DWH-Umgebungen WEITER BLICKEN. MEHR ERKENNEN. BESSER ENTSCHEIDEN. Optimierung von Abfragen in MS SQL Server DWH-Umgebungen SOLISYON GMBH CHRISTIAN WOLF, BENJAMIN WEISSMAN VERSION 1.0 OPTIMIERUNG VON ABFRAGEN IN MS SQL

Mehr

9. Einführung in Datenbanken

9. Einführung in Datenbanken 9. Einführung in Datenbanken 9.1 Motivation und einführendes Beispiel 9.2 Modellierungskonzepte der realen Welt 9.3 Anfragesprachen (Query Languages) 9.1 Motivation und einführendes Beispiel Datenbanken

Mehr