Απομόνωση ιδιότητας σε μια βάση δεδομένων

Η απομόνωση ελέγχει πώς και πότε γίνονται αλλαγές σε μια βάση δεδομένων

Η απομόνωση αποτελεί αναπόσπαστο μέρος των συναλλακτικών ιδιοτήτων της βάσης δεδομένων. Είναι η τρίτη ιδιότητα του ACID (Ατομικότητα, Συνέπεια, Απομόνωση, Ανθεκτικότητα) και αυτές οι ιδιότητες εξασφαλίζουν ότι τα δεδομένα είναι συνεπή και ακριβή.

Απομόνωση είναι η ιδιότητα σε επίπεδο βάσης δεδομένων που ελέγχει τον τρόπο και τη στιγμή που γίνονται οι αλλαγές και αν γίνονται ορατά ο ένας στον άλλο. Ένας από τους στόχους της απομόνωσης είναι να επιτρέπεται η πραγματοποίηση πολλαπλών συναλλαγών ταυτόχρονα χωρίς να επηρεάζεται η εκτέλεση του άλλου.

Πώς λειτουργεί η απομόνωση

Για παράδειγμα, αν ο Joe εκδώσει μια συναλλαγή σε μια βάση δεδομένων ταυτόχρονα με τη Mary που εκδίδει μια διαφορετική συναλλαγή, και οι δύο συναλλαγές θα πρέπει να λειτουργούν στη βάση δεδομένων με μεμονωμένο τρόπο. Η βάση δεδομένων πρέπει είτε να εκτελέσει ολόκληρη τη συναλλαγή του Joe πριν εκτελέσει τη Mary ή αντίστροφα. Αυτό εμποδίζει τη συναλλαγή του Joe από την ανάγνωση των ενδιάμεσων δεδομένων που παράγονται ως παρενέργεια ενός μέρους της συναλλαγής της Mary που τελικά δεν θα δεσμευτεί στη βάση δεδομένων. Σημειώστε ότι η ιδιότητα απομόνωσης δεν διασφαλίζει ποια συναλλαγή θα εκτελεστεί πρώτα, απλώς ότι δεν θα παρεμβαίνει μεταξύ τους.

Επίπεδα απομόνωσης

Υπάρχουν τέσσερα επίπεδα απομόνωσης:

  1. Serializable είναι το υψηλότερο επίπεδο, το οποίο σημαίνει ότι οι συναλλαγές θα ολοκληρωθούν πριν από μια άλλη συναλλαγή είναι σε θέση να ξεκινήσει.
  2. Οι επαναλήψιμες αναγνώσεις επιτρέπουν την πρόσβαση στις συναλλαγές μόλις ξεκινήσει η συναλλαγή, ακόμα κι αν δεν έχει ολοκληρωθεί.
  3. Η ανάληψη δέσμευσης επιτρέπει την πρόσβαση στα δεδομένα μετά τη δέσμευση των δεδομένων στη βάση δεδομένων, αλλά όχι πριν.
  4. Ανάγνωση μη δεσμευμένου είναι το χαμηλότερο επίπεδο απομόνωσης και επιτρέπει την πρόσβαση στα δεδομένα πριν από την πραγματοποίηση των αλλαγών.