Dateipfade sind bei der Arbeit mit Daten inhärent zweifelhaft. Lets sagen, ich habe eine hypothetische Situation mit einem Programm namens find_brca
, und einige Daten mit dem Namen my.genome
und beide sind im /Users/Desktop/
Verzeichnis.Gibt es irgendwelche Dateisysteme, die keine Dateipfade verwenden?
find_brca
dauert ein einziges Argument, ein Genom, läuft für etwa 4 Stunden und gibt die Wahrscheinlichkeit, dass der einzelne Brustkrebs in ihrem Leben zu entwickeln. Manche Personen, die mit einer sehr hohen Wahrscheinlichkeit vorgestellt wurden, könnten dann sofort beide Brüste entfernt haben.
Offensichtlich ist es in diesem Szenario absolut entscheidend, dass /Users/Desktop/my.genome
tatsächlich das Genom enthält, von dem wir glauben, dass es das tut. Es gibt keine Täuschungen. "oops haben wir eine alte Version der Datei von einem früheren Backup verwendet" oder ein anderes technisches Problem ist für den Patienten nicht akzeptabel. Wie stellen wir sicher, dass wir die Datei analysieren, die wir analysieren?
Um die Sache schwieriger zu machen, lassen Sie uns auch behaupten, dass wir find_brca
selbst nicht ändern können, weil wir es nicht geschrieben haben, seine geschlossene Quelle, proprietär, was auch immer.
Man könnte denken, MD5 oder andere Verschlüsselungs Prüfsummen könnte zu Hilfe kommen kann, und während sie zu einem gewissen Grad helfen können, können Sie nur MD5 die Datei vor und/oder nach find_brca
ausgeführt werden, aber man kann nie wissen genau welche Daten find_brca
verwendet (ohne einige ernsthafte Low-Level-System-Sondierung mit DTrace/Ptrace, etc.).
Die Ursache des Problems besteht darin, dass Dateipfade keine 1: 1-Beziehung mit tatsächlichen Daten haben. Nur in einem Dateisystem, in dem Dateien nur durch ihre Prüfsumme angefordert werden können - und sobald die Daten geändert werden - wird die Prüfsumme geändert - können wir sicherstellen, dass, wenn wir find_brca
den Dateipfad des Genoms 4fded1464736e77865df232cbcb4cd19
füttern, wir tatsächlich das richtige Genom lesen.
Gibt es irgendwelche Dateisysteme, die so funktionieren? Wenn ich ein solches Dateisystem erstellen möchte, weil es derzeit keine gibt, wie würden Sie mir empfehlen, es zu tun?
Ich habe Probleme tis Frage zu verstehen. Also, das Problem ist, dass jemand "schlecht" die Datei ändern könnte? – dmeister
Ich habe es ein wenig vage gehalten, weil es viele Szenarien gibt, in denen der Dateipfad nicht auf die Daten zeigt, von denen Sie denken, dass sie dies tun. Korruption. Versehentliches/absichtliches Umschalten der Datei mit einem anderen, entweder als Race-Bedingung vor der Ausführung oder während der 4-Stunden-Laufzeit. Ältere Versionen aus Backups/etc. Denn am Ende des Tages, wenn Sie einem Programm einen Dateipfad zum Analysieren geben, geben Sie keine Garantie für die Daten am Ende dieses Pfades. In einem Dateisystem, in dem Sie nur Dateien auf Basis ihrer Prüfsumme und nicht durch einen beliebigen Namen anfordern können, ist keines dieser Probleme vorhanden. –