Self-Management Concepts for Relational Database Systems

2012 
Self-managing (or autonomic) databases are intended to reduce the total cost of ownership for a DBS by automatically adapting to evolving workloads and environments. To reach this goal, commercial database management systems (DBMS) have recently been equipped with self-management functions, which for example support the database administrator (DBA) in identifying the appropriate indexes or in sizing the memory areas. However, existing techniques suffer from several problems: First, they are often implemented as off-line tools that have to be explicitly triggered by a DBA. Second, they strictly focus on automating one particular administration task, without considering possible side-effects on other components. Third, their execution causes additional overhead for the DBS. Fourth, they follow best-effort approaches, which cannot be controlled by high-level goals (e.g. response time, throughput). This work presents an alternative solution to the problem of DBS self-management, which avoids the drawbacks of the existing self-management functions. Instead of extending a DBMS with a set of component-specific self-management functions, the developed solution is designed as one single self-management loop, which has a system-wide view on all configuration decisions. As long as the workload of the system does not change and the goals are met, this self-management loop only performs very light-weight monitoring operations on the workload, performance, and state information. For this purpose, several workload shift detection solutions are described and compared in this work. This work also comprises a workload classification solution, that groups similar workload events in order to further reduce the monitoring overhead. Furthermore, the workload information is analysed for cyclic patterns in order to predict upcoming workload shifts. Only when the system-wide self-management solution detects a workload shift or a violation of the goals, it performs a heavy-weight reconfiguration analysis. Given the current workload and state of the DBS, this reconfiguration analysis has to derive a new set of configuration parameter values that meet the goals in the best possible way. For this purpose the system-wide self-management solution employs a system model, which quantitatively describes the behaviour of the DBS using mathematical models. As creating a complete quantitative description of existing DBMS in a system model is a complex task, a graphical modelling approach (using the SysML modelling language) that supports the evolutionary refinement of models is used. At runtime, the system model is evaluated by the self-management logic using multi-objective optimization techniques, where the goal values are represented as constraints. With this approach the system-wide reconfiguration analysis is performed in a single step, allowing the immediate judgement of the side-effects on other components. Selbstverwaltende (oder autonome) Datenbanken sollen die Betriebskosten fur Datenbanksysteme (DBS) reduzieren, indem sie sich automatisch an veranderliche Lastcharakteristiken und Umgebungsbedingungen anpassen. Um dieses Ziel zu erreichen haben die Hersteller kommerzieller Datenbankverwaltungssysteme (DBVS) begonnen, ihre Produkte mit Selbstverwaltungsfunktionen auszustatten, die den Datenbankadministrator beispielsweise bei der Bestimmung geeigneter Indizes oder bei der Festlegung der Grosen verschiedener Hauptspeicherbereiche unterstutzen. Doch die existierenden Ansatze leiden heute noch an zahlreichen Problemen: Zunachst sind diese oft als Offline-Werkzeuge konzipiert, die manuell durch den DBA gestartet werden mussen. Auserdem fokussieren sich ihre Analysen oft auf eine einzige administrative Aufgabe oder DBS-Komponente. Mogliche Seiteneffekte auf andere Komponenten werden nicht berucksichtigt. Auch der zusatzliche Aufwand, der bei kontinuierlicher Ausfuhrung der Selbstverwaltungsfunktionen auf dem DBS entsteht, stellt ein Problem dar. Weiterhin kann keine der existierenden Selbstverwaltungsfunktionen Zielwerte fur die Antwortzeit oder den Durchsatz berucksichtigen. Diese Arbeit prasentiert eine alternative Losung fur die Selbstverwaltung von DBS, welche die Nachteile der existierenden Losungen vermeidet. Anstatt das DBVS mit einer Vielzahl komponenten-spezifischer Selbstverwaltungsfunktionen auszustatten ist das entwickelte Rahmenwerk als eine einzige zentrale Selbstverwaltungslogik konzipiert, die uber einen systemweiten Blick auf alle Konfigurationsentscheidungen verfugt. Solange sich die Lastcharakteristik des DBS nicht andert und die Zielvorgaben eingehalten werden, fuhrt diese Selbstverwaltungslogik nur sehr leichtgewichtige Uberwachungsfunktionen aus. Im Rahmen der Arbeit werden zu diesem Zweck verschiedene Techniken zur Erkennung von Anderungen in der Lastcharakteristik eines DBS vorgestellt und miteinander verglichen. Weiterhin wird eine Technik fur die Klassifikation von DBS-Anfragen beschrieben, die ahnliche Anfragen gruppiert und so den Uberwachungsaufwand reduziert. Es wird auserdem gezeigt, wie zyklische Anderungen an der Lastcharakteristik erkannt und vorhergesagt werden konnen. Nur wenn die systemweite Selbstverwaltungslogik eine Anderung der Lastcharakteristik oder eine Verletzung der Zielvorgaben erkennt fuhrt diese eine schwergewichtige Rekonfigurationsanalyse durch. Ausgehend von der derzeitigen Nutzung des DBS und dessen aktuellem Zustand bestimmt diese Rekonfigurationsanalyse neue Werte fur die DBS-Konfiguration, so dass dieses die Zielvorgaben so gut wie moglich erfullt. Hierfur greift die systemweite Selbstverwaltungslogik auf ein Systemmodell zuruck, welches das Verhalten des DBS in Abhangigkeit von dessen Konfigurationen mittels mathematischer Modelle quantitativ beschreibt. Die Erstellung einer vollstandigen quantitativen Beschreibung des DBS-Verhaltens ist jedoch eine komplexe Aufgabe. Daher wird in dieser Arbeit die Modellierungssprache (SysML) fur die Definition der Systemmodelle eingesetzt, die auf Grund ihrer graphischen Darstellung eine evolutionare Verfeinerung der Modelle erlaubt. Zur Laufzeit wird das Systemmodell von der systemweiten Selbstverwaltungslogik mittels mehrkriterieller Optimierungstechniken ausgewertet, wobei die Zielwerte als Randbedingungen definiert werden. Mit diesem Ansatz kann die Rekonfigurationsanalyse in einem einzigen Schritt durchgefuhrt werden, so dass mogliche Seiteneffekte einer Konfigurationsanderung unmittelbar berucksichtigt werden konnen.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    13
    References
    3
    Citations
    NaN
    KQI
    []