โมเดลข้อมูลเชิงสัมพันธ์เป็นวิธีที่ไม่ซ้ำกันในการจัดการพารามิเตอร์โดยใช้โครงสร้างและภาษาตามตรรกะเพรดิเคตลำดับเดียว มันถูกอธิบายครั้งแรกในปี 1969 โดย Codd นักวิทยาศาสตร์ชาวอังกฤษ ในโปรเจ็กต์นี้ พารามิเตอร์ทั้งหมดจะแสดงเป็นทูเพิลที่จัดกลุ่มในความสัมพันธ์บางอย่าง
วัตถุประสงค์ของแบบจำลองข้อมูลเชิงสัมพันธ์…
…คือการจัดเตรียมวิธีการประกาศสำหรับการระบุรุ่นและแบบสอบถาม
ผู้ใช้จะสังเกตได้โดยตรงว่าฐานข้อมูลประกอบด้วยข้อมูลใดและทฤษฎีใดที่พวกเขาต้องการจากฐานข้อมูล และยังให้ซอฟต์แวร์จัดการฐานข้อมูลดูแลอธิบายโครงสร้างที่จะจัดเก็บ ขั้นตอนการดึงข้อมูลเพื่อตอบสนองคำขอก็มีความสำคัญเช่นกัน
RDB ส่วนใหญ่ใช้คำจำกัดความของข้อมูล SQL และภาษาในการค้นหา ระบบเหล่านี้ใช้สิ่งที่สามารถเห็นได้ว่าเป็นการประมาณทางวิศวกรรมกับโมเดลเชิงสัมพันธ์
ตารางในสคีมาฐานข้อมูล SQL สอดคล้องกับตัวแปรเพรดิเคต ข้อจำกัดของคีย์และการสืบค้น SQL ตรงกับเพรดิเคต
อย่างไรก็ตาม ฐานข้อมูลดังกล่าวเบี่ยงเบนจากโมเดลเชิงสัมพันธ์ในรายละเอียดมากมาย และ Codd ได้คัดค้านการเปลี่ยนแปลงอย่างรุนแรงที่ประนีประนอมกับหลักการดั้งเดิม
ภาพรวม
แนวคิดหลักของโมเดลข้อมูลเชิงสัมพันธ์คือคำอธิบายของฐานข้อมูลทั้งหมดเป็นชุดของเพรดิเคตสำหรับองค์ประกอบสุดท้ายของตัวแปร อธิบายข้อจำกัดเกี่ยวกับค่าที่เป็นไปได้และการรวมกันของพวกมัน เนื้อหาในช่วงเวลาใดก็ตามถือเป็นรูปแบบสุดท้าย (เชิงตรรกะ) นั่นคือ ชุดของความสัมพันธ์ หนึ่งชุดต่อตัวแปรเพรดิเคต เพื่อให้ส่วนประกอบทั้งหมดเป็นที่พอใจ นี่คือโมเดลข้อมูลเชิงสัมพันธ์
ทางเลือก
รุ่นอื่นๆ เป็นระบบแบบลำดับชั้นและระบบเครือข่าย บางส่วนที่ใช้สถาปัตยกรรมแบบเก่ายังคงได้รับความนิยมในศูนย์ข้อมูลที่มีความจุสูง หรือในกรณีที่ระบบที่มีอยู่ซับซ้อนและเป็นนามธรรมมากจนการเปลี่ยนไปใช้ระบบเหล่านี้โดยใช้แบบจำลองเชิงสัมพันธ์จะมีราคาแพงมาก และที่น่าสังเกตคือฐานข้อมูลเชิงวัตถุใหม่
การนำไปใช้
มีความพยายามที่จะทำให้เป็นจริงของ RMD หลายครั้ง ซึ่งเดิมกำหนดโดย Codd และอธิบายโดยผู้อื่นนักวิทยาศาสตร์
รูปแบบการแสดงข้อมูลเชิงสัมพันธ์เป็นรูปแบบหลัก ซึ่งอธิบายไว้ในเงื่อนไขทางคณิตศาสตร์ที่เป็นทางการ ฐานลำดับชั้นและเครือข่ายมีอยู่ก่อนระบบเชิงสัมพันธ์ แต่ข้อกำหนดของพวกมันค่อนข้างไม่เป็นทางการ เมื่อกำหนด RMD แล้ว มีความพยายามหลายครั้งเพื่อเปรียบเทียบและเปรียบเทียบแบบจำลองต่างๆ ซึ่งทำให้มีการอธิบายระบบในยุคแรกๆ ที่เข้มงวดยิ่งขึ้น แม้ว่าลักษณะขั้นตอนของอินเทอร์เฟซการจัดการข้อมูลสำหรับฐานข้อมูลแบบลำดับชั้นและเครือข่ายจะจำกัดความเป็นไปได้ในการทำให้เป็นทางการ
ธีม
สมมติฐานพื้นฐานเกี่ยวกับแนวคิดของโมเดลข้อมูลเชิงสัมพันธ์คือพวกมันทั้งหมดถูกแทนด้วย "p" ทางคณิตศาสตร์ - ความสัมพันธ์ทั่วไป "Cn" - ความสัมพันธ์แบบคู่ ซึ่งเป็นเซตย่อยในผลคูณคาร์ทีเซียนของหลาย ๆ โดเมน ในรูปแบบทางคณิตศาสตร์ การให้เหตุผลเกี่ยวกับข้อมูลดังกล่าวจะดำเนินการในตรรกะภาคแสดงสองค่า ซึ่งหมายความว่าสำหรับแต่ละประโยคมีการประเมินที่เป็นไปได้สองแบบ: จริงหรือเท็จ (และไม่มีค่าที่สาม เช่น ไม่ทราบหรือไม่เกี่ยวข้อง ซึ่งแต่ละข้อมักเกี่ยวข้องกับแนวคิด 0) ข้อมูลถูกประมวลผลโดยใช้แคลคูลัสหรือพีชคณิตซึ่งเทียบเท่ากับกำลังแสดง
ประเภทของโมเดลข้อมูล โมเดลข้อมูลเชิงสัมพันธ์
RMD อนุญาตให้นักพัฒนาสร้างมุมมองข้อมูลที่สอดคล้องกันและสมเหตุสมผล ทั้งหมดนี้ทำได้โดยการรวมข้อจำกัดที่ระบุไว้ในการออกแบบฐานข้อมูล โดยทั่วไปจะเรียกว่าสคีมาแบบลอจิคัล ทฤษฎีคือการพัฒนากระบวนการการทำให้เป็นมาตรฐานของแบบจำลอง โดยการออกแบบที่มีคุณสมบัติที่ต้องการบางอย่างสามารถเลือกได้จากชุดทางเลือกที่เทียบเท่าทางตรรกะ ในแผนการเข้าถึงและการนำไปใช้และการดำเนินการอื่นๆ รายละเอียดจะได้รับการจัดการโดยกลไกจัดการ DBMS และจะไม่สะท้อนให้เห็นในแบบจำลองเชิงตรรกะ ซึ่งตรงกันข้ามกับแนวทางปฏิบัติทั่วไปที่การปรับประสิทธิภาพมักจะต้องมีการเปลี่ยนแปลงฟังก์ชันลอจิก
โมเดลข้อมูลเชิงสัมพันธ์พื้นฐานแสดงถึงบล็อคส่วนประกอบ - เป็นโดเมนหรือประเภทของข้อมูล ปกติแล้วจะลดให้เหลือน้อยที่สุด ทูเพิลคือชุดของค่าแอ็ตทริบิวต์ที่เรียงลำดับ และพวกเขาก็เป็นคู่ของชื่อและประเภทร่วมกัน อาจเป็นค่าสเกลาร์หรือค่าที่ซับซ้อนกว่าก็ได้
ความสัมพันธ์ประกอบด้วยส่วนหัวและเนื้อหา
อันแรกคือชุดของคุณสมบัติ
ร่างกาย (มีความสัมพันธ์ที่ n) เป็นชุดของสิ่งอันดับ
ส่วนหัวสัมผัสเป็นเรื่องของแต่ละโครงสร้างด้วย
โมเดลข้อมูลเชิงสัมพันธ์ถูกกำหนดให้เป็นชุดของ n-tuples ทั้งในวิชาคณิตศาสตร์และ MRD ชุดคือชุดขององค์ประกอบที่ไม่ซ้ำกันที่ไม่เรียงลำดับแบบไม่เรียงลำดับ แม้ว่า DBMS บางตัวจะกำหนดลำดับในข้อมูล ในวิชาคณิตศาสตร์ ทูเพิลมีลำดับและอนุญาตให้ทำซ้ำได้ เดิมที E. F. Codd ตั้งค่า tuples โดยใช้คำจำกัดความทางคณิตศาสตร์นี้
ต่อมาหนึ่งในแนวคิดที่ยอดเยี่ยมของ E. F. Codd คือการใช้ชื่อแอตทริบิวต์แทนการสั่งซื้อจะสะดวกกว่ามาก (โดยทั่วไปกรณี) ในภาษาคอมพิวเตอร์ตามความสัมพันธ์ คำสั่งนี้ยังคงมีประโยชน์ในปัจจุบัน แม้ว่าแนวคิดจะเปลี่ยนไป แต่ชื่อ "ทูเพิล" ยังไม่เปลี่ยนแปลง ผลที่ตามมาทันทีและที่สำคัญของความแตกต่างนี้คือในรูปแบบเชิงสัมพันธ์ ผลิตภัณฑ์คาร์ทีเซียนจะกลายเป็นสับเปลี่ยน
ตารางคือการแสดงความสัมพันธ์แบบเห็นภาพทั่วไป ทูเพิลคล้ายกับแนวคิดของสตริง
Relvar เป็นตัวแปรที่มีชื่อของแทนเจนต์บางประเภทซึ่งมีการกำหนดความสัมพันธ์ของประเภทนั้นตลอดเวลา แม้ว่าการจ้องมองอาจมีค่า null ทูเพิล
พื้นฐานของโมเดลข้อมูลเชิงสัมพันธ์: ข้อมูลทั้งหมดแสดงด้วยค่าข้อมูลในความสัมพันธ์ ตามหลักการนี้ ฐานเชิงสัมพันธ์คือชุดของ relvars และผลลัพธ์ของแต่ละแบบสอบถามจะแสดงเป็นสัมผัส
ความสอดคล้องของฐานข้อมูลเชิงสัมพันธ์ไม่ได้บังคับใช้โดยกฎที่สร้างขึ้นในแอปพลิเคชันที่ใช้ แต่โดยข้อจำกัดที่ประกาศเป็นส่วนหนึ่งของสคีมาเชิงตรรกะและบังคับใช้โดย DBMS สำหรับแอปพลิเคชันทั้งหมด มีการแสดงข้อจำกัดในการใช้ตัวดำเนินการเปรียบเทียบเชิงสัมพันธ์ ซึ่งมีเพียงตัวเดียวเท่านั้นที่เป็นเซตย่อย (⊆) ในทางทฤษฎีก็เพียงพอแล้ว ในทางปฏิบัติ คาดว่าจะมีทางลัดที่มีประโยชน์หลายอย่าง ซึ่งคีย์ตัวเลือกและข้อจำกัดของแหล่งข้อมูลภายนอกมีความสำคัญที่สุด นี่คือสิ่งที่โมเดลข้อมูลเชิงสัมพันธ์เป็นเรื่องเกี่ยวกับ
ล่าม
เพื่อชื่นชม RMD อย่างเต็มที่ จำเป็นต้องเข้าใจการตีความที่ตั้งใจไว้เป็นความสัมพันธ์
ร่างกายของการสัมผัสบางครั้งเรียกว่าส่วนขยาย นี่เป็นเพราะว่าควรตีความว่าเป็นการแสดงการเพิ่มขึ้นในเพรดิเคตบางตัว นี่คือชุดของประโยคจริงที่สามารถเกิดขึ้นได้โดยการแทนที่ตัวแปรอิสระแต่ละตัวด้วยชื่อ
มีความสอดคล้องกันแบบหนึ่งต่อหนึ่งระหว่างแบบจำลองข้อมูลเชิงสัมพันธ์เชิงวัตถุ ทูเพิลของเนื้อหาความสัมพันธ์แต่ละอันให้ค่าแอตทริบิวต์เพื่อสร้างตัวอย่างเพรดิเคตโดยการแทนที่ตัวแปรอิสระแต่ละตัวของมัน ผลลัพธ์คือข้อความที่ถือว่าเป็นจริงเนื่องจากการเกิดขึ้นของทูเพิลในเนื้อหาของความสัมพันธ์ ในทางกลับกัน ทุกกระบวนการที่มีชื่อตรงกับชื่อความสัมพันธ์แต่ไม่ปรากฏในเนื้อหาถือเป็นเท็จ
สมมติฐานนี้เรียกว่า สมมติฐานโลกปิด มักถูกละเมิดในฐานข้อมูลเชิงปฏิบัติ ซึ่งการไม่มีทูเพิลอาจหมายความว่าไม่ทราบความจริงของประโยคที่เกี่ยวข้อง ตัวอย่างเช่น การไม่มีคำศัพท์บางคำ ("John", "Spanish") ในแผนภูมิทักษะทางภาษาอาจไม่จำเป็นต้องเป็นข้อพิสูจน์ว่าเด็กชายชื่อ John ไม่ได้พูดภาษาสเปน
การประยุกต์ใช้กับฐานข้อมูล ทฤษฎีการทำให้เป็นมาตรฐาน
หัวเรื่องข้อมูลที่ใช้ใน RDM เชิงสัมพันธ์ทั่วไปอาจเป็นชุดของจำนวนเต็ม ชุดของสตริงอักขระที่ประกอบเป็นวันที่ หรือบูลีนสองตัวที่เป็นจริงและเท็จ และอื่นๆ ชื่อเรื่องที่สอดคล้องกันสำหรับตัวเลขเหล่านี้สามารถเป็นสตริงที่มีชื่อ "ดัชนี", "ทำงานที่จำเป็น","เวลา", "บูลีน" และอื่นๆ เป็นต้น
อย่างไรก็ตาม สิ่งสำคัญคือต้องเข้าใจว่าทฤษฎีเชิงสัมพันธ์ไม่ได้ระบุว่าควรสนับสนุนประเภทใด และเป็นความจริง ขณะนี้คาดว่าข้อกำหนดจะพร้อมใช้งานสำหรับเอนทิตีที่กำหนดเองนอกเหนือจากที่มีอยู่ภายในที่ระบบให้มา
คุณสมบัติ
นี่คือคำที่ใช้ในทฤษฎีสำหรับสิ่งที่เรียกว่าคอลัมน์ ในทำนองเดียวกัน ตารางมักใช้แทนคำว่า tangency ในทางทฤษฎี (แม้ว่าจะไม่ได้มีความหมายเหมือนกันกับความสัมพันธ์ใน SQL) โครงสร้างข้อมูลของตารางถูกระบุเป็นรายการคำจำกัดความของคอลัมน์ โดยแต่ละรายการจะมีชื่อคอลัมน์ที่ไม่ซ้ำกันและประเภทของค่าที่อนุญาต
ค่าแอตทริบิวต์คือรายการในตำแหน่งเฉพาะ เช่น John Doe และ 35
ทูเพิลนั้นเหมือนกับแถว ยกเว้นว่าใน SQL RDBMS ที่ความหมายของคอลัมน์ในแถวเรียงกัน ทูเพิลจะไม่ถูกแยกจากกัน แต่ค่าคำจำกัดความแต่ละค่าจะถูกระบุด้วยชื่อเท่านั้น ไม่ใช่โดยตำแหน่งลำดับในทูเปิล ชื่อแอตทริบิวต์สามารถเป็น Name หรือ Age
ทัศนคติ
มันคือตารางการกำหนดโครงสร้างพร้อมกับลักษณะของข้อมูลในโครงสร้างนั้น คำจำกัดความคือส่วนหัว และข้อมูลในนั้นคือเนื้อหา ซึ่งเป็นชุดของแถว ตัวแปรความสัมพันธ์มักจะเรียกว่าตารางหลัก ชื่อของค่าที่กำหนดให้กับมันในทุกเวลาตรงกับที่ระบุในเซลล์ที่กำหนด และเนื้อความตรงกับที่ได้รับมอบหมายล่าสุด โดยเรียกใช้คำสั่งอัปเดตบางคำสั่ง (โดยปกติคือ INSERT, UPDATE หรือ DELETE)
ตั้งทฤษฎีสูตร
แนวคิดพื้นฐานในรูปแบบความสัมพันธ์คือชื่อและชื่อของแอตทริบิวต์ ต้องแสดงเป็นสตริงเช่น "บุคคล" และ "ชื่อ" และมักจะต้องใช้ตัวแปรเพื่อขยาย แนวคิดพื้นฐานอีกประการหนึ่งคือชุดของค่าอะตอมที่มีความหมายที่จำเป็นและสำคัญ เช่น ตัวเลขและสตริง