Shadow Paging

Shadow Paging

Als Shadow Paging wird in der Informatik ein Verfahren bezeichnet, um in Datenbanksystemen die beiden ACID-Eigenschaften Atomarität und Dauerhaftigkeit zu unterstützen.

Eine Seite (Page) bezeichnet in diesem Kontext eine Einheit physischen Speicher (beispielsweise auf einer Festplatte), üblicherweise in der Größenordnung 210 bis 216 Bytes.

Shadow Paging ist ein Copy-On-Write-Verfahren, um in-place Updates auf Seiten zu vermeiden. Stattdessen wird, wenn eine Seite modifiziert werden soll, eine Shadow-Page allokiert. Da auf die Shadow-Page keine Referenzen (anderer Seiten) zeigen, kann sie beliebig modifiziert werden, ohne Konsistenzbedingungen zu verletzen etc. Wenn eine Seite dauerhaft (persistent) werden soll, werden alle Seiten, die sich auf das Original bezogen, aktualisiert, sodass sie sich stattdessen auf die neue Seite beziehen. Da die Seite nur "aktiviert" wird wenn sie bereit ist, verläuft der Vorgang atomar.

Wenn die bezugnehmenden Seiten auch mittels Shadow Paging aktualisiert werden müssen, kann sich dieser Vorgang rekursiv wiederholen, was recht kostspielig werden kann. Eine Lösung, die beim WAFL-Dateisystem zum Einsatz kommt ist, die Seiten nur soweit persistent zu machen, wie gerade nötig ist (d.h. write-behind caching). Dies erhöht die Leistung maßgeblich, da viele Schreibvorgänge auf Hotspots hoch oben in der referenziellen Hierarchie vermieden werden (z.B. dem Superblock eines Dateisystems). Der Preis ist eine hohe Verzögerungszeit beim Commit.

Write ahead logging ist eine beliebtere Lösung, welche in-place Updates verwendet.

Shadow Paging ähnelt der old master-new master Stapelverarbeitung die bei Datenbanken auf Großrechnern verwendet wird. Bei diesen Systemen wurde das Ergebnis jeder Stapelverarbeitung (u.U. ein Tag Arbeit) auf zwei separate Festplatten (oder andere Datenspeicher) geschrieben. Eine wurde zur Datensicherung aufbewahrt, die Andere wurde als Ausgangspunkt für die nächste Stapelverarbeitung verwendet.

Shadow Paging ähnelt rein funktionalen Datenstrukturen auch insofern, als in-place Updates vermieden werden.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Shadow paging — In computer science, shadow paging is a technique for providing atomicity and durability (two of the ACID properties) in database systems.A page in this context refers to a unit of physical storage (probably on a hard disk), of the order of… …   Wikipedia

  • Architecture of Btrieve — Btrieve is a database developed by Pervasive. The architecture of Btrieve has been designed with record management in mind. This means that Btrieve only deals with the underlying record creation, data retrieval, record updating and data deletion… …   Wikipedia

  • Btrieve — In computing, Btrieve is a transactional database product based on Indexed Sequential Access Method (ISAM), which is a way of storing data for fast retrieval. There have been several versions of the product for DOS, Linux, older versions of… …   Wikipedia

  • Btrieve — Btrieve  программный продукт (СУБД), для организации транзакционных (или «навигационных»[1]) баз данных. Основан на методе организации данных ISAM, обеспечивающем высокую скорость поиска и извлечения данных. Существовало несколько версий… …   Википедия

  • ACID — For other uses, see Acid (disambiguation). In computer science, ACID (atomicity, consistency, isolation, durability) is a set of properties that guarantee database transactions are processed reliably. In the context of databases, a single logical …   Wikipedia

  • Write ahead logging — In computer science, write ahead logging (WAL) is a family of techniques for providing atomicity and durability (two of the ACID properties) in database systems.In a system using WAL, all modifications are written to a log before they are applied …   Wikipedia

  • Polyhedra DBMS — Infobox Software name = Polyhedra DBMS caption = developer = ENEA AB released = 1993 latest release version = 8.0 latest release date = 4 July 2008 latest preview version = latest preview date = release location = operating system = Cross… …   Wikipedia

  • Транзакция — Не следует путать с трансакция. Транзакция (англ. transaction)  в информатике, группа последовательных операций, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно,… …   Википедия

  • Транзакция (информатика) — У этого термина существуют и другие значения, см. Транзакция (значения). Транзакция (англ. transaction)  группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может… …   Википедия

  • Business and Industry Review — ▪ 1999 Introduction Overview        Annual Average Rates of Growth of Manufacturing Output, 1980 97, Table Pattern of Output, 1994 97, Table Index Numbers of Production, Employment, and Productivity in Manufacturing Industries, Table (For Annual… …   Universalium

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”