Μεταπηδήστε στο περιεχόμενο

Ανάκτηση δεδομένων από δίσκους SSD

Ας ξεκινήσουμε από βασικά:

Τι διαφορές έχει ένας δίσκος SSD και ένας συμβατικός σκληρός δίσκος;

Οι SSD δίσκοι (Solid State Drives) δεν έχουν κινούμενα μέρη αλλά αποθηκεύουν με ηλεκτρονικό τρόπο τα δεδομένα επάνω στα ολοκληρωμένα κυκλώματα που έχουν στις πλακέτες τους. Πόσο κοστίζει η ανακτηση δεδομένων SSD Η φιλοσοφία τους είναι εντελώς διαφορετική από αυτή των συμβατικών σκληρών δίσκων και γενικά έχουν πολλά θετικά και αρκετά αρνητικά. Σε κάθε περίπτωση ανακτούμε δεδομένα από όλων των ειδών τα αποθηκευτικά μέσα. Όμως, η πιο συχνή εντύπωση που κυκλοφορεί, είναι ότι επειδή οι SSD δίσκοι δεν έχουν μηχανικά μέρη, είναι πιο ανθεκτικοί και δεν χαλάνε. Ισχύει; Φυσικά και OXI. Στα εργαστήριά μας λαμβάνουμε για ανάκτηση πλέον 3-5 δίσκους SSD κάθε ημέρα, και αυτό λεει πολλά. ανάκτηση δεδομένων SSD

Ποιον SSD να επιλέξω;

Καταρχήν, δεν κάνουν όλοι οι SSD για όλες τις δουλειές. Αν ο SSD προορίζεται για τον οικιακό Η/Υ, ο οποίος κάνει βασικές εργασίες, θα πρέπει να επιλεγεί διαφορετικός δίσκος σε σχέση με αυτόν που θα επιλέγαμε για να χρησιμοποιήσουμε σε ένα datacenter όπου ο δίσκος θα έκανε λειτουργίες εγγραφής και ανάγνωσης 24/7. Θα εξηγήσουμε αμέσως γιατί. Πριν όμως, Μερικά τεχνικά θεματάκια: Όλοι οι SSD δίσκοι χρησιμοποιούν τεχνολογία NAND (δεν πρόκειται για ακρονύμιο, προέρχεται από τις λογικές πράξεις NOT και AND που χρησιμοποιούνται στον προγραμματισμό). Η NAND τεχνολογία έχει συγκεκριμένες ιδιότητες από τις οποίες εξαρτάται η διάρκεια ζωής του αποθηκευτικού μέσου. Για παράδειγμα, όταν γράφονται δεδομένα σε ένα NAND cell, για να επανεγγραφούν δεδομένα σε αυτό το cell, τα προηγούμενα θα πρέπει να διαγραφούν. Αυτή η εγγραφή και διαγραφή των δεδομένων γίνεται με την αποστολή ηλεκτρονίων προς τα κελιά (για να το πούμε πολύ -πάρα πολύ- απλά). Αυτά τα ηλεκτρόνια περνάνε μέσα από ένα μονωτή (insulator). H θέση και η τοποθεσία αυτών των ηλεκτρονίων καθορίζουν αν θα περάσει ρεύμα προς το κελί ή όχι και αν αυτό το κελί είναι κατειλημμένο. Όταν γράφουμε και διαγράφουμε τα δεδομένα από ένα κελί, καθώς τα ηλεκτρόνια πηγαινοέρχονται, ο μονωτής που αναφέραμε φθείρεται σε σημείο που δυσκολεύεται να κρατήσει τα ηλεκτρόνια στη θέση που θα έπρεπε να είναι, με αποτέλεσμα να έχουμε διαρροή ή/και αδυναμία να καθοριστεί αν τα ηλεκτρόνια βρίσκονται εκεί που πρέπει. Αυτό με τη σειρά του εξηγεί τον “πεπερασμένο αριθμό εγγράψιμων κύκλων” που αναφέρουμε συχνά. Σημαίνει ότι η ίδια η τεχνολογία flash έχει περιορισμό στον αριθμό των αναγνώσεων και εγγραφών των δεδομένων. Πώς μετρείται αυτό; Αυτό μετρείται από έναν δείκτη που λέγεται P/E. Σημαίνει Programmed/Erased και μετρείται σε κύκλους. Πρόκειται ουσιαστικά για τον σημαντικότερο παράγοντα που δείχνει την (αναμενόμενη) διάρκεια ζωής ενός SSD. Ένας κακής ποιότητας SSD μπορεί να έχει P/E = 1000 ή και λιγότερο. Αυτός ο δίσκος θα καταρρεύσει, εκτός αν χρησιμοποιείται για εργασία που δεν απαιτεί πολλούς κύκλους (light duty). Ένας καλής ποιότητας SSD μπορεί να έχει P/E = 70.000 ή και παραπάνω, και αυτός ο δίσκος υπό κανονικές συνθήκες θα “βγάλει” την 5ετία εύκολα. Παρόμοιος δείκτης είναι το TBW, το οποίο σημαίνει Terabytes Written, που ισοδυναμεί ουσιαστικά με τον όγκο των δεδομένων που θα εγγραφούν στον SSD, πριν αυτός καταρρεύσει. Ένας καλός SSD δίσκος χωρητικότητας 500GB θα έχει TBW = 200+, δηλαδή περισσότερες από 400 φορές τη χωρητικότητά του. Τέλος, το MTBF (Mean Time Between Failures) που μετρείται σε ώρες και ουσιαστικά είναι μέτρηση αξιοπιστίας της συσκευής. Δυστυχώς όμως δεν είναι αυτό που πιστεύουν πολλοί ότι είναι. MTBF = 1.000.000 ώρες δεν σημαίνει ότι ο δίσκος θα ζήσει 1.000.000 ώρες (αυτό είναι 114 χρόνια!). Είναι δείκτης της κατασκευάστριας, η οποία το διαιρεί με το AFR (Annual Failure Rate) για να υπολογίσει πόσο θα αντέξει ένας δίσκος. Επομένως, MTBF = 800.000 σημαίνει ότι σε πλήθος 1000 δίσκων οι οποίοι δουλεύουν 8 ώρες τη μέρα, θα υπάρχει ένας δίσκος που θα χτυπάει ανά 100 ημέρες. Δεν δουλεύει ο SSD μου

Tι σημαίνει “καλός” SSD?

Όπως είπαμε, δεν κάνουν όλοι οι SSD δίσκοι για όλες τις δουλειές. Η βασική τους διαφοροποίηση γίνεται από τον τύπο NAND τεχνολογίας που ενσωματώνουν. SLC (Single Level Cell). Αυτοί έχουν ένα bit ανά κελί. Αυτοί οι δίσκοι παρέχουν τη μεγαλύτερη αξιοπιστία, καθώς ακόμα και αν διαρρεύσουν μερικά ηλεκτρόνια, δεν υπάρχει μεγάλο πρόβλημα, αφού μας ενδιαφέρει να έχουμε την πληροφορία αν “τρέχει” ρεύμα ή όχι. Στα παρακάτω παραδείγματα θα γίνει πιο κατανοητό. MLC (Multi – Level Cell). Εδώ έχουμε δύο bits ανά κελί. Αυτό σημαίνει ότι απαιτείται περισσότερη ακρίβεια και υπάρχει μικρότερη ανοχή στις διαρροές. Μιας και τα δεδομένα γράφονται με άσους και μηδενικά, θα πρέπει να έχουμε την πληροφορία αν το κελί περιέχει 00, 01, 10 ή 11. TLC (Triple Level Cell). Ομοίως με πριν, εδώ έχουμε 3 bits ανά κελί και άρα θα πρέπει να γνωρίζουμε αν πρόκειται για 000, 100, 110 κλπ. Επομένως, ακόμα και μικρή φθορά στον insulator και διαρροή, θα σημαίνει βλάβη στο δίσκο. QLC (Quad Level Cell). Εδώ έχουμε 4 bits ανά κελί και επομένως 16 συνδιασμούς από 1 και 0 και επομένως ακόμα και η παραμικρή φθορά θα δημιουργήσει πρόβλημα. Έτσι γίνεται κατανοητό ότι οι SLC SSD δίσκοι είναι οι πιο αξιόπιστοι – και οι πιο ακριβοί. 

Πώς θα καταλάβω ότι ο δίσκος μου πρόκειται να χτυπήσει;

Θα πρέπει να είστε ιδιαίτερα προσεκτικοί και επιφυλακτικοί όταν δείτε περίεργες συμπεριφορές όπως καθυστερήσεις στη λειτουργία εγγραφής ή ανάγνωσης δεδομένων, αν ξαφνικά ο δίσκος γίνει Read – Only, αν ο Η/Υ δεν bootάρει με την πρώτη ή αργεί να ξεκινήσει, αν σας εμφανίζεται μήνυμα σφάλματος όταν πάτε πχ. να αποθηκεύσετε ένα αρχείο κλπ. Φυσικά, αν δείτε αρχεία να εξαφανίζονται “ως δια μαγείας” από το δίσκο, τώρα ξέρετε τι συμβαίνει και ελπίζουμε να έχετε φροντίσει για αντίγραφα. Μιας και είπαμε για αντίγραφα, ΦΡΟΝΤΙΣΤΕ ΝΑ ΕΧΕΤΕ ΚΑΛΟ, ΕΝΗΜΕΡΩΜΕΝΟ Backup! Είμαστε εταιρία ανάκτησης δεδομένων και έχουμε να αφηγηθούμε κάθε μέρα και από μία ιστορία “τρέλας”, με ανθρώπους που είχαν αποθηκευμένα δεδομένα ζωτικής σημασίας σε δίσκους 15ετίας, χωρίς αντίγραφα ασφαλείας. Μην γίνετε η επόμενη ιστορία μας, σχεδιάστε ένα αξιόπιστο τρόπο για να παίρνετε αντίγραφα ασφαλείας.

Τι είναι αυτό το TRIM που ακούω;

Πρόκειται για μια τεχνολογία που έχει ενσωματωθεί στους SSD δίσκους (και στους νέου τύπου σκληρούς δίσκους τύπου SMR) με σκοπό τη διατήρηση των κελιών σε καλή κατάσταση. Ουσιαστικά, όταν γίνεται διαγραφή ενός αρχείου από έναν SSD τότε μέσω του TRIM ο δίσκος ξέρει ότι τα κελιά που αντιστοιχούν σε αυτό το αρχείο πλέον δεν χρησιμοποιούνται και τα εμφανίζει ως μηδενικά. Αυτό έχει ως αποτέλεσμα, όταν στο δίσκο γίνει διαγραφή αρχείων, format κλπ τότε δυστυχώς τα αρχεία χάνονται δια παντώς και δεν είναι δυνατή η ανάκτησή τους. Ούτε τα αγαπημένα σας προγράμματα ανάκτησης μπορούν να βοηθήσουν και στην πλειοψηφία των περιπτώσεων, ούτε εμείς 🙁 But hey, ο δίσκος μένει σε καλή κατάσταση…

Ποια είναι τα πραγματικά ποσοστά ανάκτησης δεδομένων σε δίσκους SSD;

Η μεγάλη αλήθεια είναι ότι εξαρτάται από τον Controller που χρησιμοποιεί ο SSD, από τη βλάβη (φυσικά) και από το πόσο … τυχεροί είμαστε. Και εξηγούμαστε, γιατί διαβάζουμε άρθρα από κάποια … “εργαστήρια ανάκτησης” και -να ξέρετε, γελάμε πολύ με αυτά που γράφουν-.
  • Οι controllers είναι τα τσιπ που χρησιμοποιούν οι κατασκευάστριες εταιρίες για να κάνουν όλη τη … βρωμοδουλειά στο δίσκο: Δίνουν εντολή για ανάγνωση, για εγγραφή, για συντήρηση, για TRIM, για παροπλισμό κελιών και όλα αυτά. Ο κάθε controller χρησιμοποιεί δική του φιλοσοφία για όλα αυτά (με ό,τι αυτό συνεπάγεται για τον μικροκώδικα) και μάλιστα πολλές κατασκευάστριες γράφουν δικό τους firmware βάσει του controller (πχ. Intel) ή/και κλειδώνουν το firmware για να μην υπάρχει πρόσβαση από τρίτους (πχ. Samsung). Κάποιους από αυτούς τους controller τους έχουμε δουλέψει και έχουμε βρει λύση που μας βοηθάει ουσιαστικά να παρακάμψουμε τις δυσλειτουργίες τους και να ξεκινήσουμε το δίσκο με … εξωτερική βοήθεια. Άλλους, όχι. Αν ο δίσκος σας ανήκει στη δεύτερη περίπτωση, τότε δεν μπορούμε να κάνουμε κάτι και θεωρούμε το δίσκο ΕΠΙ ΤΟΥ ΠΑΡΟΝΤΟΣ μη – ανακτήσιμο. Να θυμίσουμε εδώ ότι η εταιρία μας είναι η μοναδική στην Ευρώπη και μία από τις δύο σε ολόκληρό τον κόσμο που έχει καταφέρει να “σπάσει” τον περίφημο Sandforce controller και να μπορεί να ανακτήσει δεδομένα από SSD δίσκους που τον χρησιμοποιούν.
  • Η βλάβη παίζει μεγάλο ρόλο. Αν για παράδειγμα τα NAND chip που γράφουν τα δεδομένα έχουν καεί, τότε η μοναδική περίπτωση για να πάρουμε δεδομένα  είναι να τα … “αναστήσουμε”. Αν δεν τα καταφέρουμε, ο δίσκος θα είναι μη ανακτησιμός (οριστικά τώρα). Το ίδιο ισχύει και για το chip του controller. Θα πρέπει να είναι σε θέση να επικοινωνήσει μαζί μας, έστω στοιχειωδώς.
  • Το πόσο τυχεροί είμαστε έχει να κάνει με το βαθμό υποβάθμισης των NAND chip που περιέχουν τα δεδομένα. Μας έχει τύχει πολλές φορές να έχουμε λύσει όλες τις βλάβες και την ώρα που διαβάζουμε δεδομένα, να παίρνουμε μόνο μαύρα sectors ή το ποσοστό των “καλών” να είναι απελπιστικά χαμηλό με αποτέλεσμα ο δίσκος ουσιαστικά να μη διαβάζει τίποτα. Αυτό συμβαίνει συνήθως σε δίσκους με TLC μνήμες και οφείλεται σε σφάλματα ανάγνωσης του ECC. Αν είμαστε τυχεροί, ο βαθμός υποβάθμισης είναι μηδενικός ή πολύ χαμηλός και καταφέρνουμε να ανακτήσουμε δεδομένα.