Skip to main content

Mehrbenutzerbetrieb

  • Chapter
  • First Online:
Relationale Datenbanken

Part of the book series: eXamen.press ((EXAMEN))

  • 8342 Accesses

Zusammenfassung

Bestimmte Folgen von Datenbankanweisungen müssen als eine Einheit ausgeführt werden. Eine solche Einheit nennen wir Transaktion. In diesem Kapitel führen wir das Transaktionsmodell ACID ein und zeigen wie Transaktionen in SQL behandelt werden.Theoretisch sollten parallel ausgeführte Transaktionen einander nicht beeinflussen, d. h. sie werden isoliert ausgeführt. In der Praxis wird diese Bedingung aus Performance-Gründen jedoch gelockert. Wir studieren die verschiedenen Isolationsgrade, welche SQL anbietet. Dazu betrachten wir drei Phänomene, die bei der parallelen Transaktionsverarbeitung auftreten können: Dirty Reads, Non-repeatable Reads und Phantom Reads.Wir zeigen auch, wie PostgreSQL die verschiedenen Isolationsgrade mittels einer Multiversion Concurrency Control (MVCC) Architektur implementiert. Bei diesem Ansatz werden für jedes Tupel mehrere Versionen abgespeichert und eine Sichtbarkeitsbedingung definiert, welche Transaktion welche Version eines Tupels sieht.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 19.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    aus src/backend/utils/time/tqual.c

  2. 2.

    Im SQL Standard [1] werden vier verschiedene Isolationsgrade definiert. Die PostgreSQL Dokumentation [4] beschreibt, wie diese Isolationsgrade in PostgreSQL mittels der Multiversion Concurrency Control Architektur realisiert werden. Serializable Snapshot Isolation ist ein relativ neues Feature von PostgreSQL. Die Funktionsweise und Implementierung dieses Isolationsgrades wird detailiert ausgeführt in [3]. Weitere Beispiele zur parallelen Transaktionsverarbeitung unter verschiedenen Isolationsgraden finden sich in [2].

Weiterführende Literatur

  1. ANSI: Database language SQL (2011). Dokument X3.135–2011

    Google Scholar 

  2. Hartwig, J.: PostgreSQL professionell und praxisnah. Addison-Wesley, München/Boston (2001)

    Google Scholar 

  3. Ports, D.R.K., Grittner, K.: Serializable snapshot isolation in postgresql. Proc. VLDB Endow. 5(12), 1850–1861 (2012). doi:10.14778/2367502.2367523

    Google Scholar 

  4. The PostgreSQL Global Development Group: Postgresql documentation, concurrency control (2015). http://www.postgresql.org/docs/9.4/interactive/mvcc.html

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Studer, T. (2016). Mehrbenutzerbetrieb. In: Relationale Datenbanken. eXamen.press. Springer Vieweg, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-46571-4_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-46571-4_8

  • Published:

  • Publisher Name: Springer Vieweg, Berlin, Heidelberg

  • Print ISBN: 978-3-662-46570-7

  • Online ISBN: 978-3-662-46571-4

  • eBook Packages: Computer Science and Engineering (German Language)

Publish with us

Policies and ethics