Sobes.tech
Middle

Маалыматтар базаларындагы нормал формалар жөнүндө эмне билесиз?

sobes.tech AI

AIден жооп

Нормалдуу формалар (НФ) — бул реляциялык маалымат базасын түзүүдө колдонулган эрежелер жана сунуштар топтому, маалыматтын ашыкчалыгын азайтуу жана киргизүү, жаңылоо жана өчүрүү учурундагы аномалияларды алдын алуу үчүн.

Негизги нормалдуу формалар:

  • Биринчи нормалдуу форма (1НФ):

    • Ар бир сапта атомар (бөлүнбөс) маанилер болушу керек.
    • Кайталаган топтомдор болбошу керек.
    • Ар бир сап уникалдуу болушу керек (башкы ачкыч бар).
  • Экинчи нормалдуу форма (2НФ):

    • 1НФте болот.
    • Ар бир ключ эмес сапат толук функционалдык көз каранды болушу керек (эгер негизги ачкыч жыйынды болсо).
  • Үчүнчү нормалдуу форма (3НФ):

    • 2НФте болот.
    • Башкы ачкычтан башка көз карандылыктар болбошу керек (ключ эмес сапат башка ключ эмес сапатка көз каранды болбошу керек).
  • Бойс-Кодд формасы (BCNF):

    • 3НФтин катуу версиясы.
    • Ар бир тривиалдуу эмес көз карандылык $X \to Y$ $X$ супер ачкыч болушу керек.
  • Төртүнчү нормалдуу форма (4НФ):

    • BCNFте болот.
    • Көп маанилүү көз карандылыктар болбошу керек.
  • Бешинчи нормалдуу форма (5НФ):

    • 4НФте болот.
    • Бириктирүү көз карандылыктары болбошу керек.

Нормализациянын максаты:

  • Маалыматтын ашыкчалыгын азайтуу.
  • Аномалияларды алдын алуу (киргизүү, жаңылоо, өчүрүү).
  • Маалыматтын бүтүндүгүн камсыздоо.
  • Базанын түзүмүн жөнөкөйлөтүү.

Мисал:

Ашыкча маалымат камтылган таблица (1НФке туура келбейт):

ЗаказID Товар Цена
1 Ноутбук, Мышь 1000, 20
2 Клавиатура 50

Нормалдуу таблица (1НФ жана андан жогору):

"Заказы" таблицасы:

ЗаказID
1
2

"Позициялар заказ":

ПозицияID ЗаказID Товар Цена
1 1 Ноутбук 1000
2 1 Мышь 20
3 2 Клавиатура 50

Нормализация — долбоордо маанилүү этап, бирок ашыкча нормализация суроо-талаптарда бириктирүүлөрдүн санынын көбөйүшүнө алып келиши мүмкүн, бул иштөөчүүлүккө терс таасирин тийгизиши мүмкүн. Оптимал деңгээлди тандоо конкреттүү талаптарга жана компромистерге көз каранды. Кээде белгилүү сценарийлерде иштөөчүүлүктү жакшыртуу үчүн денормализация колдонулат, эркиндик менен нормалдуу формалардын эрежелерин бузуу менен.