Komplexpraktikum DIPBench Computer Science Faculty, System Architecture, Database Technology Group Dresden, 14.11.2007.

Slides:



Advertisements
Ähnliche Präsentationen
Imperative Programmierung
Advertisements

Anzahl der ausgefüllten und eingesandten Fragebögen: 211
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Einführung in die Informatik: Programmierung und Software-Entwicklung
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Streuung Bezeichnung Streuung=Dispersion=Variabilität Fragestellung:
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Workshop zur Medienarbeit der katholischen Kirche Aspekte des Religionsmonitors Berlin, 02. April 2008.
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
Sortierverfahren Richard Göbel.
Java: Dynamische Datentypen
Sortierverfahren Richard Göbel.
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
SQL/XML. © Prof. T. Kudraß, HTWK Leipzig 2 2 Motivation Speicherung von XML in allen großen kommerziellen DBMS vorhanden proprietäre Lösungen für die.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Vererbung Spezialisierung von Klassen in JAVA möglich durch
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
PKJ 2005/1 Stefan Dissmann Klassenhierarchie Person Kunde Goldkunde Lieferant Object.
Betreuerin: Kathleen Jerchel
Schieferdeckarten Dach.ppt
Grundschutztools
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
Vorlesung Biometrie für Studierende der Veterinärmedizin Begriff der Zufallsgröße Ergebnisse von Zufallsexperimenten werden als Zahlen dargestellt:
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
SK / , , in Hochkössen und der Wildschönau flow Ski- und Snowboardschule Intersport Menzel.
TWS/Graph HORIZONT Produkt-Präsentation Software für Rechenzentren
Vergleich PPT 2002 / 2003 zu PPT 2007 Zunächst erscheint PPT 2002 / 03 - durch klicken auf kann dann der Vergleich zur Version 2007 aufgerufen werden.
TWS/Graph HORIZONT Produktionsüberwachung für “TWS for z/OS”
Syntaxanalyse Bottom-Up und LR(0)
Polynome und schnelle Fourier-Transformation
Versuch zur Messung der Geschwindigkeit
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Ganzheitliches Projekt-, Ressourcen- und Qualitätsmanagement 1 Reports und AddOns Auf den folgenden Seiten wird Ihnen die Funktionsweise der Reports und.
PROCAM Score Alter (Jahre)
NIN-Arbeitsblätter Paul-Emile Müller
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Symmetrische Blockchiffren DES – der Data Encryption Standard
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
SK / – in Hochkössen, St. Johann i.Tirol und Hochfügen flow Ski- und Snowboardschule Intersport Menzel.
PARTENARIAT ÉDUCATIF GRUNDTVIG PARTENARIAT ÉDUCATIF GRUNDTVIG REPERES KULTURELLER ZUSAMMENHALT UND AUSDEHNUNG DER IDEEN AUF EUROPÄISCHEM.
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
SQLite und XML in PHP 5.
1 (C) 2002, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz Wahrscheinlichkeitsverteilung Lernziele: Wahrscheinlichkeitsverteilung und der Wahrscheinlichkeitsdichte.
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
1 Mathematical Programming Nichtlineare Programmierung.
Technische Frage Technische Frage Bitte löse die folgende Gleichung:
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
Tutorium Statistik II Übung IV Philipp Schäpers Mi – 11.45
Sportverletzungen Fussgelenk-Tapeverband
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
Das IT - Informationssystem
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Monatsbericht Ausgleichsenergiemarkt Gas – November
 Präsentation transkript:

Komplexpraktikum DIPBench Computer Science Faculty, System Architecture, Database Technology Group Dresden,

TU Dresden, Komplexpraktikum DIPBenchFolie 2 von 58 Gliederung 01 Einführung 02 Vorstellung des Komplexpraktikums 03 Aufgaben und Ergebnisse Teil 1Katrin Braunschweig Teil 2 Dirk Alsfaßer Teil 3Romain Treboux 04 Zusammenfassung

TU Dresden, Komplexpraktikum DIPBenchFolie 3 von 58 Zeitraum: – (Blockpraktikum) Teilnehmer: Katrin Braunschweig Dirk Alsfaßer Romain Treboux Aufgabe: Erweiterung des DIPBench-Initializers 02 Komplexpraktikum DIPBench

TU Dresden, Komplexpraktikum DIPBenchFolie 4 von Komplexpraktikum DIPBench DIPBench Macro Architecture

TU Dresden, Komplexpraktikum DIPBenchFolie 5 von Komplexpraktikum DIPBench

TU Dresden, Komplexpraktikum DIPBenchFolie 6 von Komplexpraktikum DIPBench Initializer (alter Zustand)

TU Dresden, Komplexpraktikum DIPBenchFolie 7 von Komplexpraktikum DIPBench Aufgabenstellung Woche 1: Realisierung von verschiedenen Erweiterungen neue Konfigfurationsmöglichkeiten Ist/Soll Vergleich: Erhebung von Ist-Werten Platformunabhängigkeit: Anpassung von TORQUE Modelierung von Einschränkungen (Constraints) und Speicherung der Schemata als XML-Dateien Implementierung einer Verbindung zur CSV Dateien Einbindung einer Log-Funktionalität mithilfe des Frameworks Log4j Woche 2: Realisierung von Verteilungsfunktionen

TU Dresden, Komplexpraktikum DIPBenchFolie 8 von 58 Aufgabenstellung Woche 1: Realisierung von Verwaltungsfunktionalitäten Angabe von Dateneigenschaften mit SOLL/IST-Vergleich Erweiterung der Konfigurationsmöglichkeiten Woche 2: Realisierung von Verteilungsfunktionen Normalverteilung Poissonverteilung 03 Aufgaben und Ergebnisse

TU Dresden, Komplexpraktikum DIPBenchFolie 9 von 58 Angabe von Dateneigenschaften mit SOLL/IST-Vergleich Dateneigenschaften Anzahl unterschiedlicher Werte (selectivity) Prozentsatz an Nullwerten (zero_percentage) Parameter der Verteilungsfunktionen (mean, variance, skewness) Angabe in Metadaten (TableMetadata) Eingabe über KonstruktorsetDistributionParameters(…) keine AngabesetDefaultDistribution() Default-Werte: in Initializer.properties Verwaltungsfunktionalitäten

TU Dresden, Komplexpraktikum DIPBenchFolie 10 von 58 Angabe von Dateneigenschaften mit SOLL/IST-Vergleich Ausgabe des Ist-Zustandes in Log-Datei für verschiedene Connections (CSV, JDBC, XML) CSV: Ist-Zustand von Funktionsparametern wird dokumentiert JDBC: bisher nur selectivity XML: bisher noch nicht implementiert Verwaltungsfunktionalitäten

TU Dresden, Komplexpraktikum DIPBenchFolie 11 von 58 Erweiterung der Konfigurationsmöglichkeiten Konfigurationsmöglichkeiten batch processing + batch-size multiple concurrent connections number of concurrent tuplestreams tuplestream buffer size Verwaltungsfunktionalitäten

TU Dresden, Komplexpraktikum DIPBenchFolie 12 von 58 Normalverteilung und Poissonverteilung Funktionsverlauf sehr ähnlich nicht gemeinsam implementiert Verteilungsfunktion Normalverteilung kontinuierlich Schiefe ist immer 0 Poissonverteilung diskret (+ nur für pos. Werte definiert) Schiefe ist variabel

TU Dresden, Komplexpraktikum DIPBenchFolie 13 von 58 Normalverteilung (Gauß-Verteilung) Symmetrie Parameter Verteilungsfunktion

TU Dresden, Komplexpraktikum DIPBenchFolie 14 von 58 Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion

TU Dresden, Komplexpraktikum DIPBenchFolie 15 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 16 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 17 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 18 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 19 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 20 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 21 von 58 Verteilungsfunktion selectivity bestimmt das Intervall und die Standardabweichung bzw. Varianz cardinality gibt Gesamtanzahl an zu generierenden Werten an getProbability(position, index) liefert Wahr- scheinlichkeitswert nach Verteilungs- funktion Normalverteilung (Gauß-Verteilung) Allgemeine Umsetzung

TU Dresden, Komplexpraktikum DIPBenchFolie 22 von 58 Normalverteilung (Gauß-Verteilung) Datentypen-spezifische Umsetzung: - INTEGER / BIGINT siehe Vorgehensweise - DOUBLE / FLOAT Schrittweite 0,01, wie INTEGER, skaliert - CHAR / VARCHAR Spaltenname + INTEGER - BOOLEAN 50/50 (da Symmetrie) - DATE Referenzdatum = Mittelwert (mean), Berechnen der Tage nach Verteilungsfunktion range, value list - value list: Verteilung der Indizes nach Verteilungsfunktion. - range: Überprüfung, ob Werte innerhalb von Range liegen Verteilungsfunktion

TU Dresden, Komplexpraktikum DIPBenchFolie 23 von 58 Normalverteilung (Gauß-Verteilung) Probleme und Einschränkungen Rundungsfehler zu wenig unterschiedliche Werte – selectivity wird nicht erreicht selectivity bestimmt variance – Benutzereingabe wird ignoriert Open tasks Poissonverteilung anpassen Verbesserungsvorschläge evtl. Prioritäten der Parameter ändern (variance) Verteilungsfunktion

TU Dresden, Komplexpraktikum DIPBenchFolie 24 von Teil 2 Aufgabenstellung Woche 1: Realisierung von Verwaltungsfunktionen -Erweiterung der Metadaten um Constraints -Definition XML Schema für Tabellendefinition -Adaption der PlatformModels von Torque Woche 2: Realisierung der Verteilungsfunktion Logarithmische Normalverteilung

TU Dresden, Komplexpraktikum DIPBenchFolie 25 von 58 Erweiterung der Metadaten um Constraints

TU Dresden, Komplexpraktikum DIPBenchFolie 26 von 58 Erweiterung der Metadaten um Constraints

TU Dresden, Komplexpraktikum DIPBenchFolie 27 von 58 Definition XML Schema für Tabellendefinition

TU Dresden, Komplexpraktikum DIPBenchFolie 28 von 58 Adaption des PlatformModels von Torque Ziel : DBMS-Unabhängigkeit Verschiedene DBMS verwenden unterschiedliche Datentypen --> dies muß bei der Erzeugung der Tabellen berücksichtigt werden (wenn man DBMS-unabhängig sein will) --> mit Hilfe des PlatformModels von Torque werden beim Erstellen der Create Table-Statements die im Programm verwendeten Datentypen auf die entsprechenden Datentypen des Ziel-DBMS gemapped

TU Dresden, Komplexpraktikum DIPBenchFolie 29 von 58 Unterstützte DBMS - Axion - Cloudscape - DB2-AS400 - DB2 - Derby - HSQLDB (Hypersonic) - Interbase - MS Acces - MS SQL - MySQL - Oracle - PostgreSQL - SAP DB - Sybase

TU Dresden, Komplexpraktikum DIPBenchFolie 30 von 58 Realisierung der Verteilungsfunktion Logarithmische Normalverteilung Verteilungsdichtefuntion: Dichtefunktion der Lognormalverteilung (mit μ = 0)

TU Dresden, Komplexpraktikum DIPBenchFolie 31 von 58 Verteilungsfunktion Verteilungsfunktion der Lognormalverteilung (mit μ = 0)

TU Dresden, Komplexpraktikum DIPBenchFolie 32 von 58 Erste Idee: Umkehrung der Verteilungsfunktion

TU Dresden, Komplexpraktikum DIPBenchFolie 33 von 58 Nachteile / Gründe für das Verwerfen der ersten Idee -insbesondere bei kleineren Datenmengen können die erzeugten Daten (zum Teil stark) von der gewünschten Verteilung abweichen -(Pseudo-)Zufall überflüssig oder sogar hinderlich beim Erzeugen eines gewünschten Testdatensatzes

TU Dresden, Komplexpraktikum DIPBenchFolie 34 von 58 Umgesetzte Lösung -Berechnung der Anzahl der verschiedenen Werte aus Selektivität und Kardinalität -Einteilung des Wertebereichs in Intervalle -Schrittweise Abarbeitung von links nach rechts: an jeder Intervallgrenze wird berechnet, wieviele Exemplare des aktuellen Wertes (Intervallgrenze) gemäß der Warscheinlichkeit des Wertes erzeugt werden müssen

TU Dresden, Komplexpraktikum DIPBenchFolie 35 von 58 Beispiel Datentyp: Integer Wertebereich (Range): 0-10

TU Dresden, Komplexpraktikum DIPBenchFolie 36 von 58 Beispiel

TU Dresden, Komplexpraktikum DIPBenchFolie 37 von 58 Beispiel

TU Dresden, Komplexpraktikum DIPBenchFolie 38 von 58 Beispiel

TU Dresden, Komplexpraktikum DIPBenchFolie 39 von 58 Beispiel

TU Dresden, Komplexpraktikum DIPBenchFolie 40 von 58 Beispiel

TU Dresden, Komplexpraktikum DIPBenchFolie 41 von 58 Beispiel

TU Dresden, Komplexpraktikum DIPBenchFolie 42 von 58 Behandlung der verschiedenen Datentypen Integer + Bigint: s. Beispiel Float + Double: wie Integer, nur Intervallberechnung für reelle Zahlen angepasst Char + Varchar: Spaltenname + Integer Boolean: 50/50 (keine sinnvolle Anwendung der Verteilungsfunktion möglich) Date: Referenzdatum + x tage (x --> Bigint)

TU Dresden, Komplexpraktikum DIPBenchFolie 43 von 58 Probleme - Rundungsfehler - teilweise zu wenig unterschiedliche Werte (selectivity wird nicht erreicht)

TU Dresden, Komplexpraktikum DIPBenchFolie 44 von Teil 3 Aufgabenstellung Woche 1: Implementierung einer CSV Connection Verbindung zu einer CSV Datei Einbindung von Log4j Anpassung des Quellkode vom Initializer Woche 2: Implementierung der Zipfsche Verteilung und der Verteilung von Pareto

TU Dresden, Komplexpraktikum DIPBenchFolie 45 von 58 CSV Datei Verwendung der API OpenCSV ( au.com.bytecode.opencsv: A very simple CSV parser for Java released under a commercial-friendly license. im Projekt schon eingebunden wegen der Konfigurationsdateien einfache und gut dokumentierte Schnittstelle Ziel: Umsetzung einer ähnliche Funktionalität vie JDBCConnection (transparente Nützung von JDBC oder CSV)

TU Dresden, Komplexpraktikum DIPBenchFolie 46 von 58 CSV Datei: Schnittstelle

TU Dresden, Komplexpraktikum DIPBench Erhebung von IST-Werten Keine Anfragemöglichkeit Durchschnitt, Varianz, Schiefe werden on the fly ermittelt: ausgehend von (X 1,..., X i,... X n ) – X X i X n = 1 – X X i X n 2 = – X X i X n 3 = –Durchschnitt:m = 1 / n –Varianz:v = ( 2 / n) / n –Schiefe:s = ( 3 / n / n / n 3 ) / sqrt(v)

TU Dresden, Komplexpraktikum DIPBench CSV Datei: E/A Leistung Generierung von gleichverteilten Tupeln (f = 1)

TU Dresden, Komplexpraktikum DIPBench Log4j - Framework für eine leicht einstellbare Protokollierung Begriffe: Hierarchie von Loggers: 1 Logger für jeden Knoten der Klassenhierarchie Appender Konfiguration: –hartkodiert –mit einer XML-Datei –mit einer Properties-Datei Aufruf: getLogger() gibt eine Referenz über ein Logger zurück debug, info, warn, log Methoden

TU Dresden, Komplexpraktikum DIPBench Log4j – Konfigurationsdatei: Beispiel log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=(%-10r)[%-15t]%-5p %-20c{1} - %m%n log4j.appender.fileAppender=org.apache.log4j.FileAppender log4j.appender.fileAppender.File=log/demo.log log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout log4j.appender.fileAppender.layout.ConversionPattern=%d [%-10t] %-5p %c{2} %x - %m%n log4j.appender.null=org.apache.log4j.varia.NullAppender log4j.logger.org=DEBUG, null #log4j.logger.org.tud.dipbench.initializer.gen=INFO, console #log4j.logger.org.tud.dipbench.initializer.conn=INFO, console log4j.logger.org.tud.dipbench.initializer.gen.UniformDataGenerator=DEBUG, console log4j.logger.org.tud.dipbench.initializer.conn=INFO, console...

TU Dresden, Komplexpraktikum DIPBench Log4j – Konfigurationsdatei: Gliederung (1) log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=(%-10r)[%-15t]%-5p %-20c{1} - %m%n log4j.appender.fileAppender=org.apache.log4j.FileAppender log4j.appender.fileAppender.File=log/demo.log log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout log4j.appender.fileAppender.layout.ConversionPattern=%d [%-10t] %-5p %c{2} %x - %m%n log4j.appender.null=org.apache.log4j.varia.NullAppender log4j.logger.org=DEBUG, null #log4j.logger.org.tud.dipbench.initializer.gen=INFO, console #log4j.logger.org.tud.dipbench.initializer.conn=INFO, console log4j.logger.org.tud.dipbench.initializer.gen.UniformDataGenerator=DEBUG, console log4j.logger.org.tud.dipbench.initializer.conn=INFO, console

TU Dresden, Komplexpraktikum DIPBench Log4j – Konfigurationsdatei: Gliederung (2) log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=(%-10r)[%-15t]%-5p %-20c{1} - %m%n log4j.appender.fileAppender=org.apache.log4j.FileAppender log4j.appender.fileAppender.File=log/demo.log log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout log4j.appender.fileAppender.layout.ConversionPattern=%d [%-10t] %-5p %c{2} %x - %m%n log4j.appender.null=org.apache.log4j.varia.NullAppender log4j.logger.org=DEBUG, null #log4j.logger.org.tud.dipbench.initializer.gen=INFO, console #log4j.logger.org.tud.dipbench.initializer.conn=INFO, console log4j.logger.org.tud.dipbench.initializer.gen.UniformDataGenerator=DEBUG, console log4j.logger.org.tud.dipbench.initializer.conn=INFO, console

TU Dresden, Komplexpraktikum DIPBench Die Zipfsche Verteilung Diskrete Verteilung, Support: {1,..., N} f(n;k,N)= a(k,N) / k s Problem: –Kein einfacher Zusammenhang zwischen (k,N) und dem Durchschnitt / der Varianz –Es werden keine Werte sondern Indizes generiert m = H N,k-1 / H N,k wobei:

TU Dresden, Komplexpraktikum DIPBench Die Pareto Verteilung Kontinuerliche Verteilungsfunktion Dichtefunktion : Definitionsbereich: [x m, infinity [ Nützliche Gleichung (kumulative Dichtefunktion):

TU Dresden, Komplexpraktikum DIPBench Die Pareto Verteilung: Bestimmung von k und x m Grundlagen: m = k.x m / (k – 1) - (wenn k > 1) V = m 2. 1 / [(k – 2).k] – (wenn k > 2) Einschränkungen: Intervall [x m, x Max ] x Max / P(x > x Max ) ist klein (z.B < ) Vorgegebene Varianz V und Durchschnitt m Selektivität: Anzahl von generierten Werten

TU Dresden, Komplexpraktikum DIPBench Pareto: Prinzip der Generierung Anpassung der Schrittweite während der Generierung

TU Dresden, Komplexpraktikum DIPBench Pareto: Typkonvertierung Unterstütze Typen: double, float: wird natürlich von der Verteilung erzeugt integer, bigint: Rundung zur nächsten Ganzzahl enumeration: eine Ganzzahl wird generiert und den entsprechenden Wert wird ausgewählt boolean: zweiwertiges Set Date: Referenzdatum + Zeitspanne (Varianz und Durchschnitt in Tagen angegeben)

TU Dresden, Komplexpraktikum DIPBenchFolie 58 von 58 Zusammenfassung Initializer (aktueller Zustand)