Changes between Version 2 and Version 3 of Normalization
- Timestamp:
- 06/12/25 18:26:54 (28 hours ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Normalization
v2 v3 23 23 Објаснување: 24 24 Секој ред во оваа релација ја претставува комбинацијата од дестинација и некој нејзин таг. Бидејќи една дестинација може да има повеќе тагови, а еден таг може да се користи кај повеќе дестинации, станува збор за многу-на-многу релација меѓу idDest и idTag. 25 Од анализата на податоците кои ги собрав при развојот, сметав дека ваквата декомпозиција е најсоодветна за да се овозможи флексибилно поврзување помеѓу дестинации и нивните тагови. 25 26 26 27 … … 44 45 45 46 Објаснување: 46 Еден корисник може да има повеќе рецензии и преференци, но секоја преференца е поврзана со само еден корисник. Резервациите и рецензиите зависат од комбинацијата на корисник и дестинација. 47 Еден корисник може да има повеќе рецензии и преференци, но секоја преференца е поврзана со само еден корисник. Резервациите и рецензиите зависат од комбинацијата на корисник и дестинација. R5 е најчувствителна за аномалии при ажурирање, бидејќи содржи различни типови податоци поврзани со повеќе ентитети. Затоа ја третирав посебно внимателно при декомпозицијата. 47 48 48 49 … … 99 100 100 101 === Кратко резиме 102 1NF 103 Сите релации се во 1NF — атрибутите се атомарни, без листи или вгнездени структури. 104 105 106 2NF 107 Секој non-prime атрибут целосно зависи од примарниот клуч, така што нема парцијални функционални зависности. Пример: Во R5 (рецензии), PK=(idKorisnik, idDest, idRecenzija), а сите други атрибути зависат од нив комбинација, не од дел од нив. 108 109 110 3NF 111 Сите non-prime атрибути зависат директно од PK, нема транзитивни зависимости (ниедно A → B → C). Пример: idMeteo → метео параметри, и idMeteo е дел од PK во R13, па нема транзитивност. 112 113 114 * Lossless & Dependency‑preserving decomposition - Декомпозициите се lossless, бидејќи за сите R → R1, R2, пресекот вклучува PK, а PK → R1 или R2 е Functional dependency во F+. Исто така, декомпозицијата е dependency‑preserving бидејќи сите оригинални функционални зависимости се реализирани во новите релации без потреба за join. 115 116 117 101 118 Примената на функционска декомпозиција и нормализација до третата нормална форма (3НФ) резултира со оптимизирана структура на базата која ги исполнува следниве цели: 102 119 • Елиминација на вишоци и дупликации … … 107 124 На овој начин, дизајнот на базата не само што ги задоволува тековните барања на апликацијата TravelSage, туку и обезбедува стабилна основа за нејзина понатамошна еволуција. 108 125 126 127 Целиот процес го дизајнирав така што ќе овозможи јасна логичка структура во иднина. Од моја перспектива, ова е особено важно за апликации како TravelSage што може да прераснат во посложени системи.