29
© Matthias Drobny 2006 Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge Aspekte und Werkzeuge der der Datenbankadministration Datenbankadministration und deren und deren Automatisierung Automatisierung Agent Building and Learning Environment (ABLE) & AutoTune agents

© Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

Embed Size (px)

Citation preview

Page 1: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

© Matthias Drobny 2006 Friedrich-Schiller-Universität Jena

Aspekte und Werkzeuge derAspekte und Werkzeuge derDatenbankadministration und Datenbankadministration und deren Automatisierungderen Automatisierung

Agent Building and Learning Environment (ABLE) & AutoTune agents

Page 2: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 2

Gliederung

1. ABLE Was bisher geschah... Warum Able? Was ist Able? Welche Struktur hat Able?

2. AutoTune Einleitung Arbeitsweise Probleme

Page 3: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 3

ABLEWas bisher geschah...

Entwicklungen bis hin zu ABLE roll-your-own-Ansätze bei nahezu jeder Umgebung

allgemeine Probleme Workloads, Heterogenität, Technik-Wandel

Page 4: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 4

ABLEWARUM überhaupt ABLE?

Probleme nicht durch "monolithische Software" zu lösen

inkrementelle Verbesserungen als Lösungsvorschlag schnell erlernbar, schnell erweiterbar gute

Wiederverwertbarkeit selbstüberwachend/selbstbewusst es ist von IBM, und daher potenziell ein Top-Produkt (zumindest laut der Autoren)

Page 5: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 5

ABLEWIE wurde ABLE umgesetzt?

Java/Java Beans leichte Portierbarkeit Objektorientierung Multithreading

Hard-/Software (Zielobjekt)

Sensoren Effektoren

ABLE Bean1

ABLE Bean2

ABLE Bean3

Page 6: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 6

ABLEWAS heißt ABLE?

A toolkit for building multiagent autonomic systems

A gent agentenbasiert, autonome Programme

B uilding and Entwicklungstools, Komponentenbibliothek

L earning selbstlernend, selbstbewusst

E nvironment Bereitstellung von fertigen Funktionen, einheitlicher Syntax,

Oberfläche

Page 7: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 7

ABLEArchitektur / Übersicht

ABLE agent framework AbleBeans sind JavaBeans

mit standardisierten Methoden • init(), reset(), ...

mit standardisierten Attributen• Name, Status, ...

AbleAgents sind AbleBeans, verbunden durch Datenflüsse (Data-flow connection)

Ereigniskopplungen (Event connection)

Eigenschaftskopplungen (Property connection)

Component Library vorgefertigte Algorithmen (natürlich als Beans)

GUI Erstellung und Konfiguration weiterer AbleBeans Erstellung und Test daraus erstellter AbleAgents

Page 8: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 8

ABLEABLE agent framework

AbleBean erledigen Kleinstaufgaben keine selbstständigen Agenten an die jeweilige Teilaufgabe angepasst

hoher Re-Use-Nutzen Beispiel: „Lies eine XML-Datei“

AbleAgent erfüllen „umfassende“ Aufgaben arbeiten selbstständig an die jeweilige Gesamtaufgabe

angepasst (durch Kombination angepasster Beans) sehr flexibles Modell

Beispiel: „erstelle ein Vorhersage-Modell für das Zielsystem“

AbleBean AbleAgent

AbleAgent

AbleAgents sind miteinander verbundene

AbleBeans/AbleAgents

Page 9: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 9

ABLEABLE agent framework

Eigenschaftskopplungen (Property connection)

Synchronisation zweier Beans Änderungen werden durchgereicht

Bean 1

Bean 2

Bean 3

Bean 1

Bean 2

gemeinsameEigenschaften

Bean 1[Ereignis]

Bean 2[Lauscher]

Ereigniskopplungen (Event connection)

großer Lauschangriff Beans werden von anderen überwacht, wenn ein Event

eintritt, reagiert der Lauscher (synchron oder asynchron)

3 Arten der Kommunikation der Beans untereinander Datenflüsse (Data-flow connection)

Output-Buffer1 = Input-Buffer2 Baumstruktur

Page 10: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 10

ABLEComponent Library: Data & Learning Beans

Data beans Datenimport/Datenexport Filterung

Learning beans Back propagation Self-Organizing Map Decision Tree Naïve Bayes

Page 11: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 11

ABLEComponent Library: Rule beans

eigene Sprache ABLE Rule Language (ARL) verschiedene Inferenzmaschinen problemlos

koppelbar, da alle die gleiche Sprache (und Regelbasis) verwenden

Boolean forward chaining Fuzzy forward chaining Pattern matching

Page 12: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 12

ABLEComponent Library: Funktionsspezifische AbleAgents

genetic search agent neural classifier agent neural clustering agent neural prediction agent

Page 13: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

© Matthias Drobny 2006 Friedrich-Schiller-Universität Jena

AutoTuneAutoTuneA Generic Agent for Automated Performance Tuning

Page 14: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 14

AutoTuneGliederung

1. Einleitung2. Problemstellungen3. Arbeitsweise4. Beispiele

Page 15: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 15

AutoTuneDie Vorgeschichte

praktischer Einsatz des ABLE frameworks Erstellung einer Serverüberwachung Informationsproblem

Beschaffung woher kommen die Daten

Verwendbarkeit sinnvolle Größen problemabbildend

Page 16: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 16

AutoTuneProblemstellungen

„Was soll erreicht werden?“ 3 P‘s der Informatik (Performance, Performance, Performance)

Was ist messbar? Was ist beeinflussbar?“ Anzahl verbundener Nutzer (externe Größe) vs. Anzahl max.

Sessions (dynamisch änderbar) Session-Dauer vs. Max. Session-Dauer (Keep-alive)

„Wie lernt der AutoTune-Controller die optimalen Reaktionen“ Neuronales Netz mit „ausreichenden“ Inputdaten (ausreichende

Bandbreite, Variationen) oder Simulation der Inputs (Sinusschwankungen) und Tests

Page 17: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 17

AutoTuneArbeitsweise

AutoTune Agent

Controlled Target

Administrator

Workload metrics

Service level metrics

Tuning Control settings

Workload

Service objectives

End Users

ServiceIndicators of effectiveness of controller

Configuration metrics

Page 18: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 18

AutoTuneBeispiel-Architektur: Lotus Notes Server ®

AutoTune besteht aus 3 AbleAgents1. dem „Lauscher“

überwacht den Server liefert Performance-Daten setzt die neuen Konfigurationsparameter

2. dem „Lerner“ erlernt das Systemmodell (wird bei konstantem System nur einmal

genutzt) optimal: mathematisches Modell des Zielsystems... normal: grobe Annäherung, Fehlerverringerung, Schätzung

3. dem „Vorhersager“ verarbeitet die Inputdaten zu neuen Konfigurationsparametern

Page 19: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 19

AutoTuneBeispiel-Architektur: Lotus Notes Server ®

Administrator

get Notes perf data

set Notesparameters

workload/controls and actual perf

controls

Neural System Model

Neural Controller

controls workload

desired perf

controlsworkload

predicted perf

controls (for training)backprop

NotesAdaptorBean

NotesServer

Page 20: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 20

AutoTuneBeispiel-Architektur: Apache Web Server ®

erneut dreiteilig Controller Design Agent

berechnet die neuen Parameter

Modeling Agent math. Modell oder

Näherung durch Simulation Run-Time Control Agent

verarbeitet die Parameter und die Wunschvorstellung des Systemadministrators

Page 21: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 21

AutoTuneLaufzeitbeispiel/Diagramme mit Controller ohne Controller

Page 22: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 22

The End

Sach-, Geldspenden und Jobangebote bitte direkt bei mir einreichen

Page 23: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 23

Input-Schich

t

Output-Schicht

verdeckte Schicht

ABLE: (Zusatzfolien)Back propagation

Anlegen eines Eingabemusters Vorwärtspropagierung (normale

Berechnung) Vergleich von Zieloutput und

berechnetem Wert Differenz ist „Fehler des Netzes“

Anpassung der Neuronengewichte abhängig vom Einfluss auf Fehler

G: 1

F: 0.8

G: 0.5

F: 0.2

Page 24: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 24

ABLE: (Zusatzfolien)Self-organizing maps/SOM/Kohonenkarte

Teilart der Neuronalen Netze

unüberwachtes Lernverfahren (Clustering)

Projektion von multidimensionalen Einflüssen auf Ebene (für besseres menschliches Verständnis)

Page 25: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 25

ABLE: (Zusatzfolien)Decision Trees

spezielle Darstellungsformen von Entscheidungsregeln

aufeinanderfolgende, hierarchische Entscheidungen

schwieriger Überblick bei großen Bäumen Pruning

Kombination mit Neuronalen Netzen möglichTBNN (Tree-Based Neural Network)

Page 26: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 26

ABLE: (Zusatzfolien)Naïve Bayes

Entscheidung anhand anderer Fakten Berechnung einer Wahrscheinlichkeit aus anderen

Wahrscheinlichkeiten Unabhängigkeitsannahme zwischen den

Ereignissen

Page 27: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 27

ABLE: (Zusatzfolien)Forward chaining

Boolean forward chaining Standardfall entweder A oder B (oder C) „crispe“ Menge

Fuzzy forward chaining wenn A, dann fuzzy B keine klare Aussage, sondern

„sprechende Variable“ unscharfe Menge

sehr einfache Regelbasis Fakt + Regel neuer Fakt (+ Regel neuer Fakt...)

Page 28: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 28

ABLE: (Zusatzfolien)Pattern matching

Mustervergleich, keine Mustererkennung typischerweise (bei Textverarbeitungsprogrammen) durch

reguläre Ausdrücke (Me_er) Formbasiertes Matching (Shape-based)

Suche nach Kanten echtzeit-tauglich robust

Komponentenbasierte Matching (Component-based) zusammengehörige Teile werden erkannt

Page 29: © Matthias Drobny 2006Friedrich-Schiller-Universität Jena Aspekte und Werkzeuge der Datenbankadministration und deren Automatisierung Agent Building and

26.04.23 15:05 © Matthias Drobny 2006 29

ABLE: (Zusatzfolien) neural prediction agent - Beispiel

Beispiel (Bild) Figure 8 Nutzer legt fest:

Datenquelle Trainingsdauer, ...

einmaliges Training, danach synchrone Berechnungen

bei Überwachung von Systemänderungen automatische Rekonfiguration