Advertisement

Informatik Forschung und Entwicklung

, Volume 19, Issue 1, pp 2–16 | Cite as

Datenbank-Caching - Eine systematische Analyse möglicher Verfahren

  • Theo HärderEmail author
  • Andreas Bühmann
Article

Zusammenfassung.

Caching ist ein bewährtes Mittel, um die Skalier- und Verfügbarkeit von Systemen zu steigern sowie die Latenzzeit für Benutzeranforderungen zu verkürzen. Im Gegensatz zum Web-Caching, bei dem einzelne Web-Objekte irgendwo längs ihres Aufrufpfades in der Proxy-Kette vorgehalten werden, setzt Datenbank-Caching „ausgewachsene“ Datenbanksysteme als Caches ein, um dort Satzmengen entfernter Datenbanken möglichst adaptiv verwalten und Anfragen darauf auswerten zu können. Verfahren dazu reichen von separat verwalteten materialisierten Sichten über überlappende, aber replikationsfrei gespeicherte Sichten bis hin zu Cache-Groups, in denen parametrisierte Cache-Constraints den Cache-Inhalt spezifizieren. Wir untersuchen anschaulich die verschiedenen Ansätze und ermitteln daraus eine Klassifikation, die den Lösungsraum zu enthüllen hilft. Im Mittelpunkt steht das Konzept der Prädikatsvollständigkeit: Ein Datenbank-Cache verwaltet vollständige Extensionen von Prädikaten, was ihm ermöglicht, Schlüsse über beantwortbare Anfragen zu ziehen.

Schlüsselwörter:

Datenbanksysteme Datenbank-Caching Anfrageverarbeitung Materialisierte Sichten Prädikatsvollständigkeit 

Abstract.

Caching is a proven means of enhancing scalability and availability of software systems as well as of reducing latency of user requests. In contrast to Web caching, where single Web objects are kept ready somewhere along their invocation path in the proxy chain, database caching uses full-fledged database management systems as caches to adaptively maintain sets of records from a remote database and to evaluate queries on them. This procedure can be achieved by a spectrum of techniques ranging from separate materialized views via overlapping, but „replication-free” stored views up to cache groups where parameterized cache constraints specify the contents of the cache. We explore different approaches in an illustrative way and, from the insights gained, we derive a classification scheme which helps to discover the solution space. The key concept for advanced techniques is predicate completeness: A database cache maintains complete extensions of predicates, which enables the system to draw conclusions about locally answerable queries.

Keywords:

Database systems database caching query processing materialized views predicate completeness 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin/Heidelberg 2004

Authors and Affiliations

  1. 1.Technische Universität KaiserslauternKaiserslautern

Personalised recommendations