6. Qulflar.
Ko'p foydalanuvchili tizimlarda bir xil ma'lumotlar bazasi bilan bir vaqtning o'zida bir nechta foydalanuvchilar yoki ilovalar ishlashi mumkin. DBMSning asosiy vazifalaridan biri foydalanuvchilarning izolyatsiyasini ta'minlash, ya'ni foydalanuvchilarning har biri o'zini ma'lumotlar bazasi bilan yolg'iz ishlayapman deb o'ylashi uchun shunday ish rejimini yaratishdir. Bunday DBMS vazifasi odatda tranzaksiya parallelizmi deb ataladi.
Ma'lumotlar bazasini parallel qayta ishlashda uchta asosiy muammo mavjud:
§ O'zgarishlar etishmayapti ... Bu holat 2 ta tranzaksiya bir vaqtning o'zida ma'lumotlar bazasidagi bir xil yozuvni o'zgartirganda yuzaga keladi. Masalan, 2 ta operator buyurtmalar qabul qilish ustida ishlamoqda, birinchi operator 30 ta monitorga buyurtma oldi. U omborga borganida 40 ta monitor bor edi va u mijozdan tasdig'ini olib, 40 ta monitordan 30 tasini sotishga ruxsat berdi. U bilan parallel ravishda ikkinchi operator ishlaydi, u 20 ta monitorga buyurtma qabul qiladi. Xuddi shu monitorlar va o'z navbatida, omborga murojaat qilib, u 40 ning bir xil qiymatini oladi va mijoziga buyurtma beradi. Ma'lumotlar bilan ishlashni tugatib, u buyruqni bajaradi Yangilash, Bu ombordagi monitorlarning qolgan qismi sifatida 20 ta qo'shiladi. Shundan so'ng, birinchi operator o'z mijozi bilan ishlashni tugatadi va buyruqni ham bajaradi Yangilash, qolgan 10 tasini stokdagi monitorlar soni sifatida qayd qiladi. Ular 40 ta monitordan jami 50 tasini sotishdi, stokda 10 ta monitor bor.
§ O'rta ma'lumotlar bilan bog'liq muammolar ... Oraliq ma'lumotlarga kirish imkoniyati bilan bog'langan. Faraz qilaylik, birinchi operator o'z mijozi bilan muzokaralar olib borib, buyurtma qilingan 30 ta monitorga kirdi, ammo buyurtmani yakunlashdan oldin mijoz mahsulotning yana bir qancha xususiyatlarini bilib olishni xohladi. 1-operator ishlayotgan dastur allaqachon ombordagi qolgan monitorlarni o'zgartirgan va qolgan 10 ta monitor haqidagi ma'lumotlar hozirda u erda saqlanadi. Ayni vaqtda ikkinchi operator o‘z mijozidan 20 ta monitorga buyurtma olishga urinmoqda, biroq uning arizasida ko‘rsatilishicha, omborda atigi 10 ta monitor qolgan va operator o‘z mijozidan voz kechishga majbur. Bu vaqtda birinchi operatorning mijozi monitorlarni sotib olmaslikka qaror qiladi, operator tranzaksiyani bekor qiladi va yana omborda 40 ta monitor mavjud. Bu holat ikkinchi operatorning ilovasi birinchi ilova tomonidan tuzilgan oraliq ma'lumotlarga kirish imkoniga ega bo'lganligi sababli yuzaga keldi.
Do'stlaringiz bilan baham: |