Verteilter Datenspeicher für langsame Netzwerke mit hoher Knotenabwanderung?


0

Welchen verteilten Datenspeicher soll ich verwenden, um Daten zuverlässig über Knotengruppen mit schlechter Vernetzung zwischen ihnen zu speichern?

Ich möchte etwas, das:

  • Erwartet nicht, dass jetzt alle Knoten erreichbar sind, einschließlich der Unterstützung des Offline-Betriebs;
  • Speichern Sie die Daten zunächst lokal, verteilen Sie sie jedoch (wenn das Netzwerk gut ist und mehr Knoten online sind) an andere Knoten.
  • Haben Sie eine gute automatische Neuverteilung und Reparatur vor Knoten, wenn Sie dem Netzwerk beitreten und es verlassen.
  • Behandeln Sie Knoten, deren Kapazität sich stark unterscheidet, und speichern Sie nur kleine Objekte mit hoher Priorität auf kleinen Knoten.
  • Behandeln Sie den lokalen Knoten speziell: "Meine" Daten werden immer zuerst auf dem lokalen Knoten gespeichert und dann auf anderen Knoten gesichert.

Die meisten Lösungen wie Tahoe-LAFS oder GlusterFS scheinen einen mehr oder weniger stabilen Satz von Knoten zu erwarten, die online gehalten werden und mit einem guten Netzwerk verbunden sind, ohne dass längere Ausfallzeiten entstehen. Gibt es einen speziellen verteilten Speicher, der davon ausgeht, dass Knoten regelmäßig offline sind?


Ich glaube nicht, dass Sie irgendetwas finden werden, das Ausfallzeiten "erwartet". Das Beste, was Sie bekommen, sind diejenigen, die Ausfallzeiten durch ordnungsgemäßes Journaling und Parität umgehen können - und selbst diese haben Grenzen (und benötigen mehr Speicher, um die Ausfallzeit auf weitere Knoten auszudehnen). Aus welchem ​​Grund benötigen Sie "erwartete" Ausfallzeiten, die in Ihre Lösung integriert sind? Wäre es nicht der erste Schritt bei der Implementierung einer Lösung, den Grund für erwartete Ausfallzeiten zu beheben?
MaQleod

Zum Beispiel können aufgrund verschiedener Knoten normale PCs, Smartphones und Server sein. Zwischen Serverknoten sollte es mehr oder weniger wie bei herkömmlichen Grid-Speichern funktionieren. Auf einem Smartphone sollte es jedoch [quantitativ] anders funktionieren. Knoten, die offline sind, sollten auch etwas Nützliches tun, z. B. den dauerhaften Zugriff auf Daten mit kleinem, aber hohem Preis (die von allen Knoten im Netzwerk kopiert werden). Die Lagerung sollte sich nicht auf die Leistung konzentrieren, sondern auf die Zuverlässigkeit "mit schlechten Ziegeln und schlechtem Zement gebaut".
Vi.

Hinweis: "Offline" bedeutet hier "Betrieb, aber ohne Netzwerk". Im Offline-Modus sollte der Knoten Zugriff auf die Ressource haben, über die er lokal verfügt, und neue Daten akzeptieren, wobei diese Daten in das Netzwerk hochgeladen werden, wenn der Knoten schließlich online ist.
Vi.
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.