Τι σημαίνει η ατομικότητα με δύο παραδείγματα;
Ατομικότητα:Όλα ή τίποτα
Η ατομικότητα στο πλαίσιο των βάσεων δεδομένων και των συναλλαγών αναφέρεται στην έννοια της επιχείρησης που είναι αδιαίρετη . Μια συναλλαγή θεωρείται ατομική εάν είτε Όλα Οι δραστηριότητές του ολοκληρώνονται με επιτυχία ή Κανένα από αυτά είναι. Είναι σαν μια χημική αντίδραση:είτε ολόκληρη η αντίδραση συμβαίνει, είτε δεν συμβαίνει καθόλου.
Ακολουθούν δύο παραδείγματα για να δείξουμε:
Παράδειγμα 1:Τραπεζική μεταφορά
Φανταστείτε να μεταφέρετε $ 100 από τον λογαριασμό ελέγχου σας στον λογαριασμό αποταμίευσης. Αυτή η συναλλαγή περιλαμβάνει δύο λειτουργίες:
1. Debit: Αφαιρώντας $ 100 από τον λογαριασμό ελέγχου σας.
2. Πιστοποίηση: Προσθήκη $ 100 στο λογαριασμό αποταμίευσης.
Ατομική συναλλαγή: Εάν το σύστημα εγγυάται την ατομικότητα, τότε και οι δύο αυτές λειτουργίες συμβαίνουν με επιτυχία, ή κανένας από αυτούς δεν το κάνει. Εάν ολοκληρωθεί η χρεωστική λειτουργία, αλλά η πιστωτική λειτουργία αποτύχει (λόγω σφάλματος συστήματος, για παράδειγμα), τα χρήματα δεν θα χαθούν. Θα παραμείνει στον λογαριασμό ελέγχου σας.
Μη ατομική συναλλαγή: Εάν η ατομικότητα δεν είναι εγγυημένη, τα χρήματα θα μπορούσαν να εξαφανιστούν από τον λογαριασμό ελέγχου σας χωρίς ποτέ να φτάσετε στον λογαριασμό σας ταμιευτηρίου, οδηγώντας σε ασυνέπεια στο σύστημα.
Παράδειγμα 2:καλάθι αγορών
Σκεφτείτε να αγοράσετε ένα προϊόν από ένα ηλεκτρονικό κατάστημα. Η συναλλαγή σας ενδέχεται να περιλαμβάνει αυτές τις λειτουργίες:
1. Μειώστε το διαθέσιμο απόθεμα του στοιχείου που αγοράσατε.
2. Φορτίστε την κάρτα σας: Επεξεργαστείτε την πληρωμή από την πιστωτική σας κάρτα.
3. Κατάσταση παραγγελίας ενημέρωσης: Σημειώστε τη σειρά ως "τοποθετημένη".
Ατομική συναλλαγή: Εάν η συναλλαγή είναι ατομική, τότε και οι τρεις λειτουργίες συμβαίνουν επιτυχώς, ή κανένας από αυτούς δεν το κάνει. Εάν αφαιρεθεί το απόθεμα, αλλά η πληρωμή της κάρτας αποτύχει, η παραγγελία δεν θα τοποθετηθεί και το απόθεμα θα αποκατασταθεί.
Μη ατομική συναλλαγή: Χωρίς ατομικότητα, το απόθεμα μπορεί να αφαιρεθεί, αλλά η πληρωμή ενδέχεται να μην υποβληθεί σε επεξεργασία. Αυτό θα οδηγούσε σε ασυνέπεια:θα χρεώνεστε για το αντικείμενο, αλλά δεν θα σας αποσταλεί.
Στην ουσία, η ατομικότητα εξασφαλίζει ότι οι συναλλαγές είναι αξιόπιστες και συνεπείς. Αποτρέπει τη διαφθορά των δεδομένων και διασφαλίζει ότι η βάση δεδομένων παραμένει σε έγκυρη κατάσταση ακόμη και ενόψει απροσδόκητων γεγονότων ή σφαλμάτων.