1 / 24

Scheduling und Speicherverwaltung

Integriertes Seminar Datenbanken und Informationssysteme im Sommersemester 2005. Scheduling und Speicherverwaltung. Bearbeiter: Jörg von Blon. 08.07.2005. Inhalt des Seminars. Vorstellung des Problembereichs Lösungsansätze verschiedener Systeme STREAM PIPES AURORA

daire
Download Presentation

Scheduling und Speicherverwaltung

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Integriertes Seminar Datenbanken und Informationssysteme im Sommersemester 2005 Scheduling und Speicherverwaltung Bearbeiter: Jörg von Blon 08.07.2005

  2. Inhalt des Seminars • Vorstellung des Problembereichs • Lösungsansätze verschiedener Systeme • STREAM • PIPES • AURORA • Bewertung und Ausblick Scheduling und Speicherverwaltung

  3. Charakteristische Merkmale der Datenstromverarbeitung • kontinuierliche Anfragen • aktive Datenbestände • Online-Verarbeitung • potentiell unbegrenzte Größe der DS • sequentieller Zugriff • blockierende Operatoren Scheduling und Speicherverwaltung

  4. Problembereich: Speicher • Fenstersemantik erforderlich • Ad-hoc-Anfragen • Approximation häufig erforderlich • Load Shedding • Reduktion der Fenstergröße • Sampling • .... • Adaptive Systeme erforderlich Scheduling und Speicherverwaltung

  5. Problembereich: Scheduling • Was versteht man unter Scheduling ? • Scheduling nach zwei Aspekten: • Lastreduktion • Qualität • Zusatz bei DSMS : Dienstgüte beachten • naheliegende Scheduling-Konzepte: • Graph Threaded Scheduling (GTS) • Operator Threaded Scheduling (OTS) • Problem: Strategie arbeitet niemals speicheroptimalNP-Vollständigkeit Scheduling und Speicherverwaltung

  6. Beispiel: FIFO vs. GREEDY • einfacher Anfrageplan mit zwei Operatoren • Welche Ziele verfolgen FIFO/GREEDY ? • Welche Vor-, bzw. Nachteile besitzen die Strategien ? • Ankunft von n Tupeln pro Zeiteinheit • Reduktion um 80% an Operator 1 • Reduktion um 20% an Operator 2 Scheduling und Speicherverwaltung

  7. Beispiel: FIFO vs. GREEDY FIFO Op 1 Op2 n-Tupel Ausgabe 0,2n Tupel Greedy Op 1 Op 2 n-Tupel 0,2n Tupel Ausgabe Scheduling und Speicherverwaltung

  8. Beispiel: FIFO vs. GREEDY FIFO Op 1 Op2 n-Tupel n-Tupel Ausgabe Greedy Op 1 Op 2 n-Tupel Ausgabe 0,4n Tupel Scheduling und Speicherverwaltung

  9. STREAM-Architektur STREAM • Interaktive Benutzerschnittstelle • Datenstromdarstellung: (Tupel,Zeitstempel) • Registrierung von Anfragen über CQL • mögliche Überlappungen identifizieren • Komponenten: • Anfrageoperatoren • Zwischenwarteschlangen • Synopsen • Scheduler Scheduling und Speicherverwaltung

  10. Chain Scheduling STREAM • annährend speicheroptimale Strategie • verbraucht selbst wenige Ressourcen • Progress Charts als Grundlage • Darstellung der Tupelverarbeitung in Progress Charts • Aufstellen des Verarbeitungsgraphen anhand n+1 Operatorpunkte Scheduling und Speicherverwaltung

  11. Generierung der Progress Charts STREAM • Punkte repräsentieren Verarbeitungszeit und Selektivität • Erstellung der inneren Hülle • Strategie: Die Operatoren mit der betragsmäßig größten Steigung bezüglich der inneren Hülle werden ausgeführt. • Auswahl der steilsten SegmenteGreedy • Innerhalb der SegmenteFIFO Scheduling und Speicherverwaltung

  12. Ausweitung auf mehrere parallele Anfragen STREAM • Überlappende Anfragen bilden einen DAG • Aufspaltung in Operatorketten • Problem: Bei Joins sind Ketten abhängig von anderen Ketten • Blockade der korrespondierenden Kette Scheduling und Speicherverwaltung

  13. Modifikation des Chain-Verfahrens STREAM • Notwendigkeit wegen Aushungerns von Operatoren in flachen Segmenten • Einführung des Mixed-Algorithmus • Benutzer definiert Schwellenwert für Steigung • Segmente unterhalb dieses Wertes werden zusammengefasst • Neues Segment ist ausgeglichener Experimentelle Auswertung der Strategien Chain, FIFO, Mixed mit verschiedenen Schwellenwerten Scheduling und Speicherverwaltung

  14. Modifikation des Chain-Verfahrens STREAM Schwellenwert für Steigung CHAIN MIXED Scheduling und Speicherverwaltung

  15. PIPES PIPES-Architektur • Typen von Knoten: Quellen, Operatoren, Senken • zentrale Komponenten: Ablaufsteuerung, Optimierer, Speichermanager Scheduling und Speicherverwaltung

  16. Kombination der Techniken GTS/OTS dreischichtiges Verfahren DI Thread-Zusammensetzung TS implizites Scheduling: direct interoperability(DI) PIPES-Scheduling-Konzept aufbauend auf Thread-Verwaltung in Java PIPES Hybrid Multi Threaded Scheduling (HMTS) Scheduling und Speicherverwaltung

  17. suboptimales Ergebnis von GTS minimaler Speicherverbrauch und kürzere Latenzzeit bei HMTS PIPES HMTS vs. GTS • Vor- und Nachteile • von HMTS ? • Was ist nun • problematisch • an HMTS ? Anzahl Resultate Puffer Größe Zeit in Sekunden Scheduling und Speicherverwaltung

  18. AURORA-Architektur AURORA • Anfrageverarbeitung mit Hilfe des boxes-and-arrows-Prinzips • Scheduling anhand definierter Werte für die Dienstgüte • Architektur begrenzt auf Stromverarbeitung • Connection Points machen Arbeit auf historischen Daten möglich Scheduling und Speicherverwaltung

  19. Zwei-Phasen-Scheduling AURORA • Scheduling wird in zwei Phasen durchgeführt • Phase 1: Entscheidung, welche Anfrage bearbeitet wird • Phase 2: Abarbeitungsreihenfolge der Operatoren • Kombination von Techniken, wie Operator Batching und Tupel Batching Scheduling und Speicherverwaltung

  20. Operator Batching AURORA • entspricht in PIPES vorgestellter Technik DI • Nutzen: geringer Scheduling Overhead durch implizites Scheduling • Zusammenschluss an Operatoren = Superbox • Definition der Superboxes statisch • Durchlauf der Superboxes (Traversierung) anhand spezieller Kriterien: • Min-Cost • Min-Latency • Min-Memory Scheduling und Speicherverwaltung

  21. Min-Cost Traversierung AURORA • Annahme: • An jedem Operator wartet ein Tupel • Jeder Operator besitzt eine Selektivität Eins • Umordnung in Post-Ordnung innerhalb der Superbox • Minimierung der Bearbeitungskosten pro Tupel durch Minimierung der Operatoraufrufe • Traversierung : b4b5b3b2b6b1 • Kosten: • 6 Operatoraufrufe • 15 Zeiteinheiten zum Abarbeiten aller Tupel Scheduling und Speicherverwaltung

  22. QoS-gesteuertes Scheduling AURORA • Ermittlung von Prioritäten für Operatoren durch ein 2-Tupel (Nutzen, Dringlichkeit) • Wie sind die Werte des 2-Tupels definiert ? • Aufteilung der beiden Werte in sogenannte Buckets schon vor Anlauf des Programms Scheduling und Speicherverwaltung

  23. Bucket-Einteilung AURORA • Für die Zuteilung von Operatoren zu Buckets sind zwei Hilfstabellen notwendig: • Gradient-Latency-Graph • Slack-Latency-Graph • Benutzer bestimmt • Schwellenwerte für Zuordnung • Buckets sind Maß • für Abstraktionsgrad • Komplexität: O(n) Scheduling und Speicherverwaltung

  24. Fazit und Ausblick • Versuchsbedingungen sind in der Realität oftmals nicht gegeben • Es existieren noch keine Systeme, welche optimale Ergebnisse für die verschiedensten Anwendungen und Lastsituationen liefern • Approximationstechniken sind unbedingt notwendig, um in Zeiten hoher Last die Beantwortung zu ermöglichen • Momentane Forschungsarbeiten befassen sich mit der Entwicklung möglichst intelligenter Scheduler und Speichermanager Scheduling und Speicherverwaltung

More Related