Das Dingo-Store-Projekt ist ein verteiltes KV-Speichersystem, das auf mehreren Raft-Replikationsgruppen basiert, die auch die Ausladungsfunktionen der Speicherschichtberechnung bietet. Der obere Layer-Service dieses Projekts basiert auf SQL und kann auch hochfrequente Servierfunktionen basierend auf KV bereitstellen. Die Gesamtarchitektur des Projekts lautet wie folgt:

Der Speichercluster in Dingodb, Dingo-Store, enthält die folgenden Rollen:
Der Koordinator dient als zentrale Metadatenmanagementkomponente für den gesamten DingoDB -Cluster unter Verwendung des Raft -Konsensprotokolls. Es behält die Metadaten zur Datenverteilung und die Gesamttopologie des DingoDB -Clusters bei. Der Koordinator wird oft als "das Gehirn" des DingoDB -Systems bezeichnet und hält nicht nur die Metadaten des Clusters, sondern überwacht auch die Ressourcenzuweisung. Für Robustheit und hohe Verfügbarkeit arbeitet der Koordinator mit mindestens drei Knoten. Eine ungerade Anzahl von Koordinatorknoten wird für eine optimale Bereitstellung empfohlen.
Dingo-Store bietet einen Multi-Replica-Mechanismus an, der auf dem RAFT-Protokoll basiert und die Datenkonsistenz sicherstellt. Es bietet auch Funktionen wie Protokollreplikation, Leiterwahlen, Migration der Floßgruppen, Snapshot -Installation und automatische Aufteilung auf der Grundlage der Datengröße. Darüber hinaus zeichnen Dingo-Store alle Geschäftsdatenmodelle auf ein Schlüsselwertdatenmodell und liefern nahtlose Hochfrequenz-Schlüsselwert-Read-Write-Funktionen. Beispielsweise transformiert es Tabellenmodelle und Indexmodelle vollständig in KV -Darstellungen.
Dingo-Index ist eine spezielle Version von Dingo-Store. Es bietet nicht nur verteilte Datenspeicherfunktionen, sondern stellt auch die Echtzeitkonstruktion hochdimensionaler Vektordaten und deren Indexierung sicher. Es bietet umfangreiche Suchfunktionen in hochdimensionalen Räumen. Das System unterstützt Vektorindexformate wie HNSW und IVF.
Willkommen bei Dingodb. Die Dokumentation von DingoDB befindet sich auf der Website: https://dingodb.readthedocs.io. Die Hauptprojekte über Dingodb sind wie folgt:
Dingo-Store ist ein hybrides Projekt von C ++ und Java, bei dem C ++ verteilte Speicher- und Rechenfunktionen bietet, während die Java-Schicht grundlegende API-Schnittstellen bietet.
git submodule sync --recursive
git submodule update --init --recursive
mkdir build && cd build
# Release
cmake -DCMAKE_BUILD_TYPE=Release -DTHIRD_PARTY_BUILD_TYPE=Release -DDINGO_BUILD_STATIC=ON -DBUILD_UNIT_TESTS=OFF ..
# Debug
cmake -DCMAKE_BUILD_TYPE=Debug -DTHIRD_PARTY_BUILD_TYPE=Debug -DDINGO_BUILD_STATIC=ON -DBUILD_UNIT_TESTS=ON ..
# RelWithDebInfo
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHIRD_PARTY_BUILD_TYPE=RelWithDebInfo -DDINGO_BUILD_STATIC=ON -DBUILD_UNIT_TESTS=ON ..
make cd java && mvn clean package - DskipTests Weitere detailliertere Informationen finden Sie unter: Leitfaden für den Beitragsführer
Dingo-Store ist ein Open-Source-Projekt, das in Apache Lizenzversion 2.0 lizenziert ist und alle Feedback der Community begrüßen. Für Unterstützung oder Vorschläge kontaktieren Sie uns bitte.
