Маалыматтар базасында нормализация деген эмне?
sobes.tech AI
AIден жооп
Маалыматтар базасын нормалдаштыруу — бул маалыматтарды реляциялык базада уюштуруу процесси, максаты — ашыкчалыкты (маалыматтардын кайталоосун) азайтуу жана маалыматтардын бүтүндүгүн жакшыртуу. Бул чоң таблицаларды кичирээк бөлүп, алардын ортосунда байланышты аныктоо аркылуу ишке ашырылат.
Нормалдаштыруу негизги максаттары:
- Маалыматтардын ашыкчалыгын азайтуу: Бир эле маалыматтын ар кайсы жерлерде кайталануусун болтурбоо.
- Маалыматтардын бүтүндүгүн жакшыртуу: Маалыматтын тактыгын жана туруктуулугун камсыздоо.
- Ийкемдүүлүк камсыздоо: Базанын түзүмүн өзгөртүү жана кеңейтүүнү жеңилдетүү.
Нормалдаштыруу эрежелердин топтому аркылуу аныкталат, аларды нормалдуу формалар деп аташат. Эң кеңири тараган үч форма:
-
Биринчи нормалдуу форма (1NF):
- Ар бир багыт (колонка) атомдук (бөлүнбөс) маанилерди камтышы керек.
- Кайталоочу топтомдор болбошу керек.
- Ар бир сап уникалдуу болушу керек (белгилүү бир негизги ачкыч аркылуу).
-
Экинчи нормалдуу форма (2NF):
- Таблица 1NF-деги болушу керек.
- Бардык эмес-ачкычтык саптар (колонкалар, негизги ачкычтын бөлүнбөс бөлүгү эмес) толук негизги ачкычка көз каранды болушу керек. Чыгымдуу көз карандылыктар болбошу керек.
-
Үчүнчү нормалдуу форма (3NF):
- Таблица 2NF-деги болушу керек.
- Транситивдүү көз карандылыктар болбошу керек. Негизги ачкыч эмес саптар башка негизги эмес саптарга көз каранды болбошу керек.
Жогорку формалар (BCNF, 4NF, 5NF, 6NF) да бар, бирок 3NF көбүнчө көпчүлүк практикалык максаттар үчүн жетиштүү деп эсептелет.
Мисал (жеңилдетилген):
Баштапкы, нормалдашпаган таблица (кардар буйрутмасы):
| Буйрутма ID | Кардар аты | Кардар дареги | Товары | Саны | Бирдик баа |
|---|---|---|---|---|---|
| 101 | Иван | Москва | Ноутбук | 1 | 50000 |
| 101 | Иван | Москва | Тышкы тийүү | 2 | 1000 |
| 102 | Мария | Санкт-Петербург | Пернетақта | 1 | 3000 |
Нормалдаштырудан кийин (мисалы, 3NF чейин):
Буйрутмалар таблицасы:
| Буйрутма ID | Кардар ID | Буйрутма датасы |
|---|---|---|
| 101 | 1 | 2023-10-26 |
| 102 | 2 | 2023-10-26 |
Кардарлар таблицасы:
| Кардар ID | Кардар аты | Кардар дареги |
|---|---|---|
| 1 | Иван | Москва |
| 2 | Мария | Санкт-Петербург |
Буйрутма деталдары таблицасы:
| Деталь ID | Буйрутма ID | Товары ID | Саны | Бирдик баа |
|---|---|---|---|---|
| 1 | 101 | 10 | 1 | 50000 |
| 2 | 101 | 20 | 2 | 1000 |
| 3 | 102 | 30 | 1 | 3000 |
Товары таблицасы:
| Товары ID | Товары аты |
|---|---|
| 10 | Ноутбук |
| 20 | Тышкы тийүү |
| 30 | Пернетақта |
Денормализация — бул нормализациянын тескерисинче процесси, ал көбүнчө маалыматтарды окуу ылдамдыгын жакшыртуу үчүн колдонулат, ашыкчалыкты көбөйтүү аркылуу.