Ma’lumotlarni tasvirlashda jadvallardan foydalanish




Download 111.64 Kb.
bet3/3
Sana10.12.2022
Hajmi111.64 Kb.
#34039
1   2   3
Bog'liq
malumotlar T 1-mustaqil iw

 Ma’lumotlarni tasvirlashda jadvallardan foydalanish. 

Ma’lumotlarni relyatsion modeli asosida munosabat tushunchasi yotadi. Munosabatni 


ikki o‘lchamli jadvallar yordamida tavsiflash qulay. Jadval tushunarli, ko’rimli va inson 
uchun oddiy. Munosabatlar to‘plami ma’lumotlarni saqlash uchun ishlatilishi mumkin. 
Shu bilan birga ular orasidagi bog‘lanishlarni modellashtirish imkonini beradi. Misol: ikki
o’lchamli jadvalni ko’ramiz.
Quyidagi jadvalda: 
Birinchi satr - atribut nomlari;
Ikkinchi satr - atributlarni qisqa nomlari;
Qolgan satrlar - atribut qiymatlari; 


 
Yuqoridagi ko’rib chiqilgan ierarxik tarmoqli va boshqa ma’lumotlarni tasvirlash 
usullarini shunday ikki o`lchamli jadvalga keltirish mumkin. Bunday jadvallarni quyidagi 
xususiyatlari bo’ladi.
• jadvalni har bir ma’lumot elementi maydon hisoblanadi va takrorlanuvchi guruhlar bo`lmaydi; 
• barcha ustunlar bir jinslidir; 
• har bir ustunga nom tayinlangan;
• jadvalda bir xil satr ikki marta uchramaydi;
• bunday jadvalda satr va ustunlar ixtiyoriy tartibda qaraladi va ixtiyoriy ketma-ketlikda 
ishlatilishi mumkin.
Bunday xususiyatlarga jadvalli munosabat deyiladi. Bu munosabat asosida qurilgan MB  relyatsion MB deyiladi.

Ma'lumotlar bazasini o'zgartirishning umumiy maqsadi har qanday nosozlikdan so'ng ma'lumotlar bazasini izchil (izchil) holatiga qaytarilishini ta'minlashdir. Ma'lumotlar bazasining yaxlitligini ta'minlash uchun tranzaksiya mexanizmi asos bo'lganligi sababli, jurnalga yozish va tiklash bitim tushunchasi bilan chambarchas bog'liqdir. Qayta tiklashning umumiy tamoyillari quyidagilardan iborat:


• qilingan bitimlar natijalari ma'lumotlar bazasining tiklangan holatida saqlanishi kerak (ya'ni bitimlarning chidamliligi saqlanishi kerak);
• Tuzilmagan bitimlar natijalari ma'lumotlar bazasining tiklangan holatida bo'lmasligi kerak (aks holda ma'lumotlar bazasi holati izchil bo'lmasligi mumkin).
Ma'lumotlar bazasining holatini tiklash zarur bo'lgan quyidagi holatlar bo'lishi mumkin:
1. Bitimning individual ravishda qaytarilishi. Tranzaktsiyani qaytarish uchun ahamiyatsiz holat bu uning ROLLBACK bayonoti bilan aniq bajarilishi. Bundan tashqari, tizim tomonidan tranzaktsiyalarni qaytarish boshlanishi mumkin. Masalan, dastur dasturida istisno (masalan, nolga bo'linish) yoki sinxronizatsiya boshi berk ko'chirilganda bitim qurbon bo'lishi mumkin. Tranzaktsiyani alohida-alohida qaytarib olishda ma'lumotlar bazasining izchil holatini tiklash uchun ushbu operatsiyani bajarishda ma'lumotlar bazasini o'zgartirish bayonotlari ta'sirini yo'q qilish kerak.
2. RAMning tarkibini to'satdan yo'qotishdan keyin tiklash (yumshoq ishlamay qolish). Bunday holat elektr ta'minotining favqulodda to'xtashi, qayta tiklanmaydigan protsessor ishlamay qolishi (masalan, asosiy xotirani boshqarish vositasini ishga tushirish) va hokazolarda paydo bo'lishi mumkin. Vaziyat ma'lumotlar bazasining ushbu qismining yo'qolishi bilan tavsiflanadi, u ishdan chiqqan paytda RAM DBMS buferlarida bo'lgan.
3. Ma'lumotlar bazasining asosiy tashqi muhitini buzilishidan tiklash (qattiq ishlamay qolish). Zamonaviy tashqi xotira qurilmalarining etarlicha yuqori ishonchliligini hisobga olgan holda, bu holat nisbatan kamdan-kam hollarda yuz berishi mumkin, ammo shunga qaramay, MB ma'lumotlar bazasini ushbu holatda ham tiklashi kerak. Qayta tiklashning asosi arxiv nusxasi va ma'lumotlar bazasini o'zgartirishlar jurnali.
Uchala holatda ham ortiqcha ma'lumotlarni saqlash tiklanish uchun asosdir. Ushbu ortiqcha ma'lumotlar ma'lumotlar bazasini o'zgartirish yozuvlarini ketma-ketligini o'z ichiga olgan jurnalda saqlanadi.
Jurnal ma'lumotlarini saqlashning ikkita asosiy varianti mavjud:
1. Ushbu bitim bo'yicha har bir operatsiya uchun alohida mahalliy ma'lumotlar bazasini o'zgartirishlar jurnali yuritiladi. Ushbu yondashuv sizga operatsiyani qaytarib olishni tezda amalga oshirishga imkon beradi, ammo natijada mahalliy va umumiy jurnallarda ikki nusxadagi ma'lumotlar paydo bo'ladi.
2. Ko'pincha, faqat ma'lumotlar bazasini o'zgartirish umumiy jurnalidan foydalaniladi, bu alohida orqaga qaytishni amalga oshirishda ham qo'llaniladi.
Biz faqat ikkinchi variantni ko'rib chiqamiz.
10.1. Jurnal va buferlash
Muvaffaqiyatli COMMITdan so'ng tizim ishdan chiqishi mumkin, ammo yangilanishlar ma'lumotlar bazasiga jismoniy ravishda yozilishidan oldin (ular RAM xotirasida saqlanib qolishi va shu sababli tizim ishdan chiqqanda yo'qolishi mumkin).
Shunday qilib, jurnal buferini va ma'lumotlar bazasi sahifa buferlarini ochish uchun izchil siyosatning asosiy qoidasi shundaki, ma'lumotlar bazasi o'zgarishi o'zgartirilgan ob'ekt tashqi ma'lumotlar bazasi xotirasida bo'lishidan oldin tashqi jurnal xotirasiga yozilishi kerak. Tegishli jurnalga yozish (va buferlashni boshqarish) protokoli Write Ahead Log (WAL) - "avval jurnalga yozish" deb nomlanadi va agar siz o'zgartirilgan ma'lumotlar bazasini tashqi xotiraga surishni istasangiz, avval uni ta'minlashingiz kerak jurnali uning o'zgarishi haqidagi tashqi xotira yozuvlariga chiqarilishi.
Boshqacha qilib aytganda, agar ma'lumotlar bazasining tashqi xotirasida ba'zi bir ma'lumotlar bazasi ob'ekti bo'lsa, unga nisbatan modifikatsiya operatsiyasi bajarilgan bo'lsa, unda jurnalning tashqi xotirasida ushbu operatsiyaga mos keladigan yozuv bo'lishi shart.
Ma'lumotlar bazasini so'nggi izchil holatga keltirishni ta'minlash uchun minimal talab shundan iboratki, tranzaksiya amalga oshirilganda, ushbu tranzaksiya bilan ma'lumotlar bazasini o'zgartirish to'g'risidagi barcha yozuvlar tashqi xotiraga suriladi. Bunday holda, ushbu bitim nomidan tuzilgan jurnaldagi oxirgi yozuv bu bitim tugashi to'g'risida maxsus yozuvdir.
10.2. Bitimning individual ravishda qaytarilishi
Shaxsiy operatsiyani umumiy jurnalda qaytarib olish imkoniyatiga ega bo'lish uchun ushbu operatsiyadagi barcha jurnal yozuvlari teskari ro'yxatda bog'langan:
• muvaffaqiyatsiz bitimlar ro'yxatining boshi - ushbu bitim tomonidan kiritilgan ma'lumotlar bazasining so'nggi o'zgarishi to'g'risidagi yozuv.
• tugallangan tranzaksiyalar uchun (alohida qaytarib olishlar endi mumkin emas), ro'yxatning boshida tranzaksiya tugashi to'g'risidagi yozuv bo'lishi kerak, bu jurnalning tashqi xotirasiga kiritilishi shart.
• ro'yxat oxiri har doim ushbu operatsiya asosida ma'lumotlar bazasini o'zgartirish to'g'risidagi birinchi yozuvdir.
Odatda, har bir yozuvga o'ziga xos tranzaksiya identifikatori beriladi, shunda ma'lumotlar bazasini o'zgartirish yozuvlarining to'g'ridan-to'g'ri ro'yxati ushbu operatsiya bilan tiklanishi mumkin.
kelishilmagan bitim quyidagicha qaytariladi:
1. Ushbu bitim ro'yxatidan keyingi yozuv tanlanadi.
2. Qarama-qarshi operatsiya amalga oshiriladi: insert operatsiyasining o'rniga koridorni yo'q qilishning tegishli operatsiyasi amalga oshiriladi va aksincha, atribut qiymatlarini yangilashning to'g'ridan-to'g'ri operatsiyasi o'rniga, ma'lumotlar bazasining oldingi holatini tiklaydigan teskari yangilash operatsiyasi ob'ekt.
3. Ushbu teskari operatsiyalarning har biri ham qayd qilinadi. Aslida, bu individual orqaga qaytish uchun zarur emas, lekin tranzaktsiyani individual ravishda qaytarib olish paytida yumshoq nosozlik paydo bo'lishi mumkin, bu tiklanishdan so'ng, ushbu qaytarilish to'liq bajarilmagan operatsiyani qaytarib olish kerak bo'ladi.
4. Agar orqaga qaytarish muvaffaqiyatli bo'lsa, tranzaksiya tugashi to'g'risidagi yozuv jurnalga yoziladi. Jurnal nuqtai nazaridan bunday bitim amalga oshiriladi.
10.3. Yumshoq nosozlikni tiklash
Yumshoq nosozlikni tiklashning muhim masalalaridan biri shundaki, ma'lumotlar bazasini o'zgartirishning bitta mantiqiy operatsiyasi ma'lumotlar bazasi va bir nechta indeks sahifalari kabi bir nechta jismoniy ma'lumotlar bazalarini o'zgartirishi mumkin. Ma'lumotlar bazasi sahifalari RAM-da buferlanadi va mustaqil ravishda ochiladi. WAL ishlatilishiga qaramay, yumshoq nosozlikdan so'ng ma'lumotlar bazasining tashqi xotirasidagi sahifalar to'plami mos kelmasligi mumkin; tashqi xotiraning ba'zi sahifalari o'zgarishdan oldin ob'ektga, ba'zilari esa o'zgarishdan keyin mos keladi. Mantiqiy darajadagi operatsiyalar ob'ektning ushbu holatiga taalluqli emas.
Ta'rif 1. Ma'lumotlar bazasining tashqi xotirasi holati, agar barcha ob'ektlarning sahifalar to'plamlari bir-biriga mos keladigan bo'lsa, ya'ni ular o'zgartirilgandan keyin yoki o'zgartirilgunga qadar ob'ekt holatiga mos keladigan bo'lsa, jismoniy jihatdan izchil deb nomlanadi.
Jurnal ma'lumotlar bazasining jismoniy muvofiqlik nuqtalarini (tekshiruv punktlari, jismoniy muvofiqlik vaqti - tpc) belgilaydi - tashqi xotirada tegishli vaqtdan oldin bajarilgan operatsiyalarning izchil natijalarini o'z ichiga olgan vaqt va tugallanmagan operatsiyalar natijalari yo'q va jurnal buferi tashqi xotiraga suriladi.
Keyin, yumshoq nosozlik paytida, faqat rasmda ko'rsatilgan bitim holatlari.
Anjir. 8. Yumshoq ishlamay qolgan paytdagi mumkin bo'lgan bitim holatlari

Aytaylik, tppc vaqtida ma'lumotlar bazasining tashqi xotirasini qandaydir holatda tiklash mumkin edi. Keyin ma'lumotlar bazasining oxirgi mantiqiy izchil holatini tiklash quyidagicha amalga oshiriladi:


• T1 bitimi uchun hech qanday harakat talab qilinmaydi. Tppc dan oldin tugadi va uning barcha natijalari ma'lumotlar bazasining tashqi xotirasida aks etishi kafolatlanadi.
• T2 tranzaktsiyasi tppc vaqtidagi jismoniy izchil holat nuqtasini o'rnatgandan so'ng bajarilgan operatsiyalar ketma-ketligini qayta bajarishi kerak. Darhaqiqat, tashqi xotirada tppc momentidan keyin T2 operatsiyasida bajarilgan operatsiyalar izlari yo'q. Shuning uchun, takroriy to'g'ridan-to'g'ri (ma'noda
Ichronology), T2 tranzaksiya operatsiyalarini bajarish to'g'ri va ma'lumotlar bazasining mantiqiy izchil holatiga olib keladi. (Tfs yumshoq qulashidan oldin T2 tranzaktsiyasi muvaffaqiyatli yakunlanganligi sababli, jurnalda ushbu tranzaksiya tomonidan amalga oshirilgan ma'lumotlar bazasidagi barcha o'zgarishlar yozuvi mavjud.)
• T3 tranzaktsiyasi uchun tppc momentidan oldin bajarishi kerak bo'lgan operatsiyalarning bir qismini teskari yo'nalishda (orqaga qaytarish) bajarish kerak.
Darhaqiqat, ma'lumotlar bazasining tashqi xotirasida tppc momentidan keyin bajarilgan T3 operatsiyalari natijalari umuman yo'q. Boshqa tomondan, tashqi xotirada tppc dan oldin bajarilgan T3 operatsiyalari natijalari bo'lishi kafolatlanadi. Binobarin, T3 operatsiyalarining teskari bajarilishi (ma'no va xronologiya bo'yicha) to'g'ri
va ma'lumotlar bazasining izchil holatiga olib keladi. (Tfs yumshoq qulab tushgan vaqtga qadar T3 bitimi tugamaganligi sababli, tiklash paytida operatsiyani to'liq ta'siridan tiklash kerak.)
• tppc momentidan keyin boshlash va yumshoq paytgacha tugatishga muvaffaq bo'lgan T4 tranzaktsiyasi uchun
Agar tfs bajarilmasa, oldinga yo'nalishda to'liq qayta ishlashingiz kerak. (Tfs yumshoq qulashidan oldin T4 tranzaktsiyasi muvaffaqiyatli yakunlanganligi sababli, jurnalda ushbu tranzaksiya tomonidan amalga oshirilgan ma'lumotlar bazasidagi barcha o'zgarishlar qaydlari mavjud).
Va nihoyat, tppc dan keyin boshlangan va tfs yumshoq qulab tushguncha bajarilmaydigan T5 operatsiyasi uchun hech qanday harakat talab qilinmaydi. Ushbu tranzaksiya natijalari ma'lumotlar bazasining tashqi xotirasida to'liq yo'qolgan.
Download 111.64 Kb.
1   2   3




Download 111.64 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Ma’lumotlarni tasvirlashda jadvallardan foydalanish

Download 111.64 Kb.