Ich bin neu in BTRFS und versuche zu verstehen, warum BTRFS CRC32c verwendet, während HDD bereits über Datenintegritäts-ECC auf Sektorebene verfügt. Liegt es daran, dass BTRFS keine Medien weiterleitet, um den Schutz der Datenintegrität zu gewährleisten? Vielen Dank.
data-recovery
btrfs
Armada
quelle
quelle
Antworten:
Festplatten können und können Daten stillschweigend beschädigen. Unter http://storagemojo.com/2007/09/19/cerns-data-corruption-research/ finden Sie nur ein Beispiel für eine diesbezügliche Untersuchung.
quelle
Ich kaufe einfach keine derartigen Argumente, bei denen Festplatten regelmäßig nicht gemeldete Fehler aufweisen, und schreibe sie an FUD weiter. Ja, wenn Sie genügend zufällige Daten auf den Fehlererkennungscode werfen, wird manchmal gemeldet, dass die Daten korrekt sind, wenn dies nicht der Fall ist. Hier ist jedoch die Sache: Das Laufwerk versucht nicht, zufällige Daten zu lesen. Es werden Daten gelesen, die größtenteils richtig geschrieben und zurückgelesen wurden. Das geht dann durch einen Fehlerkorrekturcode, der eine Anzahl von fehlerhaften Bits beheben kann. Um einen nicht gemeldeten Fehler zu erhalten, müssen Sie eine viel höhere Anzahl von Rohfehlern als üblich erhalten, um die ECC zu überwältigen, und dann müssen sie genau richtig angeordnet werden, damit die Ausgabe der ECC selbst höher angeordnet ist , als zumindest die EDC bemerkt den Fehler und melden Sie ihn als nicht korrigierbaren Fehler. Wie oft macht das ? genau so dass sie die EDC zum Narren hält Ich denke, es ist gut. Die Chancen stehen gutgeschehen? Grundsätzlich niemals, es sei denn, ein Laufwerk nähert sich einem Ausfall oder hatte während eines Schreibvorgangs einen plötzlichen Stromausfall. Wenn also ein nicht korrigierbarer Fehler fast nie auftritt und ein nicht gemeldeter Fehler millionenfach weniger wahrscheinlich ist, was sagt Ihnen das?
Wenn Sie jedoch ohnehin eine doppelte Kopie Ihrer Daten speichern, ist es wahrscheinlich hilfreich, eine Möglichkeit zu haben, um festzustellen, welche in dem höchst unwahrscheinlichen Fall, dass eine Kopie stillschweigend beschädigt wird, richtig ist. Das crc ist auch nützlich, um Blöcke zu erkennen, die doppelte Kopien derselben Daten enthalten, sodass sie dedupliziert werden können. Dies ist ein weiteres Konstruktionsmerkmal von btrfs.
quelle
btrfs
ist ein Dateisystem der nächsten Generation - es umfasst viele der gleichen Zwecke wie frühere Layering-Modelle, die zwischen ihnen verarbeitet wurden.btrfs
ist auch ein erstaunlich umfangreicher Stapel - die FAQ empfiehlt, ihn auf eine nicht partitionierte Festplatte * [s] * zu schreiben und alle Partitionierungen, Kontingente, Komprimierungen, Imaging-, Striping-, Copy-on-Write-, Deduplizierungs- und wahrscheinlich 10 andere Dinge Ich vergesse, nur als Qualitäten des Dateisystems behandelt zu werden. Es kann all diese Dinge und noch viel mehr.btrfs
Festplatten-Arrays sind dynamisch - sie können problemlos auf einem Live-System hinzugefügt und daraus gelöscht werden. Dies funktioniert, weilbtrfs
Speicherblockgruppen nur dann aufgeteilt werden, wenn sie gewünscht werden - und sie sich möglicherweise auf einem bestimmten Gerät in seinem aktuellen Array befinden, wenn dies der Fall ist. Die FAQ haben dazu einige Dinge zu sagen - insbesondere dort, wo es um die Unzuverlässigkeit von Schätzungen des freien Speicherplatzes geht:Wenn Sie den entsprechenden Abschnitt
btrfs
lesen, erhalten Sie spezifischere Beispiele, aber es wird sehr deutlich, dass Geräte in ihrer Anzahl variabel, in ihrer Persistenz epehemeral, einzeln oder zusammen blockiert und gestreift sein können und ... nun, es geht weiter. Ein weiteres Zitat aus den FAQ:Es sagt dies über RAID:
Datenwiederherstellung:
Natürlich
btrfs
ist es von Grund auf so konzipiert, dass es Schichten überschreitet . Dazu muss ein prüfsummender, wiederherstellbarer und hoffentlich zumindest etwas redundanter Baum gepflegt werden, der alle derzeit integrierten Geräte umfasst.btrfs
ist in vielerlei Hinsicht eine Dateidatenbank sowie ein Dateisystem. Es verlässt sich nicht auf Geräte für ecc zugrunde liegen , weil zu einem großen Teil, ist es nicht der Ansicht , dass es sind zugrunde liegenden Geräte. Sie könnten es sich vielleicht wie einen Disk Kudzu vorstellen.In jedem Fall ist es genau die ständige Prüfsumme und das Metadatenmanagement, die es ermöglichen
btrfs
, so viele der interessanten Dinge zu tun, die es tut, und dies ohne große Rücksicht auf die zugrunde liegende Hardware.quelle
Ja, es vertraut dem Gerät nicht, Fehler zu melden oder die richtigen Daten zu speichern. Ob dies tatsächlich notwendig ist, ist eine ganz andere Frage. Normalerweise macht sich niemand Sorgen, und die Dinge funktionieren einfach.
Wenn Sie eine Festplatte haben, die keine Fehler meldet, haben Sie trotzdem ein großes Problem. Es sind nicht nur Dateisysteme, die auf solche Fehlerberichte angewiesen sind, sondern auch andere Komponenten wie RAID-Controller usw.; Durch die unzuverlässige Speicherung sind Ihre gesamten Daten gefährdet, nicht nur einige wenige.
Unabhängig davon, ob Ihr Dateisystem eine Prüfsumme ausführt, sollten Sie immer Ihre eigenen Tests im Speicher ausführen. Überprüfen Sie beispielsweise bei SMART-Selbsttests oder bei RAID, ob die Paritätsdaten nicht übereinstimmen (
/sys/block/mdX/md/mismatch_cnt
= 0, nachdem Sie eine Überprüfung sync_action ausgeführt haben).quelle