Scylla ist die Echtzeit-Big-Data-Datenbank, die API-kompatibel mit Apache Cassandra und Amazon DynamoDB ist. Scylla verfolgt einen Shared-Nothing-Ansatz, der den Durchsatz und die Speicherkapazität erhöht, um Leistungsverbesserungen in der Größenordnung zu erzielen und die Hardwarekosten zu senken.
Weitere Informationen finden Sie auf der ScyllaDB-Website.
Scylla ist ziemlich wählerisch in Bezug auf seine Build-Umgebung und erfordert zum Erstellen sehr aktuelle Versionen des C++23-Compilers und vieler Bibliotheken. Das Dokument HACKING.md enthält detaillierte Informationen zum Erstellen und Entwickeln von Scylla. Um Scylla jedoch schnell auf (fast) jeder Build-Maschine erstellen zu können, bietet Scylla eine eingefrorene Toolchain an. Dabei handelt es sich um ein vorkonfiguriertes Docker-Image, das aktuelle Versionen aller erforderlichen Komponenten enthält Compiler, Bibliotheken und Build-Tools. Durch die Verwendung der eingefrorenen Toolchain können Sie vermeiden, dass an Ihrer Build-Maschine irgendetwas geändert wird, um die Anforderungen von Scylla zu erfüllen – Sie müssen lediglich die Voraussetzungen der eingefrorenen Toolchain erfüllen (meistens ist Docker oder Podman verfügbar).
Das Erstellen von Scylla mit der eingefrorenen Toolchain dbuild
ist so einfach wie:
$ git submodule update --init --force --recursive
$ ./tools/toolchain/dbuild ./configure.py
$ ./tools/toolchain/dbuild ninja build/release/scylla
Weitere Informationen finden Sie unter:
Um den Scylla-Server zu starten, führen Sie Folgendes aus:
$ ./tools/toolchain/dbuild ./build/release/scylla --workdir tmp --smp 1 --developer-mode 1
Dadurch wird ein Scylla-Knoten mit einem ihm zugewiesenen CPU-Kern und im tmp
-Verzeichnis gespeicherten Datendateien gestartet. Der --developer-mode
wird benötigt, um die verschiedenen Prüfungen zu deaktivieren, die Scylla beim Start durchführt, um sicherzustellen, dass die Maschine für maximale Leistung konfiguriert ist (auf Entwicklungsarbeitsplätzen nicht relevant). Bitte beachten Sie, dass Sie Scylla mit dbuild
ausführen müssen, wenn Sie es mit der eingefrorenen Toolchain erstellt haben.
Für weitere Ausführungsoptionen führen Sie Folgendes aus:
$ ./tools/toolchain/dbuild ./build/release/scylla --help
Siehe test.py-Handbuch.
Standardmäßig ist Scylla mit Apache Cassandra und seiner API – CQL – kompatibel. Es gibt auch Unterstützung für die API von Amazon DynamoDB™, die zur Verwendung aktiviert und konfiguriert werden muss. Weitere Informationen zum Aktivieren der DynamoDB™-API in Scylla und zur aktuellen Kompatibilität dieser Funktion sowie Scylla-spezifischen Erweiterungen finden Sie unter Alternator und Erste Schritte mit Alternator.
Die Dokumentation finden Sie hier. Die Seastar-Dokumentation finden Sie hier. Die Benutzerdokumentation finden Sie hier.
Schulungsmaterialien und Online-Kurse finden Sie an der Scylla University. Die Kurse sind kostenlos, können im eigenen Tempo absolviert werden und enthalten praktische Beispiele. Sie decken eine Vielzahl von Themen ab, darunter Scylla-Datenmodellierung, Verwaltung, Architektur, grundlegende NoSQL-Konzepte, Verwendung von Treibern für die Anwendungsentwicklung, Scylla-Einrichtung, Failover, Komprimierungen, Multi-Rechenzentren und wie Scylla in Anwendungen von Drittanbietern integriert wird.
Wenn Sie einen Fehler melden oder einen Pull-Request oder einen Patch einreichen möchten, lesen Sie bitte die Beitragsrichtlinien.
Wenn Sie ein Entwickler sind, der an Scylla arbeitet, lesen Sie bitte die Entwicklerrichtlinien.