Cassandra ist ein einfaches, verteiltes Datenbankverwaltungssystem für sehr große strukturierte Daten (ein sogenanntes „NoSQL“-Datenbanksystem). Es ist auf hohe Skalierbarkeit und Ausfallsicherheit bei großen, verteilten Systemen ausgelegt. Die Daten werden in Schlüssel-Wert-Relationen abgelegt. Es ist offen dokumentiert und in Java implementiert. Die Implementierung wird als freie Software unter den Bedingungen von Version 2 der Apache-Lizenz verbreitet.
Cassandra
| |
---|---|
Basisdaten
| |
Entwickler | Apache Software Foundation |
Erscheinungsjahr | Juli 2008 |
Aktuelle Version | 4.0.6 25. August 2022 3.11.13 3.0.27 (LTS) |
Betriebssystem | plattformübergreifend |
Programmiersprache | Java |
Kategorie | Datenbankmanagementsystem |
Lizenz | Apache |
deutschsprachig | nein |
cassandra.apache.org |
Geschichte Bearbeiten
Cassandra wurde ursprünglich von Avinash Lakshman (einem der Autoren von Amazons Dynamo) und Prashant Malik bei Facebook für das dortige Inbox-Search-Problem entwickelt und im Juli 2008 freigegeben. Danach haben auch andere große Unternehmen wie IBM, Rackspace und Twitter zum Code beigetragen. Das Projekt wurde im März 2009 bei der Apache Software Foundation als Unterprojekt in den Apache Incubator aufgenommen. Am 17. Februar 2010 wurde Cassandra von der Apache Software Foundation zum „Top-Level“-Projekt erklärt und ist somit kein Unterprojekt von Apache Incubator mehr. Die am 2. Juni 2011 erschienene Version 0.8 führt die Cassandra Query Language (CQL) ein, eine Abfragesprache mit SQL-ähnlicher Syntax.
Konzept Bearbeiten
Cassandra ist eine spaltenorientierte NoSQL-Datenbank. Die Partitionierung erfolgt hingegen zeilenbasiert. Sie kann als Mischung aus Amazon Dynamo und Bigtable gesehen werden, da es leicht weiterentwickelt die Replikationsmechanismen von Dynamo nutzt, gleichzeitig aber nach außen die Datenstruktur von Bigtable anbietet.
Verwendung Bearbeiten
Cassandra wird bei Apple, Twitter, Digg, Spotify , Discord und Reddit genutzt. Auch bei Facebook bediente es bis Mitte 2011 hunderte Millionen von Mitgliedern (seit Juli 2011 ersetzt durch eine Kombination aus HBase, HDFS und Haystack). Cassandra ist die populärste spaltenorientierte NoSQL-Datenbank.
Haupteigenschaften Bearbeiten
Weblinks Bearbeiten
- Offizielle Website (englisch)
- Originalpaper, das Cassandra präsentiert (englisch) (PDF; 133 kB)
- Artikel über Cassandra von Jochen Schnelle in "Freies Magazin", Ausgabe 09/2011
- Artikel zu Cassandra von Merlin Walter in "Informatik Aktuell", 07. März 2023
- HBase vs Cassandra: why we moved – Dominic Williams (FightMyMonster.com): Blog-Eintrag mit Darstellung einiger Features von Cassandra (insb. gegenüber HBase)
Einzelnachweise Bearbeiten
- ↑ Downloading Cassandra. In: apache.org. Abgerufen am 25. August 2022 (englisch).
- Avinash Lakshman: Cassandra – A structured storage system on a P2P Network. In: Facebook. 25. August 2008, abgerufen am 17. August 2017 (englisch).
- (Memento vom 30. Januar 2011 im Internet Archive).
- Matthieu Riou: Cassandra is an Apache top level project. In: mail-archive.com. 18. Februar 2010, abgerufen am 13. März 2017 (englisch).
- ↑ Oliver Diedrich: NoSQL-Datenbank Cassandra in Version 0.8. In: Heise online. 6. Juni 2011, abgerufen am 11. März 2016.
- CloudKit: Structured Storage for Mobile Applications, Shraer u. a., Proceedings of the VLDB Endowment, Vol. 11, No. 5, 2018.
- (Memento vom 12. September 2009 im Internet Archive) (englisch).
- Gösta Forsum: Backend infrastructure at Spotify. In: Labs. 15. März 2013, abgerufen am 27. August 2019 (englisch).
- How Discord Stores Billions of Messages. Abgerufen am 2. Januar 2023.
- James Hamilton: Storage Infrastructure Behind Facebook Messages. In: mvdirona.com. Oktober 2011, abgerufen am 13. März 2017 (englisch).
- DB-Engines Ranking von Wide Column Stores
- Deploying Cassandra across Multiple Data Centers. In: DataStax. Abgerufen am 11. Dezember 2014.
- The CAP Theorem – Learn Cassandra. In: teddyma.gitbooks.io. Abgerufen am 13. Mai 2020.