Eine Semesterarbeit von Sebastian Galenski (2. Semester – WWI 00 B) SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter.

Slides:



Advertisements
Ähnliche Präsentationen
Juristische Implikationen täglicher Anwendungen Computer und Recht Seminar Januar 2000 Thomas Heymann.
Advertisements

Semesterarbeit von Dieter Lorenz, Sebastian Galenski, Stephan Bury
Universität Rostock Fakultät für Informatik und Elektrotechnik Institut für Informatik, Lehrstuhl DBIS Albert-Einstein-Straße 21, D Rostock Putbus,
Bannerarten, -techniken und ihr Einsatz
:33 Internet Applikationen – Hard und Softwareplattform Copyright ©2003, 2004 Christian Donner. Alle Rechte vorbehalten. Architektur Moderner.
Intelligente Server vs. Intelligente Cients Caching und Prefetching aus ökonomischer Sicht Sebastian F. Martin.
Schulungsziele Vorbereitung der Gliederung einer Rede
1 Prof. Dr. Andreas SchmietendorfWS06/07 – Labor C/S-Programmierung Übung 4 Mehrstufige Client/Server-Systeme mit JSPs, Servlets und JavaBeans (Web-Container)
Allgemeine Technologien II
Objektrelationales Mapping mit JPA
Fallstudie. 2 Statistik April Dokumente Jan Mio. Dokumente Performance 3 Mio. Queries pro Tag 9. Juni 2000 Most popular search engines.
Sebastian Galenski WWI 2000 B – 6. Semester Collaborative Marketing Konzepte Methoden Informationssysteme.
Business to Business Integration anhand von ERP-Systemen
Microsoft Windows 2000 Terminal Services
SendEplanung Datenbank
Wikimedia Informationstechnik Türker Yigitoglu, Sebastian Seider MT 7 / SS 2007.
MySQL Der Einstieg.
Oracle – XSQL in der Anwendung SIG Development (Tools) Oracle & XML Kassel, Thomas Matzke, HTWK Leipzig.
1 WS 2012 Software-Engineering II Aspektorientierung.
Webdesign und Datenbanken Nico Lange. Was soll das? Gute Gründe für Datenbanken.
Erhard Künzel für Info 9. Klasse: digitale-schule-bayern.de © Erhard Künzel.
Einführung und Überblick
Kabelmodem Powerline Alternativen
... und alles was dazugehört
ODBC (Open Database Connectivity)
Architektur und Funktionalitäten der Oracle XML DB - ein Überblick mit ausgewählten praktischen Beispielen - im Rahmen des 17. Workshop Grundlagen von.
MYSQL Von Rahan Bölzer.
Datenbanken Mehr als Tabellen.
Datenbanken Mehr als Tabellen. Datenbank Abfragen mit SQL: Eine Tabelle filtern Tabellen realer Datenbanken können sehr viele Informationen speichern:
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Web-Publishing mit Datenbanken Vergleich zwischen Skripting- Technologie und dem Einsatz von XML-Schnittstellen... Thorsten Rood © 03/2001 FernUni-Hagen.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 8 Folie 2 ASP.NET Zustandsverwaltung
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #10 Physische Datenorganisation.
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #9 Physische Datenorganisation.
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #5 Relationale Anfragesprachen.
WS 2013/14 Datenbanksysteme Fr 17:00 – 18:30 R Vorlesung #3 Das relationale Modell (Teil 2)
… und was man damit machen kann.
Einrichtung eines Data-Warehouse Servers
Einkünfte aus Gewerbebetrieb
Aggregatsfunktion SQL = Structured Query Language.
Von Isabelle Spörl und Simon Schausberger
Vorlesung #10 Physische Datenorganisation
BibControl in den Städtischen Bibliotheken Dresden
Microsoft Query installieren Herbers Excel-Server - der Workshop Angebote des Excel-Servers: Die Excel/VBA-Beispiele Die Excel/VBA-BeispieleDie Excel/VBA-BeispieleDie.
Open CourseWare Universität Zürich MIT. MIT Professors Propose a Costly Effort to Put All Course Materials Online US-Eliteuniversität öffnet Zugang zu.
Stundenplanung Programm zur Stunden- und Zimmerplanung auf der Basis von Datenbanken und unter Berücksichtigung von Mehrfachnutzung im (lokalen) Netz (Internet.
Webspace Stephan Herbst Christian Köhler. Themen des Vortrages Kurze Einführung ins Thema Kurze Einführung ins Thema Webspace - Was? Wozu? Wo? Wie? Webspace.
Was spricht für EMC für SQL?
Oracle – XSQL in der Anwendung Thomas Matzke, 99IN.
PHP und MYSQL am Normalformen SQL PHP und (My)SQL Historisch Kulturwissenschaftliche Informationsverarbeitung Sebastian Beyl Universit.
WINLearn Technische Umsetzung. Basistechnologie Oberfläche in HTML JSP (JavaServerPages) zur Datenauswertung Datenhaltung: Datenbank oder Filesystem JDBC.
Aufbau eines nationalen GBIF Knotens für Prokaryonten und Viren bei DSMZ Digitalisierung des Datenbestandes und Harmonisierung der Datenerhebung in Deutschen.
Architekturen und Techniken
Was steckt eigentlich hinter… SEO Jörg Friese/Marion Baum Werbeagentur Alpen-Gorillas
Mobile-Applikationen mit Agisviewer-Technologie Urs Richard, Stadtlandfluss.
DOAG Regionaltreffen Trier/Saarland Verwendung von TopLink in J2EE Applikationen 09. September 2003 Marcus Keuper, Pfeil GmbH
Erfahrungen mit TopLink in einem Projekt Performance-Aspekte von TopLink Auszug aus einer Diplomarbeit 5. Oktober 2016.
1 TopLink - flexible Persistenz im Oracle Application Server.
TOAD™ Die komplette Entwicklungs- und DBA- Lösung Cristian Maties.
Visualiserungskonzepte für Netzwerke (kritischer) Infrastruktur basierend auf existierenden Graphik-Engines für Computer-Games Im Rahmen unseres Forschungsschwerpunkts.
Begriffe Trees/Bäume Forests/Wälder Streams/Flüsse Pools/Sammelbecken
SQL Query Performance Monitoring und Analyse [DE]
Excel-Berichte erstellen und verteilen
Indexierung Oracle: indexes Indexierung.
Von Wietlisbach, Lenzin und Winter
System i – Daten als Excel-Berichte verteilen und mailen
Shopware Core Optimierung
Abfragestrategien in verteilten Systemen
Datenbanken
 Präsentation transkript:

eine Semesterarbeit von Sebastian Galenski (2. Semester – WWI 00 B) SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> Gliederung << 1.Queries – Was ist im folgenden mit Queries gemeint ? 2.Caching – Warum werden Queries gecached ? 3.Techniken 4.Caching auf dem local filesystem 5.Vergleich – mit / ohne dem hier vorgestellten Caching-Verfahren 6.Beispiel – aus der Praxis 7.Fazit – Schluss

1. Queries SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B Was ist im folgenden mit Queries gemeint ?

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 1. Queries << Ergebnismenge einer Datenbankabfrage Also die Ergebnistabelle, einer SQL-Abfrage aufgebaut wie eine normale Tabelle Entitätsmenge – also eine Ansammlung von Entitäten und deren Attribute

2. Caching SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B Warum werden Queries gecached ?

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 2. Caching << Bei hoch dynamischen Web-Seiten -> bis zu 15 SQL-Abfragen 3 Gründe um sich ein Caching der Queries zu überlegen: Der Datenbank Server ist entfernt Hoher Traffic Abfragen sind wiederkehrend, sie ändern sich zu bestimmten Zeiten bei einer Interaktion mit dem Redakteur / Admin Diese kosten hauptsächlich Zeit Performance-Gewinn bei der Generierung wird angestrebt

3. Techniken SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B

SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 3. Techniken << Es gibt zwei generelle Techniken: man kann sich auf den Datenbank-Server verlassen und auf dessen Caching hoffen man programmiert selbst ein Caching mit Hilfe des lokalen Filesystems

4. Caching auf dem local filesystem SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B

SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 4. Caching auf dem local filesystem << Die Theorie I: Vermittler zwischen Datenbank-Server und Webanwendung SQL-Abfrage und das Wissen über dessen Lifetime an das Cachemodul übergeben Identifier für den entsprechenden CacheFile Datenbankname und MD5-Prüfsumme über das SQL- Statement Datenbank : bzo_anzeigen Tabelle : testanzeigen SQL-Statement : SELECT * FROM testanzeigen Resultierender Cachefile : bzo_anzeigen_54a73ab c7d650745aea5992a.cache

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 4. Caching auf dem local filesystem << Die Theorie II: überprüft das Cachefile auf das Datum der letzten Änderung Falls die Lifetime abgelaufen ist: SQL-Abfrage an die Datenbank zurückkommende Ergebnisstabelle serialisieren Falls die Lifetime noch gültig ist: den Inhalt des Cachefiles deserializieren (wandelt den Fliesstext wieder in brauchbare Variablen um)

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 4. Caching auf dem local filesystem << Vorteile: es spielt keine Rolle mehr, ob der DB-Server auf der gleichen Maschine oder auf einer entfernte Maschine läuft viele Billigprovider bieten zu ihren Hostingangeboten keine Datenbank an. Kein Problem mehr, einfach die Webanwendung und den Cache dort ablegen und der Cache spielt für die Anwendung im Prinzip den Datenbank-Server

5. Vergleich SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B mit / ohne dem hier vorgestellten Caching-Verfahren

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 5. Vergleich <<

6. Beispiel SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B aus der Praxis

Sebastian Galenski - WWI 00 B SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 6. Beispiel << BZ-Online WebServer auf 3 NetBSD Maschinen im Cluster PHP MySQL entfernt aber im Cluster ohne das Caching: sec mit dem Caching: sec

7. Fazit – Schluss SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt Sebastian Galenski - WWI 00 B

SQL Query Result Caching Oder wie man häufig gestellte Datenbankabfragen performanter bekommt >> 7. Fazit – Schluss << Vielen Dank für Ihre Aufmerksamkeit Infos, Download der Cache-Klasse für PHP/MySQL und diese Präsentation finden Sie unter