ACID nima? 1-qism: Atomicity

Assalamu Alaykum bugun va bundan keyingi bir necha maqolalarda Relational Databazalardagi eng muhim xususiyat bo'lgan ACID bilan tanishib chiqmiz. Bugun faqatgina Atomicity haqida gaplashamiz.

Bu maqolani o'qishni boshlashdan oldin ushbu maqolaga bir ko'z tashlab chiqishingizni tavsiya qilaman. Tranzaksiya nima ?

ACID

Xo'sh ACID nima u o'zi ? ACID bu uning tarkibidagi so'z qisqartmasidan tashkil topgan . Bular :

  1. Atomicity

  2. Isolation

  3. Consistency

  4. Durability

ACID bu shunchaki tariflar emas u databazalarning fundamental bilimlari va hamma databazalar shu bilimlar ustiga qurilgan hattoki NoSQL, Graph databazalar ham.

Unda Atomicity dan boshlaymiz :).

Atomicity

Atomicity relational databazalar systemasini boshqarishning asosiy qismi faqatgina relational emas bu boshqa NoSQL va Vector va boshqalarga ham tegishli.

O'zi Atomicity so'zi atom so'zidan olingan yani bo'linmaydigan degan manoda ammo hozir atom bo'linishini topib shuncha yillik rivoyat rasvo bo'lgan :).

Atomicity qoidalar :

Xo'sh endi Atomicityga amal qilmaydigan databazadan misol ko'ramiz

Tassavur qiling sizda foydalanuvchilar va ularni balanslari bor va siz 1-foydlanuvchidan 2-chisiga 100 $ o'tkazmoqchisiz.Va amallar boshlandi ammo 1-foydalanuvchidan pul yechganda databaza nimadir sabab bilan o'chib qoldi.

Xo'sh uni qayta yoqgandan so'ng nima bo'ladi ?

Ko'rib turganingizdek 1-accountdan pul yechilgan ammo 2-chisiga hali o'tkazilmagan biz shunchaki 100 $ yo'q qilib yubordik . Bu yerda ko'rganingizdek atomicity yetishmasligi ma'lumotlari noto'gri databaza (inconsistent)holatiga olib keldi .

Xulosa

Atomicityning eng asosiy vazifa amallar bir butundek ishlashi va agarda biror xato ketgan taqdirda ham hamma ma'lumotni oldingi holatiga qaytarishga yordam berish.

Ba'zi holatlarda siz databaza qayta yoqolmasligingiz mumkin buning sababi oldingi maqolada aytib o'tganimdek ular hali malumotlarni eski holatga qaytarayotgan bo'ladi va bu ularni to'liq ishga tushishini oldini oladi. Shuning uchun uzun va ko'p amallik tranzaksiyalar tavsiya etilmaydi .

Qolgan bo'limlar keyingi qismlarda.

Xato va kamchiliklar uchun uzr !!!

linkedin.com =>Ulug'bek Habibov | LinkedIn

telegram channel =>@habibov_ulugbek