Zum Inhalt springen

Project Voldemort

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 21. Oktober 2025 um 18:18 Uhr durch imported>Horst Gräbner (Änderungen von ~2025-68214-1 (Diskussion) auf die letzte Version von Mühlenkobold zurückgesetzt).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Project Voldemort

[[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]]
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler LinkedIn
Erscheinungsjahr 2009
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Cross-platform
Programmier­sprache Java
Kategorie Schlüssel-Werte-Datenbank
Lizenz Apache-Lizenz 2
http://www.project-voldemort.com/

Voldemort ist ein verteiltes Datenbankmanagementsystem, welches als persistente und fehlertolerante Schlüssel-Werte-Datenbank (Key Value Store) ausgerichtet ist und von LinkedIn als Hoch-Skalierbarkeits-Speicher eingesetzt wird.<ref name="Voldemort"> Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Voldemort is a distributed key-value storage system.] Project Voldemort - A distributed database, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 5. April 2011.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/project-voldemort.comVorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung </ref> Der Name wurde dem schurkischen Lord Voldemort aus der Romanreihe Harry Potter entlehnt. Voldemorts Entwicklung ist noch nicht abgeschlossen.<ref name="Comparison"> Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Comparison to relational databases.] Project Voldemort - A distributed database, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 5. April 2011.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/project-voldemort.comVorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung </ref> Der Erfinder von Voldemort und Hauptbeitragszahler des Unternehmens, LinkedIn, hat etwa im August 2018 alle seine Systeme von Voldemort migriert, und im Oktober 2018 gab es noch keinen Ersatzsponsor.<ref>Is voldemort db obsolete ? Abgerufen am 1. August 2023.</ref>

Vorteile

Voldemort bietet eine Anzahl von Vorteilen gegenüber anderen Datenbanken:<ref name="Comparison"/>

  • Sie kombiniert einen In-Memory-Cache mit dem Speichersystem, so dass ein separater Cache überflüssig ist. Das Speichersystem selbst ist entsprechend schnell.
  • Es ist möglich, die Speicherschicht zu emulieren. Das wiederum gestaltet die Entwicklung und das Testen von Komponenten sehr einfach, da gegen ein Wegwerf-In-Memory-System entwickelt und getestet werden kann. Es ist nicht notwendig einen echten Cluster oder echtes Speichersystem aufzusetzen.
  • Lesen und Schreiben skaliert horizontal.
  • Einfache Programmierschnittstelle: Die Programmierschnittstelle entscheidet über Daten-Replikation und Daten-Verteilung und bietet Platz für eine Vielzahl von anwendungsspezifischen Strategien.
  • Eine transparente Daten-Partitionierung gestattet die Cluster-Erweiterung ohne die Neuverteilung der gesamten Daten.

Nachteile

Voldemort bietet eine Anzahl von Nachteilen gegenüber anderen Datenbanken:

  • Beziehungen zwischen den Daten sind nicht abbildbar
  • Es existiert keine Abfragesprache, daher müssen Keys bekannt sein, um einen Value zu ermitteln
  • Es gibt keine Transaktionen und damit auch keine ACID-Eigenschaften
  • Das Projekt befindet sich noch in einer frühen Entwicklungsphase, der Einsatz in produktiven Systemen sollte daher gut abgewägt werden

Eigenschaften

Die verteilte Datenbank Voldemort besitzt folgende Eigenschaften:<ref name="Voldemort"/>

  • Daten-Verteilung: Es gibt eine Unterstützung plugbarer Daten-Verteilung-Strategien, um beispielsweise eine Aufteilung über weit entfernte Rechenzentren zu ermöglichen.
  • Daten-Replikation: Die Daten werden automatisch auf eine Vielzahl von Servern repliziert.
  • Daten-Partitionierung: Die Daten werden automatisch partitioniert, so dass der Server nur jeweils eine Teilmenge der gesamten Daten beinhaltet.
  • Gute Einfach-Knotenpunkt-Performanz: 10k-20k-Vorgänge pro Sekunde können ausgeführt werden, je nach Rechner, Netzwerk, Disk-System und Daten-Replikations-Faktor.
  • Eigenständige Knotenpunkte: Jeder Knotenpunkt ist unabhängig von anderen Knotenpunkten, ohne dass eine zentrale Koordination notwendig ist. Es gibt keinen Single Point of Failure.
  • Plugbare Serialisierung: Sie ermöglicht sowohl strukturierte Schlüssel und Werte einschließlich Listen und Tupel mit Namensfeldern als auch die Integration in allgemeine Serialisierungs-Frameworks. Beispiele für diese Frameworks sind Avro, Java-Serialisierung, Protokoll-Buffer und Thrift.
  • Transparente Fehlfunktionen: Server-Fehlfunktionen werden transparent gehandhabt, so dass Benutzer derlei Probleme nicht bemerken.
  • Versionierung: Die Daten sind versioniert, um die Datenintegrität im Falle einer Fehlfunktion zu maximieren, ohne die Verfügbarkeit des Systems einzuschränken.

Siehe auch

Einzelnachweise

<references/>

Weblinks