Nima normalizatsiya?
sobes.tech AI
AIdan javob
Ma'lumotlarni normalizatsiya qilish ma'lumotlar bazalari kontekstida ma'lumotlarni tartibga solish jarayonidir, bu ma'lumotlarning ortiqcha takrorlanishini kamaytirish va ma'lumotlarning yaxlitligini oshirish uchun amalga oshiriladi. Bu katta jadvallarni kichikroq jadvallarga bo'lish va ularni bog'lash orqali amalga oshiriladi.
Asosiy maqsad:
- Ma'lumotlarning takrorlanishini yo'q qilish.
- Ma'lumotlarning yaxlitligini oshirish (kiritish, yangilash va o'chirishdagi anomaliyalarni oldini olish).
- Saqlash va so'rovlarning samaradorligini oshirish (ba'zi hollarda).
Normalizatsiya jarayoni normal shakllar (NF) tamoyillariga asoslangan. Eng keng tarqalganlari:
- Birinchi normal shakl (1NF): Ma'lumotlarning atomar bo'lishi, takrorlanuvchi ustunlar guruhlarining mavjud emasligi.
- Ikkinchi normal shakl (2NF): 1NF'da va har bir notekis atribut to'liq barcha asosiy kalitga bog'liq.
- Uchinchi normal shakl (3NF): 2NF'da va notekis atributlarning o'tkazuvchan funktsional bog'liqliklari yo'q.
Misol:
"Buyurtmalar_Mahsulotlar" jadvali:
| Buyurtma ID | Buyurtma Sana | Mahsulot ID | Mahsulot Nomi | Mahsulot Narxi | Miqdor | Mijoz Nomi | Mijoz Manzili |
|---|---|---|---|---|---|---|---|
| 1 | 2023-10-27 | 101 | Telefon | 500 | 1 | Ivan Pétrov | Pushkina ko'chasi, 10 |
| 1 | 2023-10-27 | 102 | Quloqchin | 100 | 2 | Ivan Pétrov | Pushkina ko'chasi, 10 |
| 2 | 2023-10-27 | 101 | Telefon | 500 | 1 | Maria Ivanova | Lermontova ko'chasi, 5 |
Normalizatsiyadan so'ng (3NFgacha):
"Buyurtmalar" jadvali:
| Buyurtma ID | Buyurtma Sana | Mijoz ID |
|---|---|---|
| 1 | 2023-10-27 | 1 |
| 2 | 2023-10-27 | 2 |
"Buyurtma Qatorlari" jadvali:
| Qator ID | Buyurtma ID | Mahsulot ID | Miqdor |
|---|---|---|---|
| 1 | 1 | 101 | 1 |
| 2 | 1 | 102 | 2 |
| 3 | 2 | 101 | 1 |
"Mahsulotlar" jadvali:
| Mahsulot ID | Mahsulot Nomi | Mahsulot Narxi |
|---|---|---|
| 101 | Telefon | 500 |
| 102 | Quloqchin | 100 |
"Mijozlar" jadvali:
| Mijoz ID | Mijoz Nomi | Mijoz Manzili |
|---|---|---|
| 1 | Ivan Pétrov | Pushkina ko'chasi, 10 |
| 2 | Maria Ivanova | Lermontova ko'chasi, 5 |
Ammo, ortiqcha normalizatsiya so'rovlar vaqtida JOINlar sonini oshirishi mumkin, bu esa ishlash tezligini pasaytirishi mumkin. Shuning uchun, ma'lumotlar bazasini loyihalashda, odatda, normalizatsiya darajasi va ishlash tezligi o'rtasida muvozanat qidiriladi. Denormalizatsiya - bu ishlashni yaxshilash uchun maqsadli ravishda normal shakllarni buzish jarayonidir va odatda ortiqcha takrorlanishni qo'shish orqali amalga oshiriladi.