The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

นางสาว ศิริลักษณ์

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by aomyim05412, 2020-10-29 08:34:44

นางสาว ศิริลักษณ์

นางสาว ศิริลักษณ์

นางสาวศิริลกั ษณ์ พนั ธ์ทอง
รหสั ประจาตวั 63302040023
แผนก...เทคโนโลยธี ุรกิจดิจิทลั

หวั ขอ้ ท่ี 1 :รูปแบบบรรทดั ฐาน ประกอบดว้ ยหวั ขอ้ ยอ่ ย ดงั น้ี

ความหมายกระบวนการนอร์มลั ลล์์

• การทานอรม์ ลั ไลเซชนั เป็นวิธีการในการกาหนดแอตทริบิวตใ์ ห้กับแตล่ ะเอนทติ ี เพอื่ ให้ได้
โครงสรา้ งของตารางท่ีดี สามารถควบคุมความซาซอ้ นของขอ้ มูลหลกี เล่ียงความผดิ ปกติของ
ข้อมลู โดยทั่วไปผลลัพธ์ของการนอรม์ ลั ไลเซชัน จะไดต้ ารางทม่ี ีโครงสร้างซบั ซอ้ นนอ้ ยลง แต่
จานวนของตารางจะมากขนึ

• การทานอรม์ ัลไลเซชัน จะประกอบด้วยนอร์มัลฟอรม์ (Normal Form) แบบตา่ ง ๆ ทมี่ ี
เงอื่ นไขของการทาใหอ้ ยูใ่ นรูปของนอร์มลั ฟอร์มท่ีแตกตา่ งกันไป ขึนอย่กู ับผู้ออกแบบ
ฐานข้อมลู วา่ ต้องการลดความซาซอ้ นในฐานขอ้ มลู ให้อย่ใู นระดับใด ซ่ึงประกอบดว้ ยนอร์มลั
ฟอร์มแบบตา่ ง ๆ ดงั ต่อไปนี

นิยามรูปแบบบรรทดั ฐาน ดงั น้ี

2.1 รูปแบบบรรทัดฐานระดับท่ี 1 (FIRST NORMAL FORM : 1NF)

คุณสมบตั ิของรีเลชนั ของแบบจาลองขอ้ มลู เชิงสมั พนั ธ์ กค็ ือ ขอ้ มลู ในแตล่ ะทปั เพิล
จะตอ้ งลม์่ ้ากนั และค่าในแต่ละแอตทริบิวตจ์ ะตอ้ งลม่สามารถถกู แบ่งแยกยอ่ ยลงลปลดอ้ ีก
หรือมีความเป็ นอะตอมมิค(Atomic) รวมถึงจะตอ้ งมีค่าเพียงค่าเดียวท่ีอยใู่ นแต่ละแอตทริบิวต์
หรือมีความเป็ น์ิงเกิลแวลู (Single Value) ์่ึงในการทานอร์มลั ลลเ์ชนั ใหอ้ ยใู่ นนอร์
มลั ฟอร์ท่ี 1 ก็อาศยั คุณสมบตั ิดงั ท่ีกลา่ วลวข้ า้ งตน้

1.1) รีพที ติง้ กรุ๊ป (Repeating Group)
การที่ขอ้ มลู ใน 1 ทปั เพลิ สามารถมีค่าในแตล่ ะแอตทริบิวตล์ ดม้ ากกวา่ หน่ึงค่า (Multivalued)
จะทาใหเ้ กิดรีพที ติง้ กรุ๊ป ดงั ตารางท่ีแสดงในภาพขา้ งล่าง ์่ึงเลขท่ีโครงการหน่ึงหมายเลข
ประกอบดว้ ยกลุม่ ขอ้ มลู หลายกล่มุ ์่ึงทาใหร้ ีเลชนั ดงั กลา่ ว ขาดคุณสมบตั ิ์ิงเกิลแวลู

1.2) นิยามของนอร์มลั ฟอร์มที่ 1
รีเลชนั จะอยใู่ นรูปของนอร์มลั ฟอร์มท่ี 1 ก็ต่อเม่ือมีคุณสมบตั ิตามเงื่อนลขดงั ตอ่ ลปน้ี
1. มีการกาหนดแอตทริบิวตท์ ่ีเป็ นคีย์
2. ตอ้ งลมม่ ีรีพีทติ้งกรุ๊ป แตล่ ะแถวหรือคอลมั น์จะมีคา่ ลดเ้ พียง 1 คา่ เท่าน้นั
3. แอตทริบิวตท์ ุกตวั ตอ้ งข้ึนอยกู่ บั คียห์ ลกั

จากภาพขา้ งบน เมื่อการการนอร์มลั ลลเ์ชนั ใหอ้ ยใู่ นรูปนอร์มลั ฟอร์มที่ 1 จะลดต้ ารางที่แตกยอ่ ย
ออกมาเป็ น 2 ตาราง ดงั ภาพขา้ งลา่ ง ์่ึงมีคุณสมบตั ิตามนอร์มลั ฟอร์มที่ 1 แลว้

2.2 รปู แบบบรรทัดฐานระดับที่ 2 (SECOND NORMAL FORM : 2NF)

ในหน่ึงรีเลชนั จะประกอบดว้ ยแอตทริบิวตต์ ่าง ๆ ท่ีมีความสมั พนั ธท์ ่ีข้ึนต่อกนั ์่ึงความสมั พนั ธ์
ดงั กลา่ วจะเป็ นตวั กาหนดวา่ แอตทริบิวตใ์ ดเป็ นตวั กาหนดขอ้ มูล หรือ คียแ์ อตทริบิวต์ (Key Attribute)
และและแอตทริบิวตใ์ ดเป็ นขอ้ มูลท่ีถูกกาหนดหรือนอนคยี แ์ อตทริบิวต์ (Nonkey Attribute)

2.1) ฟังกช์ นั นลั ดีเพนเดน์ี (FUNCTIONAL DEPENDENCY: FD)

ในการทานอร์มลั ลลเ์ชนั จะตอ้ งมีความเขา้ ใจหลกั การของฟังกช์ นั ดีเพนเดน์ี
(FUNCTION DEPENDENCY : FD) เสียก่อน โดยมีคาจากดั ความคือ B ข้ึนอยกู่ บั A ถา้ ทราบค่าของ A ก็
จะทาใหร้ ู้คา่ ของ B ลด้
ฟังกช์ นั นลั ดีเพนเดน์ี สามารถแสดงดว้ ยการใชเ้ คร่ืองหมายลูกศร ( ->) ตวั อยา่ งเช่น A->B แสดง B เป็ น
ฟังกช์ นั นลั ดีเพนเดนตก์ บั A กล่าวคือ ถา้ รู้ค่า A ก็จะทาใหท้ ราบคา่ ของ B ดว้ ย ทุกค่าของ A ที่มีคา่

เท่ากนั จะลดค้ า่ เท่ากนั เสมอ

2.2) พาเชียลดีเพนเดน์ี (PARTIAL DEPENDENCY)

พาร์เชียลดีเพนเดน์ี หมายถึง การที่มีแอตทริบิวตบ์ างแอตทริบิวต์ ที่ข้ึนอยกู่ บั เพียงบางส่วนของคียห์ ลกั
เท่าน้นั ตวั อยา่ งเช่น จากตารางในภาพขา้ งล่าง แอตทริบิวตช์ ื่อพนกั งานจะข้ึนอยกู่ บั คยี ร์ หสั พนกั งาน ในขณะ
ที่

แอตทริบิวตช์ ื่อแผนก จะข้ึนอยกู่ บั คียร์ หสั แผนก จะเห็นวา่ ขอ้ มูลที่อยใู่ นรีเลชนั เดียวกนั แต่ลมล่ ดข้ ้ึนอยกู่ บั
คียใ์ ดคียหน่ึงท้งั หมด แต่จะข้ึนอยกู่ บั คียใ์ ดคียห์ น่ึงเพียงบางส่วนเท่าน้นั

2.3) นิยามของนอร์มลั ฟอร์มท่ี 2
รีเลชนั จะอยใู่ นรูปของนอร์มลั ฟอร์มที่ 2 ก็ตอ่ เม่ือมีคุณสมบตั ิตามเงื่อนลขดงั ต่อลปน้ี
1. รีเลชนั น้นั เป็ นนอร์มลั ฟอร์มท่ี 1 อยแู่ ลว้
2. รีเลชนั น้นั ลม่มีพาร์เชียลดีเพนเดน์ี

ตวั อยา่ งรีเลชนั พนกั งานในแผนกในภาพขา้ งบน เมื่อทาการแตกออกเป็ นรีเลชนั ยอ่ ยที่ลม่มีพาร์เชียลดีเพน
เดน์ีแลว้ จะลดเ้ ป็ นรีเลชนั สองรีเลชนั คือ รีเลชนั พนกั งานและ รีเลชนั แผนก ์่ึงอยใู่ นรูปของนอร์มลั ฟอร์มท่ี
2 แลว้ ดงั ภาพขา้ งลา่ ง

2.3 รูปแบบบรรทัดฐานระดับท่ี 3 (THIRD NORMAL FORM : 3NF)

ในหน่ึงรีเลชนั จะประกอบคียแ์ อตทริบิวตแ์ ละนอนคยี แ์ อตทริบิวต์ คียแ์ อตทริบิวตจ์ ะตอ้ ง
เป็ นตวั กาหนดความหมายหรือการมีอยขู่ องแอตทริบิวตอ์ ื่น ๆ ที่อยใู่ นรีเลชนั เสมอ

3.1) ทราน์ิทีฟดีเพนเดน์ี (TRANSITIVE DEPENDENCY)

ทราน์ิทีฟดีเพนเดน์ี หมายถึง การที่มีฟังกช์ นั นลั ดีเพนเดน์ี ระหวา่ งแอตทริบิวตท์ ่ีลมล่ ดเ้ ป็ นส่วนของคยี ใ์ ด
ๆ แต่มีแอตทริบิวตอ์ ่ืน ๆ มาข้ึนกบั แอตทริบิวตน์ ้นั ตวั อยา่ งเช่น จากตารางในภาพขา้ งลา่ ง แอตทริบิวตช์ ่ือ
พนกั งาน และรหสั ตาแหน่งงานจะข้ึนอยกู่ บั คียร์ หสั พนกั งาน ในขณะที่แอตทริบิวตค์ า่ แรงตอ่ ชวั่ โมของ
พนกั งาน จะข้ึนอยกู่ บั แอตทริบิวตร์ หสั ตาแหน่งงาน์่ึงลมใ่ ช่คียอ์ ีกต่อหน่ึงทาใหม้ ีทราน์ิทีฟดีเพนเดน์ีเกิดข้ึน
ในรีเลชนั น้ี

3.2) นิยามของนอร์มลั ฟอร์มที่ 3
รีเลชนั จะอยใู่ นรูปของนอร์มลั ฟอร์มท่ี 3 ก็ตอ่ เม่ือมีคุณสมบตั ิตามเงื่อนลขดงั ต่อลปน้ี
1. รีเลชนั น้นั เป็ นนอร์มลั ฟอร์มที่ 2 อยแู่ ลว้
2. รีเลชนั น้นั ลม่มีทราน์ิทีฟดีเพนเดน์ี

ตวั อยา่ งรีเลชนั การทางานของพนกั งาน ในภาพขา้ งบน เมื่อทาการแตกออกเป็ นรีเลชนั ยอ่ ยที่ลม่มีทราน์ิ

ทีฟดีเพนเดน์ีแลว้ จะลดเ้ ป็ นรีเลชนั สองรีเลชนั คือ รีเลชนั พนกั งาน และรีเลชนั ตาแหน่งงาน ์่ึงอยใู่ นรูปของ
นอร์มลั ฟอร์มที่ 3 แลว้ ดงั ภาพขา้ งลา่ ง

2.4 รูปแบบบรรทัดฐานบอย-คอร์ด (BOYCE-CODD NORMAL FORM

: BCNF)

ในหน่ึงรีเลชนั อาจจะประกอบดว้ ยหลายแคนดิเดตคีย์ (Candidate Key) ทุกแอตทริบิวตใ์ นรีเล
ชนั จะตอ้ งข้ึนอยกู่ บั แคนดิเดตคียเ์ สมอ เราสามารถกาหนดนิยามของรีเลชนั ที่อยใู่ นรูปของบอย์ค์ อดดน์ อร์
มลั ฟอร์ม ก็ต่อเมื่อรีเลชนั มีคุณสมบตั ิตามเงื่อนลขดงั ตอ่ ลปน้ี

1. รีเลชนั น้นั เป็ นนอร์มลั ฟอร์มท่ี 3 อยแู่ ลว้
2. ทุกแอตทริบิวตใ์ นรีเลชนั จะตอ้ งข้ึนกบั แคนดิเดตคีย์

รีเลชนั จะอยใู่ นรูปบอย์์คอดดน์ อร์มลั ฟอร์ม ถา้ ทุกแอตทริบิวตข์ ้ึนอยกู่ บั แคนดิเดตคีย์ (CANDIDATE KEY)

ดงั น้นั ถา้ ใน 1 รีเลชนั มีแคนดิเดตคียเ์ พยี งตวั เดียวแลว้ นอร์มลั ฟอร์มท่ี 3 และบอย์์คอดดน์ อร์มลั ฟอร์ม จะ
เหมือนกนั โอกาสท่ีคุณสมบตั ิของบอย์์คอดดน์ อร์มลั ฟอร์มจะถูกละเมิดน้นั เกิดข้ึนลดน้ อ้ ย และจะเกิดลดก้ บั
รีเลชนั ท่ีมีแคนดิเดตคียม์ ากกวา่ หน่ึงเท่าน้นั ดงั ตวั อยา่ งในภาพขา้ งลา่ ง รีเลชนั การลงทะเบียนเรียน รีเลชนั
ดงั กล่าวอยใู่ นรูปนอร์มลั ฟอร์มที่ 3 แลว้ แตก่ ย็ งั มีบางส่วนมีปัญหาอยู่ ตรงจุดที่แอตทริบิวตร์ หสั วชิ าเรียน และผล
การเรียนข้ึนอยู่

กบั คียน์ กั ศึกษา และคียผ์ สู้ อน แตใ่ นขณะเดียวกนั รหสั ผสู้ อนก็ข้ึนอยกู่ บั รหสั วชิ าเรียน ทาใหถ้ า้ ตอ้ งการ
เปลี่ยนแปลงผสู้ อนในวชิ า 301 จะตอ้ งมีการเปล่ียนแปลงถึง 2 ทปั เพิล ์่ึงผลลพั ธ์ที่ลดอ้ าจจะทาใหเ้ กิดความ
ผิดพลาดหากทาการแกล้ ขลมค่ รบถว้ น และถา้ นกั ศึกษารหสั 135 ถอนการลงทะเบียนวชิ า 280 ขอ้ มลู ของผทู้ ่ี
สอนวชิ าน้ีจะหายลปจากระบบเลย ถา้ เราลบขอ้ มลู น้ี

เราสามารถทาการแตกตารางออกมาใหอ้ ยใู่ นรูปของบอย์ค์ อดดน์ อร์มลั ฟอร์มลด้ โดยการแยกแอตทริบิวต์

รหสั วชิ าเรียนและรหสั ผสู้ อน์่ึงข้ึนอยกู่ บั แอตทริบิวตร์ หสั วชิ าเรียน ออกมาเป็ นอีกหน่ึงรีเลชนั และแยก
แอตทริบิวต์ รหสั นกั ศึกษา รหสั ผสู้ อน และผลการเรียนออกมาเป็ นอีกหน่ึงรีเลชนั ดงั แสดงในภาพขา้ งล่าง

2.4 รปู แบบบรรทดั ฐานระดบั ที่ 4 (FOURTH NORMAL FORM : 4NF)

ในขณะท่ีการทาใหอ้ ยใู่ นรูปของนอร์มลั ฟอร์มตา่ ง ๆ ท่ีผา่ นมา จะเกี่ยวขอ้ งกบั การข้ึนตรงต่อ
กนั ของขอ้ มลู ในแตล่ ะแอตทริบิวตห์ รือฟังกช์ นั นลั ดีเพนเดน์ี แต่การทาใหอ้ ยใู่ นรูปของนอร์มลั ฟอร์ม
ที่ 4 จะเกี่ยวขอ้ งกบั รูปแบบของการข้ึนตรงต่อกนั ของขอ้ มลู ในระดบั ที่์บั ์อ้ นกวา่

4.1) มลั ติแวลดู ีเพนเดน์ี (MULTIVALUED DEPENDENCY)
ถา้ แตล่ ะแอตทริบิวตใ์ นหน่ึงรีเลชนั แบ่งออกเป็ นกลมุ่ ของขอ้ มูลอิสระ เช่นแอตทริบิวต์ X, Y และ Z แบ่ง
ออกเป็ นกลุ่มขอ้ มูลของ X, Y และ Z ที่เป็ นอิสระตอ่ กนั มลั ติแวลลดู ีเพนเดน์ี X –>> Y หมายถึง
วา่ คา่ X หน่ึงค่าสามารถท่ีจะบอกค่า Y ลดห้ ลาย ๆ (X MULTI-DETERMINSE Y) ลม่
วา่ Z จะมีค่าเป็ นอะลรก็ตาม

โดยปกติ ถา้ R ประกอบดว้ ย ATTRIBUTE X, Y และ Z (Z = R – {XY} )
ดงั น้นั ถา้ X –>> Y แลว้ X –>> Z เสมอ สามารถเขียนใหม่เป็ น X –>> Y | Z ถา้ Y เป็ น
สบั เ์ทของ X หรือ X ยเู นี่ยน Y = R แลว้ เราเรียก X –>> Y วา่ ทริเวยี ลมลั ติแวลดู ีเพนเดน์ี
(TRIVIAL MULTIVALUED DEPENDENCY) ์่ึงจะต่างจากฟังกช์ นั นลั ดีเพนเดน์ี X –
> Y ที่ X จะสามารถบอกคา่ Y ลดแ้ คเ่ พียงคา่ เดียว

ตวั อยา่ งภาพขา้ งลา่ ง เนื่องจากแอตทริบิวต์ รหสั โครงการ รหสั บริษทั และท่ีต้งั โครงการลว้ นเป็ นคียแ์ อ
ตทริบิวต์ ดงั น้นั รีเลชนั ในภาพ จึงถือวา่ อยใู่ นรูป BCNF แลว้ แต่ยงั ลมอ่ ยใู่ นรูปของ 4NF เน่ืองจากรีเลชนั
ดงั กลา่ วยงั มีทริเวยี ลมลั ติแวลดู ีเพนเดน์ีอยใู่ นรีเลชนั ตวั อยา่ งเช่นรหสั โครงการA001 สามารถบอกค่าของ
รหสั บริษทั ท่ีเป็ นผรู้ ับผดิ ชอบลดม้ ากกวา่ หน่ึงบริษทั คือ รหสั บริษทั B001 และ B002 ในขณะเดียวกนั
รหสั โครงการ A001 ก็บอกถึงท่ีต้งั ของโครงการสองแห่งคือ จนั ทบุรี และระยอง ์่ึงถา้ มีการเพ่มิ บริษทั ที่
รับผดิ ชอบโครงการเขา้ ลปในโครงการ A001 อีกหน่ึงบริษทั ก็จะตอ้ งมีการเพมิ่ ขอ้ มูลถึงสองทปั เพิลเนื่องจาก

โครงการดงั กลา่ วมีท่ีต้งั อยถู่ ึงสองแห่งคือ ระยอง และจนั ทบุรี ส่งผลใหเ้ กิดความ์้า์อ้ นของขอ้ มูลข้ึนในรีเล
ชนั ดงั กล่าว และอาจจะเกิดความผิดพลาดในการเพมิ่ ขอ้ มูลลด้ เนื่องจากท่ีต้งั โครงการลมล่ ดข้ ้ึนอยกู่ บั รหสั บริษทั
ท่ีเป็ นผรู้ ับผิดชอบแตข่ ้ึนอยกู่ บั รหสั โครงการ

ดงั น้นั ถา้ หากมีการเพ่ิมบริษทั ผรู้ ับผิดชอบเพมิ่ ข้ึนอีกหน่ึงบริษทั เราจาเป็ นท่ีจะตอ้ งทาการเพ่ิมขอ้ มลู ท่ีต้งั
โครงการเขา้ ลปอีกสองแห่งดว้ ยเสมอ ์่ึงเป็ นผลจากความสมั พนั ธ์ในรูปแบบของ ทริเวยี ลมลั ติแวลูดีเพนเดน์ี
นนั่ เอง

นอร์มลั ฟอร์มที่ 4

5.2) นิยามของนอร์มลั ฟอร์มที่ 4
รีเลชนั จะอยใู่ นรูปของนอร์มลั ฟอร์มท่ี 4 ก็ตอ่ เมื่อมีคุณสมบตั ิตามเง่ือนลขดงั ต่อลปน้ี
1. รีเลชนั น้นั เป็ นบอย์์คอดดน์ อร์มลั ฟอร์มอยแู่ ลว้
2. รีเลชนั น้นั ลม่มีทริเวยี ลมลั ติแวลดู ีเพนเดน์ี

จากรีเลชนั ในภาพขา้ งบน เราสามารถขจดั ทริเวยี ลมลั ติแวลดู ีเพนเดน์ี โดยการแตกรีเลชนั ดงั กลา่ ว
ออกเป็ นรีเลชนั ยอ่ ย 2 รีเลชนั ์่ึงจะทาใหท้ ้งั สองรีเลชนั อยใู่ นรูปของนอร์มลั ฟอร์มที่ 4 ดงั ภาพขา้ งล่าง

2.5 รูปแบบบรรทดั ฐานระดับที่ 5 (FIFTH NORMAL FORM : 5NF)

การแปลงใหอ้ ยใู่ นรูปของนอร์มลั ฟอร์มที่ 5 จะพจิ ารณาถึงการข้ึนตอ่ กนั ของขอ้ มลู ใน
การแยกขอ้ มูลในรีเลชนั ออกเป็ นรีเลชนั ยอ่ ย และประกอบรีเลชนั ยอ่ ยกลบั เป็ นรีเลชนั ใหญ่เช่นเดิม
์่ึงเป็ นการตรวจสอบวา่ เม่ือรวมกนั ใหมด่ ว้ ยวธิ ีการจอยนแ์ ลว้ จะลดร้ ีเลชนั กลบั มาเหมือนเดิมทุก
ประการหรือลม่

6.1) จอยนโ์ อเปอรชนั (JOIN OPERATION)
ถา้ มี R1(X,Y) และ R2(Y,Z) R1 JOIN R2 = R3(X, Y, Z) โดยท่ี T(X, Y, Z) อยใู่ น R3 ก็ต่อเม่ือ
มี T1(X,Y) อยใู่ น R1 และ T2(Y,Z) อยใู่ น R2
6.2) จอยน์ดีเพนเดน์ี (JOIN DEPENDENCY)
ในการแยกรีเลชนั ออกเป็ นส่วนยอ่ ย (DECOMPOSITION) R1, R2, R3, RN มีคุณสมบตั ิจอยนด์ ีเพนเดน์ี ก็
ตอ่ เมื่อ R1 JOIN R2 JOIN R3 … JOIN RN = R นนั่ คือเมื่อเอารีเลชนั ยอ่ ยมารวมกนั ก็ตอ้ งลดร้ ีเลชนั เดิม ท่ี
ลมม่ ีขอ้ มลู สูญหาย และลมม่ ีทปั เพลิ ที่เกินมา ที่เรียกวา่ สพิวเรียสทปั เพิล (SPURIOUS TUPLE)
6.3) นิยามของ 5NF รีเลชนั จะเป็ น 5NF ถา้

1. รีเลชนั น้นั เป็ นนอร์มลั ฟอร์มที่ 4 อยแู่ ลว้
2. การแบ่งแยกรีเลชนั มีคุณสมบตั ิจอยน์ดีเพนเดน์ี

จากตวั อยา่ งในภาพขา้ งล่าง รีเลชนั วิชาเรียนประจาภาคอยใู่ นรูปของนอร์มลั ฟอร์มที่ 4 แลว้ เนื่องจากแอตทริบิวตภ์ าค
การศึกษาเป็ นตวั กาหนดแอตทริบิวตร์ หสั วิชาหลาย คา่ ในขณะที่แอตทริบิวตร์ หสั วชิ า ก็เป็นตวั กาหนดแอตทริบิวตร์ หสั ช้นั เรียน
หลายค่า รีเลชนั น้ีจึงลม่มีทริเวียลมลั ติแวลูดีเพนเดน์ี ต่อลปเราจึงทาการทดสอบคุณสมบตั ินอร์มลั ฟอร์มท่ี 5 ของรีเลชนั วชิ าเรียน
ประจาภาค โดยเม่ือนารีเลชนั ดงั กล่าวมาทาการแตกยอ่ ยออกเป็ นสามรีเลชนั คือ รีเลชนั ภาคการศึกษา รีเลชนั วิชาเรียนของช้นั เรียน
และ รีเลชนั ช้นั เรียนประจาภาค และทาการจอยนท์ ้งั สามรีเลชนั รวมกลบั เป็นหน่ึงรีเลชนั อีกคร้ัง จะลดจ้ านวนขอ้ มูลเท่ากนั กบั รีเลชนั
ก่อนท่ีจะมีแตกเป็นรีเลชนั ยอ่ ยทุกประการ ์่ึงก็คือรีเลชนั ดงั กล่าวมีคุณสมบตั ิจอยน์ดีเพนเดน์ีและอยใู่ นรูปของนอร์มลั ฟอร์มท่ี 5

แลว้

3. ตวั อยา่ งกระบวนการปรับบรรทดั ฐาน 1NF-3NF

หวั ขอ้ ที่ 2 : ความรู้พ้นื ฐานเก่ยี วกบั ฐานขอ้ มลู ไมใ่ ชเ่ ชิงสมั พนั ธ์ (NOSQL)

ฐานขอ้ มลู NOSQL คืออะลร
ฐานขอ้ มลู NOSQL สร้างตามวตั ถุประสงคส์ าหรับโมเดลขอ้ มูลแบบเฉพาะเจาะจงและมีแบบแผนที่

ยดื หยนุ่ สาหรับการสร้างแอปพลิเคชนั อนั ทนั สมยั ฐานขอ้ มลู NOSQL เป็ นท่ีรู้จกั กนั ดีในดา้ นความง่ายในการ
พฒั นา การทางาน และประสิทธิภาพตามขนาดท่ีตอ้ งการ หนา้ น้ีประกอบดว้ ยทรัพยากรเพอ่ื ช่วยใหค้ ุณเขา้ ใจ
ฐานขอ้ มลู NOSQL และเริ่มตน้ ใชง้ าน

ฐานขอ้ มลู NoSQL (ไมใ่ ชเ่ ชิงสมั พนั ธ)์
ฐานขอ้ มูล NoSQL ใชโ้ มเดลขอ้ มูลท่ีหลากหลายสาหรับการเขา้ ถึงและจดั การขอ้ มลู ฐานขอ้ มลู

ประเภทน้ีลดร้ ับการปรับปรุงประสิทธิภาพสาหรับแอปพลิเคชนั ที่ตอ้ งใชข้ อ้ มลู ปริมาณมาก มีเวลาแฝงต่า และ
มีโมเดลขอ้ มลู ท่ียดื หยนุ่ โดยเฉพาะ ์่ึงเกิดข้ึนโดยการผอ่ นปรนขอ้ จากดั ความสม่าเสมอขอ้ มลู ของฐานขอ้ มลู
อ่ืนๆ

ลองดูพจิ ารณาตวั อยา่ งการสร้างโมเดลแบบแผนสาหรับฐานขอ้ มลู หนงั สือแบบลม่์บั ์อ้ น:
ในฐานขอ้ มลู เชิงสมั พนั ธ์ บนั ทึกหนงั สือมกั ถกู แยกออกจากกนั (หรือ “มาตรฐาน”) และจดั เก็บในตาราง

แยก ส่วนความสมั พนั ธจ์ ะถูกกาหนดโดยขอ้ จากดั คียห์ ลกั และคียน์ อก ในตวั อยา่ งน้ี ตารางหนงั สือมีคอลมั น์

สาหรับ ISBN, ชื่อหนงั สือ และคร้ังที่พมิ พ์ ตารางผเู้ ขียนมีคอลมั น์สาหรับรหสั ผูเ้ ขียนและช่ือผเู้ ขียน และ
สุดทา้ ยตาราง ISBN ของผเู้ ขียนมีคอลมั น์สาหรับรหสั ผเู้ ขยี นและ ISBN โมเดลเชิงสมั พนั ธ์ถูกออกแบบมา
เพอื่ ทาใหฐ้ านขอ้ มูลสามารถบงั คบั ใชค้ วามสมบูรณ์อา้ งอิงระหวา่ งตารางต่างๆ ในฐานขอ้ มลู ปรับใหเ้ ป็ นปกติ
เพ่อื ลดความ์้า์อ้ น และลดร้ ับการปรับปรุงประสิทธิภาพสาหรับพ้ืนที่จดั เก็บอยา่ งทวั่ ถึง

ในฐานขอ้ มลู NOSQL บนั ทึกหนงั สือมกั จะถกู จดั เกบ็ เป็ นเอกสาร JSON สาหรับหนงั สือแต่ละเล่ม
รายการ, ISBN, ชื่อหนงั สือ, คร้ังที่พิมพ,์ ช่ือผเู้ ขียน และรหสั ผเู้ ขียนจะถูกจดั เก็บเป็นคุณลกั ษณะในเอกสาร
เดียว ในโมเดลน้ี ขอ้ มูลลดร้ ับการปรับปรุงประสิทธิภาพสาหรับการพฒั นาท่ีง่ายและความสามารถในการปรับ
ขนาดแนวนอน

ทาลมคุณจึงควรใชฐ้ านขอ้ มลู NOSQL
ฐานขอ้ มูล NOSQL เหมาะมากสาหรับแอปพลิเคชนั สมยั ใหม่ เช่น อปุ กรณ์เคลื่อนที่ เวบ็ และเกมที่จาเป็ นตอ้ งมี
ฐานขอ้ มูลท่ียดื หยนุ่ ปรับขนาดลด้ ประสิทธิภาพสูง และทางานลดด้ ีเยย่ี มเพือ่ มอบประสบการณ์ผใู้ ชท้ ่ียอดเยยี่ ม
- ความยดื หยนุ่ : โดยทวั่ ลป ฐานขอ้ มลู NOSQL จะมีแบบแผนยดื หยนุ่ ท่ีทาใหก้ ารพฒั นาเกิดข้ึนเร็วและทา์้า
คาสง่ั ลดด้ ียงิ่ ข้ึนกวา่ เดิม โมเดลขอ้ มูลที่ยดื หยนุ่ ทาใหฐ้ านขอ้ มูล NOSQL เหมาะสมท่ีสุดสาหรับขอ้ มูลแบบก่ึงมี
โครงสร้างและลมม่ ีโครงสร้าง

ความสามารถในการปรับขนาด: โดยทว่ั ลป ฐานขอ้ มูล NOSQL มกั ถูกออกแบบมาใหป้ รับขนาดออกลดโ้ ดย
ใชค้ ลสั เตอร์แบบกระจายของฮาร์ดแวร์แทนการปรับขนาดข้นึ โดยเพิม่ เ์ิร์ฟเวอร์ท่ีมีราคาแพงและมีประสิทธิภาพ
สูง ผใู้ หบ้ ริการระบบคลาวดบ์ างเจา้ จดั การปฏิบตั ิการน้ีอยเู่ บ้ืองหลงั ในแบบบริการท่ีมีการจดั การเตม็ รูปแบบ
- ประสิทธิภาพสูง: ฐานขอ้ มูล NOSQL ลดร้ ับการปรับปรุงประสิทธิภาพสาหรับโมเดลขอ้ มูลบางโมเดล และ
เขา้ ถึงรูปแบบที่เปิ ดใชง้ านประสิทธิภาพท่ีสูงกวา่ การพยายามดาเนินการทางานที่คลา้ ยกนั ดว้ ยฐานขอ้ มูลเชิง
สมั พนั ธ์

- ทางานลดด้ ีเยยี่ ม: ฐานขอ้ มูล NOSQL มี API การทางานและประเภทขอ้ มลู ท่ีสร้างตามวตั ถปุ ระสงคส์ าหรับ
โมเดลขอ้ มลู แต่ละโมเดลท่ีสอดคลอ้ งกนั

ประเภทฐานขอ้ มูล NOSQL

• คีย-์ ค่า:ฐานขอ้ มูลคีย-์ คา่ สามารถแบ่งพาร์ติชนั ลดด้ ีและสามารถปรับขนาดแนวนอนลดต้ ามขนาดท่ีตอ้ งการ์่ึงฐานขอ้ มูลประเภทอ่ืนลม่
สามารถทาลด้ กรณีใชง้ าน เช่น สาหรับเล่นเกม เทคโนโลยโี ฆษณา และ IoT ทาใหฐ้ านขอ้ มูลประเภทน้ีเหมาะสาหรับโมเดลขอ้ มูลแบบ
คีย-์ ค่ามากอยา่ งยง่ิ Amazon DynamoDB ถูกออกแบบมาเพื่อมอบเวลาแฝงสม่าเสมอที่นานเพียงหน่วยมิลลิวินาทีหลกั เดียว
สาหรับปริมาณงานทุกขนาด ประสิทธิภาพท่ีสม่าเสมอน้ีเป็นสาเหตุสาคญั ท่ีคุณสมบตั ิ Snapchat Stories ์่ึงมีปริมาณการเขียน
ขอ้ มูลในพ้นื ท่ีจดั เกบ็ ขนาดใหญ่ที่สุดของ Snapchat จึงยา้ ยลปยงั DynamoDB

• เอกสาร: ในโคด้ แอปพลิเคชนั มกั จะมีการแสดงขอ้ มูลเป็นวตั ถุ หรือเอกสารท่ีคลา้ ย JSON เน่ืองจากเป็นโมเดลขอ้ มูลที่มีประสิทธิภาพ
และใชง้ านงา่ ยสาหรับ Developer ฐานขอ้ มูลแบบเอกสารช่วยให้ Developer จดั เกบ็ และสืบคน้ ขอ้ มูลในฐานขอ้ มูลลดง้ ่ายข้นึ
โดยใชร้ ูปแบบโมเดลเอกสารเดียวกนั ที่ใชใ้ นโคด้ แอปพลิเคชนั ลกั ษณะท่ียดื หยนุ่ เป็นก่ึงโครงสร้าง และเป็นลาดบั ข้นั ของเอกสารและ
ฐานขอ้ มูลเอกสาร ทาใหเ้ กิดการพฒั นาพร้อมกบั ความตอ้ งการของแอปพลิเคชนั โมเดลเอกสารทางานกบั แคตตาลอ็ ก โปรลฟลผ์ ูใ้ ช้ และ
ระบบการจดั การเน้ือหาลดเ้ ป็นอยา่ งดี โดยที่แตล่ ะเอกสารแตกต่างกนั และพฒั นาอยา่ งตอ่ เนื่อง Amazon DocumentDB (พร้อม
การใชร้ ่วมกบั MongoDB) และ MongoDB เป็นฐานขอ้ มูลเอกสารที่ลดร้ ับความนิยม์่ึงช่วยให้ API มีประสิทธิภาพและใชง้ าน
งา่ ยสาหรับการพฒั นาท่ียดื หยนุ่ และมีการทา์้า

• กราฟ: วตั ถุประสงคข์ องฐานขอ้ มูลแบบกราฟคือเพ่อื ให้การสร้างและการเรียกใชแ้ อปพลิเคชนั ที่ทางานกบั ชุดขอ้ มูลที่เช่ือมตอ่
อยา่ งดีเยย่ี มเกิดข้ึนลดอ้ ยา่ งง่ายดาย กรณีใชง้ านโดยทว่ั ลปสาหรับฐานขอ้ มลู แบบกราฟรวมถึงเครือข่ายทางสงั คม กลลก
ขอ้ เสนอแนะ การตรวจจบั การปลอมแปลง และกราฟความรู้ Amazon Neptune คือบริการฐานขอ้ มูลแบบกราฟที่
ลดร้ ับการจดั การอยา่ งเตม็ รูปแบบ Neptune รองรับท้งั โมเดล Property Graph และ Resource
Description Framework (RDF) และมอบตวั เลือก API แบบกราฟสองรายการนนั่ กค็ ือ TinkerPop และ
RDF/SPARQL ฐานขอ้ มลู แบบกราฟยอดนิยมรวมถึง Neo4j และ Giraph

• ภายในหน่วยความจา: แอปพลิเคชนั สาหรับเกมและเทคโนโลยโี ฆษณามีกรณีใชง้ าน เช่น บอร์ดผนู้ า การจดั เกบ็ เ์สชนั และ
การวเิ คราะห์แบบใกลเ้ คียงเวลาจริงที่จาเป็นตอ้ งใชเ้ วลาในการตอบสนองเป็นมิลลิวินาทีและมีปริมาณการใช้งานขนาดใหญใ่ น
การรับส่งขอ้ มลู ท่ีอาจเกิดข้ึนลดต้ ลอดเวลา Amazon ElastiCache เสนอ Memcached และ Redis เพ่อื ใชก้ บั
ปริมาณงานที่มีเวลาแฝงต่าและปริมาณการประมวลผลสูง เช่น McDonald’s ์่ึงลม่สามารถใชก้ ารจดั เกบ็ ขอ้ มลู แบบดิสก์
ลด้ Amazon DynamoDB Accelerator (DAX) เป็นอีกหน่ึงตวั อยา่ งของการจดั เกบ็ ขอ้ มลู ท่ีสร้างตาม
วตั ถุประสงค์ DAX ทาให้ DynamoDB อ่านลาดบั ของขนาดลดเ้ ร็วข้ึน

แหล่งอา้ งอิง

https://1th.me/ue82f
https://aws.amazon.com/th/nosql/


Click to View FlipBook Version