JavaRush /Kurslar /All lectures for UZ purposes /Ma'lumotlar bazasini loyihalashning asosiy bosqichlari

Ma'lumotlar bazasini loyihalashning asosiy bosqichlari

All lectures for UZ purposes
Daraja, Dars
Mavjud

Dasturlar ma'lumotlar bazasini loyihalash haqida batafsil gaplashish vaqti keldi. Loyihalash uch bosqichda amalga oshiriladi:

  1. Konseptual loyihalash;
  2. Mantiqiy loyihalash;
  3. Jismoniy loyihalash.

2.1. Konseptual loyihalash

Konseptual loyihalashning vazifasi foydalanuvchilarning predmet sohasidagi tushunchalari asosida konseptual ma'lumotlar modelini yaratishdir. Bunga erishish uchun bir qator ketma-ket amallar bajariladi. Entitetlar (konseptual) sxemasining namunasini ko'rib chiqing:

1. Entitetlarni aniqlash va hujjatlashtirish.

Entitetlarni aniqlash uchun bir-biridan mustaqil mavjud bo'ladigan obyektlarni aniqlash kerak. Har bir entitetning to'g'ri va mazmunli nomga ega bo'lishi muhim, bu boshqa foydalanuvchilar uchun tushunarli bo'ladi. Bu ismlar ma'lumotlar lug'atiga kiritilishi kerak, shuningdek, agar imkoniyat mavjud bo'lsa, ushbu entitetning kutilgan nusxalar soni aniqlanishi mumkin.

2. Entitetlar orasidagi bog'liqliklarni aniqlash va hujjatlashtirish.

Keyin, talablarimizdan kelib chiqqan holda, bizga kerakli bo'lgan entitetlar orasidagi bog'liqliklar bilan shug'ullanamiz. Har birining turi ham aniqlanadi. Keyin, entitetlar sinfini aniqlab, bog'liqliklarga mazmunli fe'l beramiz. Har bir bog'lanishning tavsifi va ishtirok etuvchi barcha turlar ma'lumotlar lug'atiga kiritiladi.

3. Predmet sohasining ER-modelini yaratish.

Entitetlarni va ularning orasidagi bog'liqliklarni tasvirlash uchun ER-diagrammalar (Entity–relationship) qo'llaniladi. Ular yordamida bizning modelimizning yagona ko'rinishi yaratiladi.

4. Atributlarni aniqlash va hujjatlashtirish.

Keyingi qadamda, biz modelimizda ishtirok etadigan barcha atributlarni aniqlaymiz. Har biri uchun biz nom qo'shamiz va ma'lumotlar lug'atiga quyidagi ma'lumotlarni kiritamiz:

  • atributning nomi va tavsifi;
  • qiymatlarning turi va o'lchamliligi;
  • atribut uchun sukut bo'yicha qabul qilinadigan qiymat (agar mavjud bo'lsa);
  • atribut NULL-qiymatlarga ega bo'lishi mumkinmi;
  • atribut hisoblanadiganmi va agar shunday bo'lsa, uning qiymatlari qanday hisoblanadi;
  • atribut tarkibiymi va agar shunday bo'lsa, u qaysi oddiy atributlardan iborat. Masalan, "Mijozning F.I.O." atributi "Familiya", "Ism", "Otchestvo" oddiy atributlardan iborat bo'lishi mumkin yoki "Ivanov Ivan Ivanovich" kabi yagona qiymatlar mavjud bo'lishi mumkin. Agar foydalanuvchi "F.I.O." ning alohida elementlariga kirish ehtiyoji bo'lmasa, atribut oddiy qilib ko'rsatiladi;

5. Atribut qiymatlarini aniqlash va hujjatlashtirish.

Har bir atribut uchun, biz unga mos keladigan qiymat to'plamini va nomini tavsiflashimiz kerak. Masalan, foydalanuvchi roli faqatgina “Administrator”, “O'qituvchi”, “Talaba” bo'lishi mumkin va bu qiymatlar ma'lumotlar lug'atiga kiritiladi.

6. Entitetlar uchun birlamchi kalitlarni aniqlash va hujjatlashtirish.

Endi biz birlamchi kalit sifatida belgilaydigan narsalarni, bir qiymatmi yoki bir nechta qiymatmi va ularni qanday bog'lashni aniqlashimiz kerak. Ushbu ma'lumotlar ham ma'lumotlar lug'atiga kiritiladi.

7. Foydalanuvchilar bilan konseptual ma'lumotlar modelini muhokama qilish.

Tayyor ER-model, hujjatlash bilan birgalikda foydalanuvchilarga tasdiqlash uchun taqdim etiladi va agar predmet sohasida nomuvofiqliklar aniqlansa, foydalanuvchilar tomonidan tasdiq momentini kutish bilan o'zgartirishlar kiritiladi.

2.2 Mantiqiy loyihalash

Mantiqiy loyihalashning asosiy vazifasi avvalgi bosqichni mantiqiy bog'langan modellarga aylantirishdir, bu biz tanlagan DBMS xususiyatlariga bog'liq bo'lmaydi. Buning uchun quyidagi amallar qo'llaniladi:

BDning mantiqiy sxemalarining namunasi.

1. Ma'lumotlar modelini tanlash.

Ma'lumotlar jadval ko'rinishidagi tasviri va ular bilan ishlash qulayligi uchun relatsion/nerelatsion ma'lumotlar modeli tanlanadi.

2. ER-model asosida jadval to'plamlarini aniqlash va hujjatlashtirish.

Har bir entitet uchun jadval yaratiladi, entitetning nomi jadval nomi bo'ladi. Jadval o'rtasida birlamchi va tashqi kalitlar mexanizmi orqali bog'liqliklar o'rnatiladi. Jadval tuzilmalari va o'rnatilgan bog'liqliklar ham hujjatlashtirilishi kerak.

3. Jadvallarni normallashtirish.

Biz normallashtirish haqida keyinroq batafsilroq gaplashamiz, lekin loyihalovchi ma'lumotlar semantikasini va ularni ishlatish xususiyatlarini yaxshi tushunishi kerak. Jadvallarimizning normallashtirish darajasini tekshirish kerak va agar kerak bo'lsa, ularni uchinchi normal shaklga keltirish kerak. Natijada, vertikal va gorizontal ravishda kengaytirib bo'ladigan juda moslashuvchan ma'lumotlar bazasi loyihasi hosil bo'ladi.

4. Foydalanuvchilar tomonidan belgilangan barcha tranzaksiyalarni bajarish imkoniyatini mantiqiy ma'lumotlar modelini tekshirish.

Tranzaksiyalar nima ekanligini oldindan bilasiz va keling bir misol ko'raylik: bank bir mijozning hisoblarini boshqarish huquqini boshqa mijozga berishi mumkin. Ushbu holatda ma'lumotlar bazasida bir vaqtning o'zida bir nechta o'zgarishlar kiritilishi kerak bo'ladi. Agar bajarish vaqtida bir narsa noto'g'ri ketsa, masalan, kompyuter ishdan chiqqan bo'lsa, ba'zi o'zgarishlar allaqachon kiritilgan bo'ladi, lekin qolganlari hali yo'q. Shuning uchun barcha qisman o'zgarishlar bekor qilinishi kerak, bu ma'lumotlar bazasining avvalgi nomuvofiq holatiga qaytishini ta'minlaydi - bu tranzaksiyaning misoli.

Dastlab, biz tranzaksiyalarni qo'lda bajarishga harakat qilamiz, agar xatolik yuz bersa, joriy mantiqiy ma'lumotlar modeli noto'g'ri va biz uni tuzatishimiz kerak bo'lgan xatolarni o'z ichiga oladi.

5. Ma'lumotlar yaxlitligini qo'llab-quvvatlash talablari va ularni hujjatlashtirish.

Talablar ziddiyatli ma'lumotlarni ma'lumotlar bazasiga kiritishni oldini olish maqsadida joriy qilingan cheklovlar shaklida namoyon bo'ladi, ya'ni ma'lumotlar bazamizni nekonsistent qilishdan saqlaydi. Biz quyidagi turdagi cheklovlarni ko'rib chiqishimiz kerak:

  • majburiy ma'lumotlar. NULL-qiymatlarga ega bo'lishi mumkin bo'lmagan atributlar mavjudmi;
  • atribut qiymatlari uchun cheklovlar. Atributlar uchun ruxsat berilgan qiymatlar;
  • entitetlar yaxlitligi. U birlamchi kalit entitetida NULL-qiymatlarga ega bo'lmasligi kerakligini ta'minlaydi;
  • havolali yaxlitlik. Tashqi kalit qiymati ustunlardan birining birlamchi kalitidagi qiymat bilan o'xshash bo'lishi kerak;
  • biznes qoidalari tomonidan o'rnatilgan cheklovlar. Har bir rol ma'lum operatsiyalarni bajarishi mumkin va biz bu cheklashlarni amalga oshirishimiz mumkin.

Barcha bu ma'lumotlar ma'lumotlar lug'atiga kiritiladi.

6. Foydalanuvchilar bilan yakuniy mantiqiy ma'lumotlar modelini yaratish va muhokama qilish.

ER-modelning yakuniy versiyasini tayyorlaymiz, bu mantiqiy ma'lumotlar modelini ifodalaydi. Butun ma'lumotlar to'plami foydalanuvchilar tomonidan qayta tahlil qilish va ko'rib chiqish uchun beriladi, ular yana predmet sohasiga mos kelishiga baho beradi.

2.3. Jismoniy loyihalash

Loyihalashning oxirgi bosqichi jismoniy - ya'ni, kompyuterning tashqi xotirasida joylashtiriladigan ma'lumotlar bazasining aniq amalga oshirilishini tavsiflash. Bu ma'lumotlarni saqlash strukturasini va ma'lumotlar bazasiga samarali kirishni ta'minlaydigan metodlarni tasvirlaydi. Mantiqiy loyihalashda nima qilish kerakligiga javob beriladi, jismoniy loyihalashda esa qanday qilib amalga oshiriladigan usul tanlanadi. Bu yerda bir necha amallarni ajratib ko'rsatamiz:

1. Tanlangan DBMS vositalari yordamida ma'lumotlar bazasining jadvallarini loyihalash.

Bizga ma'lumotlar bazasini yaratish uchun qaysi DBMSdan foydalanishni tanlash vaqti keldi. Agar kerak bo'lsa, har bir mavjud DBMSning funksional imkoniyatlari tanlanadi. Shundan so'ng biz jadvallarimizni va ulardagi bog'liqliklarni loyihalashtirishni boshlaymiz. Tayyor loyiha hujjatlashda tasvirlanadi.

2. Tanlangan DBMSda biznes qoidalarini amalga oshirish.

Ma'lumotlarni yangilash biznes qoidalari tomonidan cheklanishi mumkin. Ularni amalga oshirish usuli tanlangan DBMSga bog'liq. Har bir tizimning o'ziga xos imkoniyatlari mavjud. Ba'zi tizimlarda umuman biznes qoidalarini qo'llab-quvvatlash mavjud emas. Bunday holda, cheklovlarni amalga oshirish uchun ilovalar ishlab chiqiladi.

Biznes mantiqasi bilan bog'liq barcha qarorlar qo'shimcha hujjatlarda tavsiflanadi.

3. Ma'lumotlar bazasining fizika tashkilotini loyihalash.

Bu yerda biz jadvallar uchun eng yaxshi fayl tashkilotini tanlaymiz. Tranzaksiyalarni aniqlab, eng muhimlarini ajratib ko'rsatamiz, shuningdek, ularning o'tkazuvchanligini tahlil qilamiz, ya'ni kutish vaqti, tranzaksiyalarni bajarish oralig'i va hokazo. Albatta, biz javob berish tezligini oshirishga harakat qilamiz (ya'ni, javob uchun sekunt sonini qisqartirishga).

Agar zarurat bo'lsa, indekslarni qo'shish, normallashuv darajasini pasaytirish yoki ma'lumotlar bazasiga ta'sir ko'rsatadigan boshqa ishlashni optimallashtirish operatsiyalari amalga oshiriladi. Muhim ishlar orasida, ma'lumotlar bazasi uchun zarur bo'lgan disk xotirasi hajmini baholash ham unutilmasligi kerak.

Bularning hammasi hujjatlashtiriladi.

4. Ma'lumotlar bazasini himoya qilish strategiyasini ishlab chiqish.

Ma'lumotlar bazasi juda muhim resursdir va uni himoya qilishni o'ylash juda muhim. Loyihalovchilar tanlangan DBMS tomonidan taqdim etilgan barcha himoya vositalarini to'liq va aniq tushungan bo'lishlari kerak.

5. Ma'lumotlar bazasining ishlashini kuzatish va sozlashni tashkil etish.

Jismoniy loyihani yaratgandan so'ng, uning ishlashini doimiy kuzatish tashkil etiladi. Ma'lumotlar bazasining ishlash darajasi haqida olingan ma'lumotlar uni sozlash uchun ishlatiladi. Buning uchun tanlangan DBMSning ham vositalari jalb etiladi.

Amaldagi ma'lumotlar bazasiga istalgan o'zgarishlarni kiritish haqidagi qarorlar o'ylab ko'rilgan va har tomonlama baholangan bo'lishi kerak.

Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION