Let's start with the basics:
What is the difference between an SSD and a conventional hard drive?
SSDs (Solid State Drives) have no moving parts but store data electronically on the integrated circuits they have on their boards. Η φιλοσοφία τους είναι εντελώς διαφορετική από αυτή των συμβατικών σκληρών δίσκων και γενικά έχουν πολλά θετικά και αρκετά αρνητικά. Σε κάθε περίπτωση ανακτούμε δεδομένα από όλων των ειδών τα αποθηκευτικά μέσα. Όμως, η πιο συχνή εντύπωση που κυκλοφορεί, είναι ότι επειδή οι SSD δίσκοι δεν έχουν μηχανικά μέρη, they are more durable and don't break. Is that true? Of course NOT. In our labs we now recover 3-5 SSDs every day, and that says a lot.Which SSD to choose?
Καταρχήν, δεν κάνουν όλοι οι SSD για όλες τις δουλειές. Αν ο SSD προορίζεται για τον οικιακό Η/Υ, ο οποίος κάνει βασικές εργασίες, θα πρέπει να επιλεγεί διαφορετικός δίσκος σε σχέση με αυτόν που θα επιλέγαμε για να χρησιμοποιήσουμε σε ένα datacenter όπου ο δίσκος θα έκανε λειτουργίες εγγραφής και ανάγνωσης 24/7. Θα εξηγήσουμε αμέσως γιατί. Πριν όμως, Some brief technical things: Όλοι οι SSD δίσκοι χρησιμοποιούν τεχνολογία NAND (δεν πρόκειται για ακρονύμιο, προέρχεται από τις λογικές πράξεις NOT και AND που χρησιμοποιούνται στον προγραμματισμό). Η NAND τεχνολογία έχει συγκεκριμένες ιδιότητες από τις οποίες εξαρτάται η διάρκεια ζωής του αποθηκευτικού μέσου. Για παράδειγμα, όταν γράφονται δεδομένα σε ένα NAND cell, για να επανεγγραφούν δεδομένα σε αυτό το cell, τα προηγούμενα θα πρέπει να διαγραφούν. Αυτή η εγγραφή και διαγραφή των δεδομένων γίνεται με την αποστολή ηλεκτρονίων προς τα κελιά (για να το πούμε πολύ -πάρα πολύ- απλά). Αυτά τα ηλεκτρόνια περνάνε μέσα από ένα μονωτή (insulator). H θέση και η τοποθεσία αυτών των ηλεκτρονίων καθορίζουν αν θα περάσει ρεύμα προς το κελί ή όχι και αν αυτό το κελί είναι κατειλημμένο. Όταν γράφουμε και διαγράφουμε τα δεδομένα από ένα κελί, καθώς τα ηλεκτρόνια πηγαινοέρχονται, ο μονωτής που αναφέραμε φθείρεται σε σημείο που δυσκολεύεται να κρατήσει τα ηλεκτρόνια στη θέση που θα έπρεπε να είναι, με αποτέλεσμα να έχουμε διαρροή ή/και αδυναμία να καθοριστεί αν τα ηλεκτρόνια βρίσκονται εκεί που πρέπει. Αυτό με τη σειρά του εξηγεί τον “πεπερασμένο αριθμό εγγράψιμων κύκλων” που αναφέρουμε συχνά. Σημαίνει ότι η ίδια η τεχνολογία flash έχει περιορισμό στον αριθμό των αναγνώσεων και εγγραφών των δεδομένων. How is this measured? Αυτό μετρείται από έναν δείκτη που λέγεται 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 ημέρες.What's a "good" SSD?
Όπως είπαμε, δεν κάνουν όλοι οι SSD δίσκοι για όλες τις δουλειές. Η βασική τους διαφοροποίηση γίνεται από τον τύπο NAND τεχνολογίας που ενσωματώνουν. SLC (Single Level Cell). These have one bit per cell. These drives are the most reliable, as even if a few electrons leak, it won't be a big problem, since we are mostly interested to 'know' whether current "flows" or not. The following examples will make it easier to understand. MLC (Multi-Level Cell). Here we have two bits per cell. This means more precision is required and there is less tolerance for leaks. Since the data is written with aces and zeroes, we should have the information if the cell contains 00, 01, 10 or 11. TLC (Triple Level Cell). As before, here we have 3 bits per cell so we need to know if it's 000, 100, 110 etc. So even a little wear on the insulator and leakage will mean disk failure. QLC (Quad Level Cell). Here we have 4 bits per cell and therefore 16 combinations of 1 and 0 and therefore even the slightest wear will cause a problem. So it is obvious that SLC SSDs are the most reliable - and thus more expensive.How will I know my drive is about to crash?
Θα πρέπει να είστε ιδιαίτερα προσεκτικοί και επιφυλακτικοί όταν δείτε περίεργες συμπεριφορές όπως καθυστερήσεις στη λειτουργία εγγραφής ή ανάγνωσης δεδομένων, αν ξαφνικά ο δίσκος γίνει Read – Only, αν ο Η/Υ δεν bootάρει με την πρώτη ή αργεί να ξεκινήσει, αν σας εμφανίζεται μήνυμα σφάλματος όταν πάτε πχ. να αποθηκεύσετε ένα αρχείο κλπ. Φυσικά, αν δείτε αρχεία να εξαφανίζονται “ως δια μαγείας” από το δίσκο, τώρα ξέρετε τι συμβαίνει και ελπίζουμε να έχετε φροντίσει για αντίγραφα. Μιας και είπαμε για αντίγραφα, MAKE SURE YOU HAVE A GOOD, UP-TO-DATE BACKUP! Είμαστε εταιρία ανάκτησης δεδομένων και έχουμε να αφηγηθούμε κάθε μέρα και από μία ιστορία “τρέλας”, με ανθρώπους που είχαν αποθηκευμένα δεδομένα ζωτικής σημασίας σε δίσκους 15ετίας, χωρίς αντίγραφα ασφαλείας. Μην γίνετε η επόμενη ιστορία μας, σχεδιάστε ένα αξιόπιστο τρόπο για να παίρνετε αντίγραφα ασφαλείας.What's that TRIM thing?
Πρόκειται για μια τεχνολογία που έχει ενσωματωθεί στους SSD δίσκους (και στους νέου τύπου σκληρούς δίσκους τύπου SMR) με σκοπό τη διατήρηση των κελιών σε καλή κατάσταση. Ουσιαστικά, όταν γίνεται διαγραφή ενός αρχείου από έναν SSD τότε μέσω του TRIM ο δίσκος ξέρει ότι τα κελιά που αντιστοιχούν σε αυτό το αρχείο πλέον δεν χρησιμοποιούνται και τα εμφανίζει ως μηδενικά. Αυτό έχει ως αποτέλεσμα, όταν στο δίσκο γίνει διαγραφή αρχείων, format κλπ τότε δυστυχώς τα αρχεία χάνονται δια παντώς και δεν είναι δυνατή η ανάκτησή τους. Ούτε τα αγαπημένα σας προγράμματα ανάκτησης μπορούν να βοηθήσουν και στην πλειοψηφία των περιπτώσεων, ούτε εμείς 🙁 But hey, ο δίσκος μένει σε καλή κατάσταση…What are the actual data recovery results for SSDs?
Η μεγάλη αλήθεια είναι ότι εξαρτάται από τον Controller που χρησιμοποιεί ο SSD, από τη βλάβη (φυσικά) και από το πόσο … τυχεροί είμαστε. Και εξηγούμαστε, γιατί διαβάζουμε άρθρα από κάποια … “εργαστήρια ανάκτησης” και -να ξέρετε, γελάμε πολύ με αυτά που γράφουν-.- Οι controllers είναι τα τσιπ που χρησιμοποιούν οι κατασκευάστριες εταιρίες για να κάνουν όλη τη … βρωμοδουλειά στο δίσκο: Δίνουν εντολή για ανάγνωση, για εγγραφή, για συντήρηση, για TRIM, για παροπλισμό κελιών και όλα αυτά. Ο κάθε controller χρησιμοποιεί δική του φιλοσοφία για όλα αυτά (με ό,τι αυτό συνεπάγεται για τον μικροκώδικα) και μάλιστα πολλές κατασκευάστριες γράφουν δικό τους firmware βάσει του controller (πχ. Intel) ή/και κλειδώνουν το firmware για να μην υπάρχει πρόσβαση από τρίτους (πχ. Samsung). Κάποιους από αυτούς τους controller τους έχουμε δουλέψει και έχουμε βρει λύση που μας βοηθάει ουσιαστικά να παρακάμψουμε τις δυσλειτουργίες τους και να ξεκινήσουμε το δίσκο με … εξωτερική βοήθεια. Άλλους, όχι. Αν ο δίσκος σας ανήκει στη δεύτερη περίπτωση, τότε δεν μπορούμε να κάνουμε κάτι και θεωρούμε το δίσκο CURRENTLY unrecoverable. μη – ανακτήσιμο. Να θυμίσουμε εδώ ότι η εταιρία μας είναι η the only one in Europe και and one of two in the whole world that has managed to "crack" the famous Sandforce controller and be able to recover data from SSDs that use it.
- Η βλάβη παίζει μεγάλο ρόλο. Αν για παράδειγμα τα NAND chip που γράφουν τα δεδομένα έχουν καεί, τότε η μοναδική περίπτωση για να πάρουμε δεδομένα είναι να τα … “αναστήσουμε”. Αν δεν τα καταφέρουμε, ο δίσκος θα είναι μη ανακτησιμός (οριστικά τώρα). Το ίδιο ισχύει και για το chip του controller. Θα πρέπει να είναι σε θέση να επικοινωνήσει μαζί μας, έστω στοιχειωδώς.
- Luck has to do with the degree of degradation of the NAND chips that contain the data. It occured to us many times that we have figured out and corrected all the failures and upon reading data, we get only black sectors or the percentage of "good" ones is tremendously low, resulting in the drive basically not reading anything. This usually happens on drives with TLC memories and is due to ECC read errors. If we are lucky enough, the degree of degradation is zero or very low and we manage to recover all or almost all of the data.