การท านอร์มัลไลซ์ Normalization · Normalization การท...

Preview:

Citation preview

การท านอรมลไลซNormalization

Normalization

การท านอรมลไลเซชน (Normalization) คอวธทใชในการปรบโครงสรางของตารางเพอใหไดตารางทสามารถเกบขอมลไดโดยการลดความซ าซอนของขอมล และรกษาความถกตองใหแกขอมล

โดยใหอยในรปแบบทเรยกวา Normal Form

วตถประสงคของ Normalization

⚫ ลดเนอทในการจดเกบขอมล⚫ เนองจากกระบวนการ Normalization เปนการออกแบบ เพอลดความซ าซอนในขอมล จงท าใหเนอทในการจดเกบขอมลลดลงดวย

⚫ ลดปญหาขอมลทไมถกตอง⚫ เมอขอมลไมมความซ าซอน จงท าใหสามารถปรบปรงขอมลไดจากแหลงขอมลเพยงแหลงเดยว จงลดปญหาการปรบปรงขอมลไมถกตองได (รวมถงการเพม ลบ และปรบปรงขอมล)

Data Redundancy and Update Anomalies

⚫ ตวอยางปญหาของความซ าซอนในขอมลใน Staff relationและ Branch relation เมอเปรยบเทยบกบรเลชนทรวมขอมลพนกงานและสาขาไวดวยกนใน StaffBranch relation

Data Redundancy and Update Anomalies

Data Redundancy and Update Anomalies

⚫ ตาราง StaffBranch จะมความซ าซอนของขอมล โดยรายละเอยดของสาขา (branch) จะมขอมลทซ า ๆ กนในทกสมาชกของ staff

⚫ ปญหาความซ าซอนในขอมลทเกดขนจะเรยกวา ขอผดพลาดจากการปรบปรงขอมล ซงประกอบดวย⚫ ขอผดพลาดจากการเพมขอมล (Insertion)⚫ ขอผดพลาดจากการลบขอมล (Deletion)⚫ ขอผดพลาดจากการแกไขขอมล (Modification)

Normalization

การท านอรมลไลซสามารถท าได 6 ระดบ1. First Normal Form(1NF)2. Second Normal Form(2NF)3. Third Normal Form(3NF)4. Boyce-Codd Normal Form(BCNF)5. Fourth Normal Form(4NF)6. Fifth Normal Form(5NF)

ขอบเขต

➢ ในทางปฏบตการทานอรมลไลเซชนจนถงระดบท 3 (3NF) กสามารถขจดปญหาความซ าซอนของขอมลลงไดจนเกอบหมดแลว แตอาจจะมความซ าซอนเกดข นไดอกแมจะพบไดคอนขางนอย

➢ ดงน นเน อหาจงขอกลาวถงการทานอรมลไลเซชนจนถง 3NF และกลาวถง BCNF กรณทตองการลดความซ าซอนใหนอยลงไปอก

➢ จะไมกลาวถง 4NF และ 5NF สามารถอานไดจากหนงสออางอง

First Normal Form : 1NF

1. First Normal Form : 1NFRelation หนงๆ จะอยในรปแบบ 1NF กตอเมอ “คาของ Attribute ตางๆ ในแตละ Tuple จะมคาของขอมลเพยงคาเดยว นนคอไมม Repeating Group และ Multi-valued”

ตวอยางตารางขอมลยอดสงซอออนไลน

วธการท าใหอยในรปแบบ 1NF

1. ก าจด Repeating Group (กลมซ า)2. เพมคยหลก

ผลลพธทไดจากการท า 1NF ตาราง Employee

Second Normal Form (2NF)

2. Second Normal Form : 2NF

Relation หนงๆ จะอยในรปแบบ 2NF กตอเมอ“1. Relation นนๆ ตองอยในรปแบบ 1NF2. Attribute ทกตวทไมไดเปนคยหลก จะตองมความสมพนธกบ Attribute ทเปนคยหลกทงหมด(Fully FunctionalDependency) ไมใชแคสวนใดสวนหนงของคยหลก หรอกลาวงายๆ วา ไมม Partial Dependency เกดขน”

Second Normal Form (2NF)

Second Normal Form (2NF)

Third Normal Form : 3NF

3. Third Normal Form : 3NFRelation หนงๆ จะอยในรปแบบ 3NF กตอเมอ“1. Relation นนๆ ตองอยในรปแบบ 2NF2. Attribute ทกตวทไมไดเปนคยหลก ไมมคณสมบตในการก าหนดคาของ Attribute อนทไมใชคยหลก หรอกลาวงายๆ วา ไมม Transitive Dependency เกดขน”

Third Normal Form : 3NF

Third Normal Form : 3NF

ดเพนเดนซไดอะแกรม (Dependency Diagram)

Boyce/Codd Normal Form : BCNF

4. Boyce/Codd Normal Form : BCNFRelation หนงๆ จะอยในรปแบบ BCNF กตอเมอ“1. Relation นนๆ ตองอยในรปแบบ 3NF2. ไมม Attribute อนใน Relation ทสามารถระบคาของ Attribute ทเปนคยหลกหรอสวนหนงสวนใดของคยหลกในกรณทคยหลกเปนคยผสม(Composite Key)”

Boyce-Codd normal form (BCNF)

⚫ลกษณะ 3NF ทไมใช BCNF⚫ สงเกตวายงม Attribute หนงยงสามารถระบคา Attribute

ทเปนสวนหนงของ Primary key (C → B)

Boyce-Codd normal form (BCNF)

Boyce-Codd normal form (BCNF)

4 NF

4 NF

5NF

5NF

การแตก Relation มากเกนไป (Over Normalization)

➢ วตถประสงคของการท าใหเปนรปแบบบรรทดฐาน คอ➢ เพอลดปญหาในดานความซ าซอนของขอมล➢ เพอลดปญหาในเรองการเพม การลบ หรอการปรบปรงขอมล

➢ โดยทวไปการออกแบบในระดบแนวคด ผออกแบบจะพยายามวเคราะห Relation ใหอยในรปแบบ 3NF

➢ กรณทเกดปญหาตางๆ ทจ าเปนตองท าตอไปถงรปแบบ BCNF, 4NF และ 5NF (เกดขนนอยมากในทางปฏบต)

⚫ ดวยเหตผลดงกลาว ผออกแบบไมควรพยายามทจะแตก Relationมากเกนความจ าเปน (Over Normalization) เพราะ

⚫ การแตก Relation ออกเปน Relation ยอยมากเกนไปมผลตอประสทธภาพในการท างานของฐานขอมล เชน ในการคนคนขอมลจะตองใชเวลามากกวาเดม เปนตน

การดนอรมอลไลเซชน (Denormalization)

➢ เปนกระบวนการทตรงกนขามกบการ Normalization โดยยอมเกบขอมลทมความซ าซอนกนบาง เพอแลกกบความเรวในการเรยกดขอมลทมากขน เชน Relation นนควรจะปรบใหอยในรปแบบ 3NF แตหยดอยเพยงรปแบบ 2NF เปนตน

➢ อาจเปนเพราะเหตผลในเรองของประสทธภาพในการเรยกด หรอ การคนคนขอมล และยอมใหเกดความซ าซอนของขอมลได

การดนอรมอลไลเซชน (Denormalization)

⚫ การดนอรมอลไลเซชนอาจกอใหเกดปญหาความซ าซอนของขอมล เกดขนได

⚫ ควรมการระบสาเหต และวธการในการปรบปรงขอมลในโปรแกรมประยกตใชงาน เพอปองกนไมใหเกดปญหาขอมลไมถกตอง

⚫ ถาขอมลใน relation นนๆ สวนใหญจะเปนการเรยกดขอมล (Select)มากกวาการเพม ลบ หรอปรบปรงขอมล เพอเพมประสทธภาพในการท างานของฐานขอมล และไมมปญหาดานความไมถกตองของขอมลทซ าซอนกนได

รหส นศ.ภาคเรยน

รหสวชา ชอวชาประเภท

วชาชอ

ประเภทหนวยกต เกรด

6101 1/61 A01 คณตศาสตรคอมฯ 02 ชพบงคบ 3 F

1/61 A03 ภาษาไทย 01 พนฐาน 3 C

2/61 A01 คณตศาสตรคอมฯ 02 ชพบงคบ 3 D

2/61 A04 ภาษาองกฤษ1 01 พนฐาน 3 D+

6102 1/61 A01 คณตศาสตรคอมฯ 02 ชพบงคบ 3 B

1/61 A04 ภาษาองกฤษ1 01 พนฐาน 3 C

2/61 A02 ระบบฐานขอมล 03 ชพเลอก 3 B

2/61 A05 โปรแกรมส าเรจรป1 02 ชพบงคบ 3 D

6103 1/61 A06 การสอสารขอมล 01 พนฐาน 3 A

1/61 A04 ภาษาองกฤษ1 03 ชพเลอก 3 C

2/61 A05 โปรแกรมส าเรจรป1 02 ชพบงคบ 3 D

6106 1/61 A03 ภาษาไทย 01 พนฐาน 3 B+

1/61 A04 ภาษาองกฤษ1 01 พนฐาน 3 C

จงวเคราะหและจดท า Normalization ระบบการลงทะเบยนของนกศกษา ใหมความซ าซอนนอยทสด

อางอง

[1] https://www.youtube.com/watch?v=tIzTHyktlVU

Recommended