Müllentsorgung

20 views
Skip to first unread message

Flyingmana

unread,
Aug 25, 2011, 9:22:50 AM8/25/11
to mini-sto...@googlegroups.com
Es wurde ja angemerkt, dass die Gefahr besteht, das Nodes zu müllen, wenn zum Beispiel ein Client weg fällt aber seine Daten noch im Grid sind.

Generell ein Thema was erst später Sinn macht, wenn wir überhaupt Daten im grid haben. =)
Aber man kann ja trotzdem schon mal Vorschläge dazu sammeln.

Meiner wäre, dass Nodes eine Art Ablaufdatum für sich an Daten heften.
Dieses ist für Clients abfragbar, und so kann man nach dem Wert auch entscheiden, wo man seine Datein hinterlassen will.
Um das löschen bei aktiven Nutzern zu verhindern, senden dort die Clients regelmäßig ein Auffrischungsbefehl an die Nodes um den Ablaufcounter zurückzusetzen.

Intelligentere Nodes könnten das Ablaufdatum sogar abhängig vom Nutzer setzen, wenn zum Beispiel jemand die Datein von sich und seinen Freunden länger vorhalten will. oder falls jemand ein kommerziellen Node betreiben will.

corvus

unread,
Aug 25, 2011, 2:14:51 PM8/25/11
to Mini-Storage-Grid
ich würde ein ablaufdatum eher als optionale angabe machen.
so kann ein client selber festlegen ob das file irgendwann automatisch
aus dem grid gelöscht werden soll und wenn ja zu welchem zeitpunkt.

ein ablaufdatum würde ich auch als festgelegtes datum machen (z.B.
lade ich die chunks heute (25.08.11 in das grid und will das sie nicht
länger als 12.09.11 verfügbar sind). denn wenn man ein zeitintervall
(z.B. 10 tage) setzt und der node verteilt den chunk ein paar tage
später weiter an andere nodes mit dem intervall ist der chunk länger
verfügbar als eigentlich gewollt! (außer der node ersetzt das
intervall mit einem datum)

auch sollte man bei einem ablaufdatum die verschiedenen zeitzonen
beachten denn server in verschiedenen zeitzonen würden dann evtl. die
chunks zu verschiedenen zeitpunkten löschen...
somit sollte das ablaufdatum z.B. in etwa so aussehen 19.09.2011 UTC

Sascha Ohms

unread,
Aug 25, 2011, 2:21:05 PM8/25/11
to mini-sto...@googlegroups.com
Man kann natürlich auch optional sowas eintragen. Wenn ein Node sagt, er speichert Daten NIE länger als z.B. 3 Monate, man eine Datei aber explizit länger behalten möchte, dann lädt man eben nicht zu diesem Node hoch. Kann man ja problemlos automatisieren.

Und das wir das Datum im Ganzen ausgeben ist ja auch klar. Also eben im Stil von date('r')

Sascha

MKuckert

unread,
Aug 25, 2011, 3:00:49 PM8/25/11
to Mini-Storage-Grid
Um das Speichern alter Dateien, die kein Client mehr anfordert, zu
verhindern, sollte jeder Chunk schon über ein Ablaufdatum verfügen.
Dieses kann ja gerne bei mehreren Monaten liegen, aber sonst gibt es
irgendwann "Chunkleichen", die sinnlos Speicher belegen. Weiter sollte
der Node ein Ablaufdatum für Chunks festlegen können und dieses dem
Client vor einem Upload mitteilen. So können zum Beispiel Nodes
speziell für den Transfer von Dateien mit einer Ablaufzeit von wenigen
Stunden aufgestellt werden.
Ein Node kann das Ablaufdatum für seine Chunks neu setzen lassen,
indem Nodes mit den Chunks darum gebeten werden. Die Nodes legen das
neue Ablaufdatum dann selbst fest - oder lehnen die
Speicherzeitverlängerung ab.

Alle Zeitstempel werden entweder in UTC oder eben mit
Zeitzoneninformation behaftet am Chunk abgelegt.
>  smime.p7s
> 5KAnzeigenHerunterladen

Flyingmana

unread,
Aug 25, 2011, 5:24:01 PM8/25/11
to mini-sto...@googlegroups.com
Ja, genau so habe ich mir das vorgestellt MKuckert, aber achte darauf besser im Text zwischen Client und Node zu trennen, du hast an mindestens einer Stelle Node statt Client geschrieben.

"Ein Node kann das Ablaufdatum für seine Chunks neu setzen lassen,
indem Nodes mit den Chunks darum gebeten werden."
sollte vermutlich
"Ein Client kann das Ablaufdatum für seine Chunks neu setzen lassen,
indem Nodes mit den Chunks darum gebeten werden."
heißen?

Markus

unread,
Aug 26, 2011, 5:43:29 AM8/26/11
to Mini-Storage-Grid
Ein Verfallsdatum ist bestimmt sinnvoll.

Da man das aber wohl eh nicht kontrollieren kann würde ich das eher
als Wunsch betrachten und den Nodes selbst überlassen sich daran zu
halten, auf häufig angefragte Daten, Daten in einem bestimmten Hash-
Bereich, bevorzugte Clienten oder whatever zu konzentrieren. So ein
Node hat ja auch nur begrenzten Platz. Sonst setzt das einfach böser
Client auf 10 Jahre und müllt trotzdem zu. ^^

Flyingmana

unread,
Aug 26, 2011, 10:58:33 AM8/26/11
to mini-sto...@googlegroups.com

deswegen:

Meiner wäre, dass Nodes eine Art Ablaufdatum für sich an Daten heften.
Dieses ist für Clients abfragbar, und so kann man nach dem Wert auch entscheiden, wo man seine Datein hinterlassen will.

Dabei dachte ich, dass Nodes ein maximales ablaufdatum besitzen, das abfragbar ist. Natürlich darf der Client auch um ein geringeres bitten.
Aber du hast recht, es ist primär eine Bitte von Client an Node.

MKuckert

unread,
Aug 26, 2011, 4:18:07 PM8/26/11
to Mini-Storage-Grid
Du hast natürlich recht, da habe ich in der Tat etwas falsches
aufgeschrieben. Du hast es aber richtig übersetzt ^^ Der Client bietet
den Node um ein Ablaufdatum, der Node entscheidet am Ende jedoch
selbst und teilt den gesetzten Wert mit.

Markus

unread,
Aug 29, 2011, 1:33:22 PM8/29/11
to Mini-Storage-Grid
Am besten wäre vor der Speicherung damit sich der Client (bzw. der
Master der was verteilen will?) vielleicht ein anderen Node suchen
kann? kA
Könnte der Node auch abhängig machen vom Grad des Vertrauens gegenüber
dem Clienten und so weiter.
Reply all
Reply to author
Forward
0 new messages