ความแตกต่างระหว่าง Normalization และ Denormalization
การเทียบมาตรฐานกับฐานข้อมูล Denormalization
ฐานข้อมูลเชิงสัมพันธ์ประกอบขึ้นด้วยความสัมพันธ์ (ตารางที่เกี่ยวข้อง) ตารางประกอบขึ้นด้วยคอลัมน์ ถ้าตารางมีสองขนาดใหญ่ (เช่นคอลัมน์มากเกินไปในหนึ่งตาราง) ความผิดปกติของฐานข้อมูลแล้วอาจเกิดขึ้นหากตารางมีขนาดเล็กสอง (เช่นฐานข้อมูลประกอบด้วยหลายตารางที่เล็กกว่า) ก็จะไม่มีประสิทธิภาพสำหรับการสอบถาม Normalization และ Denormalization เป็นสองกระบวนการที่ใช้เพื่อเพิ่มประสิทธิภาพของฐานข้อมูล Normalization ลดความซ้ำซ้อนที่มีอยู่ในตารางข้อมูล Denormalization (reverse ของ normalization) เพิ่มข้อมูลซ้ำซ้อนหรือข้อมูลกลุ่ม
การสร้างมาตรฐานคือกระบวนการที่ดำเนินการเพื่อลดความซ้ำซ้อนที่มีอยู่ในข้อมูลในฐานข้อมูลเชิงสัมพันธ์ขั้นตอนนี้จะแบ่งตารางขนาดใหญ่เป็นตารางเล็ก ๆ และมีจำนวนน้อยลง (เรียกว่า "รูปแบบปกติ") ตารางเล็ก ๆ เหล่านี้จะสัมพันธ์กัน d ถึงกันและกันผ่านความสัมพันธ์ที่กำหนดไว้อย่างชัดเจน ในฐานข้อมูลที่ได้รับการรับรองเป็นอย่างดีการปรับเปลี่ยนหรือแก้ไขข้อมูลจะต้องมีการปรับเปลี่ยนเฉพาะตารางเดียว แบบฟอร์ม First Normal (1NF) แบบฟอร์มปกติที่สอง (2NF) และแบบฟอร์มปกติที่สาม (3NF) ได้รับการแนะนำโดย Edgar F. Codd Boyce-Codd Normal Form (BCNF) ได้รับการแนะนำในปีพ. ศ. 2517 โดย Codd และ Raymond F. Boyce มีการกำหนดรูปแบบปกติที่สูงขึ้น (4NF, 5NF และ 6NF) แต่ไม่ค่อยมีการใช้งานตารางที่สอดคล้องกับ 1NF ยืนยันว่าจริงแสดงถึงความสัมพันธ์ (เช่นไม่มีบันทึกที่ทำซ้ำ) และไม่มีแอตทริบิวต์ใด ๆ ที่เกี่ยวข้องกับมูลค่า (คือแอตทริบิวต์ทั้งหมด ควรมีค่าอะตอม) สำหรับตารางให้สอดคล้องกับ 2NF ควรปฏิบัติตาม 1NF และแอตทริบิวต์ใด ๆ ที่ไม่ใช่ส่วนหนึ่งของคีย์ผู้สมัคร (เช่นคุณลักษณะที่ไม่ใช่ปัจจัยหลัก) ควรขึ้นอยู่กับคีย์ผู้สมัครในตารางทั้งหมด ตามนิยามของ Codd ตารางจะกล่าวใน 3NF ถ้าและเพียงถ้าตารางอยู่ในรูปแบบปกติที่สอง (2NF) และทุกแอตทริบิวต์ในตารางที่ไม่ได้อยู่ในคีย์ผู้สมัครควรขึ้นอยู่กับทุกๆ คีย์ผู้สมัครของตารางนั้น BCNF (หรือที่เรียกว่า 3 5NF) จะรวบรวมความผิดปกติบางอย่างที่ไม่ได้ระบุโดย 3NF
Denormalization คืออะไร?
Denormalization เป็นกระบวนการย้อนกลับของกระบวนการ normalization Denormalization ทำงานโดยเพิ่มข้อมูลซ้ำซ้อนหรือจัดกลุ่มข้อมูลเพื่อเพิ่มประสิทธิภาพการทำงาน แม้ว่าการเพิ่มข้อมูลที่ซ้ำซ้อนจะเป็นประโยชน์อย่างมากก็ตาม แต่ denormalization บางครั้งก็เป็นกระบวนการที่สำคัญมากในการเอาชนะข้อบกพร่องบางอย่างในซอฟต์แวร์ฐานข้อมูลเชิงสัมพันธ์ซึ่งอาจทำให้เกิดการลงโทษอย่างหนักด้วยฐานข้อมูลที่เป็นมาตรฐานเนื่องจากการเข้าร่วมหลายความสัมพันธ์ (ซึ่งเป็นผลลัพธ์ของ normalizing) เพื่อสร้างผลลัพธ์ให้กับแบบสอบถามบางครั้งอาจช้าขึ้นอยู่กับการใช้งานจริงทางกายภาพของระบบฐานข้อมูลอะไรคือความแตกต่างระหว่าง Normalization และ Denormalization?
- การสร้างมาตรฐานและ denormalization เป็นสองขั้นตอนที่ตรงกันข้าม