22.4 Ακεραιότητα Δεδομένων

Το τελευταίο πρόβλημα με την τρέχουσα τεχνολογία δίσκων, είναι η αναξιοπιστία τους. Αν και τα τελευταία χρόνια η αξιοπιστία των δίσκων έχει αυξηθεί σημαντικά, εξακολουθούν να είναι το εξάρτημα με το μεγαλύτερο ρυθμό αποτυχίας στους εξυπηρετητές. Όταν αποτύχει ένας δίσκος, τα αποτελέσματα μπορεί να είναι καταστροφικά: η αντικατάσταση ενός χαλασμένου δίσκου και η αντιγραφή των δεδομένων στο νέο μπορεί να διαρκέσει μέρες.

Ο παραδοσιακός τρόπος αντιμετώπισης αυτού του προβλήματος είναι το mirroring (καθρεπτισμός), η διατήρηση δηλαδή δύο αντιγράφων των δεδομένων σε διαφορετικούς δίσκους. Με την εφεύρεση των διάφορων επιπέδων RAID, η τεχνική αυτή έγινε επίσης γνωστή με την ονομασία RAID επιπέδου 1 ή απλώς RAID-1. Κάθε εγγραφή στον τόμο γίνεται και στους δύο δίσκους. Η ανάγνωση μπορεί να γίνει από οποιοδήποτε δίσκο, έτσι αν ένας από τους δύο αποτύχει, τα δεδομένα εξακολουθούν να είναι διαθέσιμα στον άλλο.

Το mirroring έχει δύο προβλήματα:

Μια εναλλακτική λύση είναι το parity (ισοτιμία), το οποίο υλοποιείται στα επίπεδα 2, 3, 4 και 5 του RAID. Από τα επίπεδα αυτά, το RAID-5 είναι το πιο ενδιαφέρον. Ο τρόπος που υλοποιείται στο Vinum, είναι μια παραλλαγή της οργάνωσης δεδομένων που χρησιμοποιείται στο stripe, με τη διαφορά ότι ένα μπλοκ από κάθε stripe χρησιμοποιείται για να αποθηκεύει την ισοτιμία ενός άλλου μπλοκ. Στο Vinum, μια συστοιχία RAID-5, είναι παρόμοια με μια συστοιχία stripe, εκτός από το γεγονός ότι υλοποιεί RAID-5 καθώς κάθε stripe περιέχει και μπλοκ ισοτιμίας. Η τοποθεσία του μπλοκ ισοτιμίας, αλλάζει από το ένα stripe στο επόμενο, κάτι που απαιτείται από το RAID-5. Οι αριθμοί στα μπλοκ δεδομένων αναφέρονται στη σχετική αρίθμηση τους.

Σχήμα 22-3. RAID-5 Organization

Σε σύγκριση με το mirror, το RAID-5 έχει το πλεονέκτημα να απαιτεί σημαντικά λιγότερο χώρο αποθήκευσης. Η ταχύτητα ανάγνωσης είναι ίδια με το stripe, αλλά η εγγραφή είναι σημαντικά πιο αργή, περίπου το 25% της απόδοσης κατά την ανάγνωση. Αν ένας δίσκος χαλάσει, η συστοιχία εξακολουθεί να λειτουργεί σε ελαττωμένη (degraded) κατάσταση: η ανάγνωση από τους δίσκους που λειτουργούν κανονικά συνεχίζεται απροβλημάτιστα, αλλά η ανάγνωση δεδομένων που βρίσκονταν στον προβληματικό δίσκο πρέπει να επαναϋπολογιστεί με βάση τα αντίστοιχα μπλοκ ισοτιμίας που βρίσκονται σε όλους τους άλλους δίσκους.

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.