SQL tilida ma'lumotlar bazasining yaxlitligini cheklash uchun maxsus vositalar mavjud. Shunga qaramay, yaxlitlik cheklovlari maxsus katalog jadvallarida saqlanadi va ma'lumotlar bazasining yaxlitligini boshqarish til darajasida ta'minlanadi, ya'ni, ma'lumotlar bazasini o'zgartirish operatorlarini tuzishda SQL kompilyator ma'lumotlar bazasidagi yaxlitlik cheklovlari asosida tegishli dastur kodini yaratadi. SQL tilining maxsus operatorlari sizga nomlangan ustunlar yordamida ma'lumotlar bazasida saqlanadigan so'rovlar (relatsion ma'lumotlar bazasiga qilingan har qanday so'rov natijasi bu - jadval) deb nomlanishini aniqlashga imkon beradi. Foydalanuvchi uchun ko'rinish ma'lumotlar bazasida saqlanadigan har qanday bazaviy jadval bilan bir xil, ammo ko'rinishlar ma'lum bir foydalanuvchi uchun ma'lumotlar bazasining ko'rinishini cheklash yoki kengaytirish uchun ishlatilishi mumkin. Tipik MBBTni tashkil qilish Tabiiyki, tipik ma'lumotlar bazasini tashkil qilish va uning tarkibiy qismlari tarkibi biz ko'rib chiqqan funksiyalar to'plamiga mos keladi. Eslatib o'tamiz, biz ma'lumotlar bazasining quyidagi asosiy funksiyalarini aniqladik:
Tashqi xotirada ma'lumotlarni boshqarish;
Tezkor xotira buferlarini boshqarish;
Tranzaksiyalarni boshqarish;
Ma'lumotlar bazasini ro'yxatga olish va ishdan chiqqandan keyin tiklash;
Ma'lumotlar bazasi tillarini yuritish.
Mantiqan, zamonaviy relyatsion MBBTda ichki qismni ajratish mumkin - MBBT yadrosi (ko'pincha ma'lumotlar bazasi mexanizmi deb ataladi), ma'lumotlar bazasi til kompilyatori (odatda SQL), ish vaqtini qo'llab-quvvatlash quyi tizimi va yordamchi vositalar to'plami. Ba'zi tizimlarda bu qismlar aniq belgilanadi, boshqalarida esa ular yo'q, lekin mantiqan bu ajratish barcha ma'lumotlar markazlarida amalga oshirilishi mumkin. MB til kompilyatorining asosiy vazifasi - ba'zi bir bajariladigan dasturga MB tili operatorlarini kompilyatsiya qilish. Relatsion MBBT bilan bog'liq asosiy muammo shundaki, ushbu tizimlarning tillari (jimlik bo’yicha, SQL) protsessual bo'lmagan, ya'ni bunday tilning operatorida ma'lumotlar bazasida ba'zi harakatlar ko'rsatiladi, ammo bu spetsifikatsiya protsedura emas, faqat ba'zi bir shaklda kerakli harakatni bajarish shartlarini tavsiflaydi. Shuning uchun, dasturni ishlab chiqarishdan oldin kompilyator til bayonini qanday bajarish kerakligini hal qilishi kerak. Operatorni optimallashtirishning juda murakkab usullari qo'llaniladi, ularni keyingi ma'ruzalarda batafsil ko'rib chiqamiz. Kompilyatsiya natijasi ba'zi tizimlarda mashina kodidagi, lekin tez-tez bajariladigan ichki mashinadan mustaqil kodda taqdim etiladigan dastur. Ikkinchi holda, operatorning haqiqiy bajarilishi, aslida ushbu ichki tilning tarjimoni bo'lgan ish vaqtini qo'llab-quvvatlash quyi tizimidan foydalangan holda amalga oshiriladi.
Do'stlaringiz bilan baham: |