การออกแบบฐานข้อมูล: ขั้นตอนและพื้นฐาน

สารบัญ:

การออกแบบฐานข้อมูล: ขั้นตอนและพื้นฐาน
การออกแบบฐานข้อมูล: ขั้นตอนและพื้นฐาน
Anonim

การออกแบบฐานข้อมูลเป็นกระบวนการต่อเนื่องในการปรับความรู้และเครื่องมือที่มีอยู่เพื่อเป็นตัวแทนและประมวลผลข้อมูล

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

ฐานข้อมูลสมัยใหม่

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

ขั้นตอนการออกแบบฐานข้อมูล
ขั้นตอนการออกแบบฐานข้อมูล

ตาราง Excel ไม่แตกต่างจาก Oracle และ MySQL ในบริบทของโครงสร้างสี่เหลี่ยม (เชิงสัมพันธ์): คอลัมน์และแถว=หนึ่งเซลล์ที่จุดตัดของชื่อคอลัมน์ (ฟิลด์) และดัชนีการเลือก (แถว) ถ้าคุณไม่คำนึงถึงการวัดผลและปริมาณการใช้แรงงาน ด้วยวิธีการที่พัฒนาขึ้นในการรวมเซลล์ในแนวตั้งและแนวนอน Excel นั้นนำหน้าแม้แต่ Oracle!

Excel ตามแนวคิดพื้นฐานของมัน ไม่เคย "ส่องแสง" ไดนามิก ฟังก์ชันการทำงานของ Oracle และไม่สามารถถ่ายโอนบางสิ่งจากแผ่นงานหนึ่งไปยังอีกแผ่นหนึ่ง "ตามเศษที่เหลือ" ในที่นี้ Oracle มีแนวโน้มมากกว่า แต่การพิจารณาประเด็นเรื่องการย้ายข้อมูลจำนวนมากและการรวมตำแหน่งที่เป็นทางการจากแหล่งต่างๆ กลับเป็นที่ต้องการอย่างมาก MySQL มีแนวโน้มดีกว่า: มันไม่ได้กำหนดงานทั่วโลก แต่ทำงานได้อย่างสมบูรณ์

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

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

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

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

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

ขอบเขต แนวทางแก้ไขและอุปสรรคที่เป็นไปได้

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

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

การออกแบบฐานข้อมูลเชิงสัมพันธ์
การออกแบบฐานข้อมูลเชิงสัมพันธ์

แน่นอน ลูกค้าชำระเงินและรหัสเว็บไซต์เป็นทรัพย์สินของเขา ลักษณะเฉพาะของความทันสมัย: การถ่ายทอดความรู้และการพัฒนาระหว่างงานประเภทเดียวกันและสาขาที่เกี่ยวข้องเป็นไปไม่ได้ และนี่คือปัญหา

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

การวิเคราะห์คำหลักยังเกี่ยวข้องกับความจำเป็นในการสร้างโซลูชันที่เหมาะสม แต่การออกแบบฐานข้อมูลใน Access อาจมีแนวโน้มมากกว่าใน MS SQL Server หรือ Oracle

รายการแหล่งข้อมูลสามารถเปลี่ยนแปลงได้ ไดนามิกสามารถมีอยู่ในตารางฐานข้อมูลต้นทาง ชื่อฟิลด์ตาราง และกฎการโทร (คิวรี) การออกแบบฐานข้อมูลเชิงสัมพันธ์จากหลายแหล่งอย่างชัดเจนบังคับให้คุณออกแบบจากข้อมูลต้นทาง ไม่ใช่จากองค์กรที่เหมาะสมที่สุดของข้อมูลที่รวบรวม

มีสองสิ่งที่อยู่ในฐานข้อมูลใดๆ:

  • การวางแนวเนื้อหา อัลกอริธึมการสร้างฐานข้อมูลแบบไดนามิกในลำดับความสำคัญ
  • ทิศทางการใช้งาน โครงสร้างของฐานข้อมูลมีความสำคัญมากกว่า และอัลกอริทึมสำหรับการใช้ข้อมูลก็ยึดตามนั้น

ในแอปพลิเคชันใดๆ จะมีรูปแบบที่เป็นทางการของการไหลของข้อมูลที่เข้ามา รูปแบบการจัดเก็บข้อมูล - การออกแบบที่แท้จริงของฐานข้อมูลและแบบจำลอง (อัลกอริทึม) สำหรับการใช้ข้อมูล

ขั้นตอนการออกแบบและขั้นตอนต่างๆ

พื้นฐานของการออกแบบฐานข้อมูลมักจะแบ่งออกเป็นสามขั้นตอน ผู้เชี่ยวชาญต่างกล่าวถึงขั้นตอนการทำงานในรูปแบบต่างๆ แต่ในความเป็นจริง มีสามตำแหน่ง:

  • การวางแผนแนวคิด;
  • การออกแบบเชิงตรรกะ
  • การดำเนินการทางเทคนิค

การฝึกฝนก่อให้เกิดประเพณีที่เป็นที่ยอมรับ ไม่ว่าขอบเขตและปัญหาจะซับซ้อนเพียงใด มันต้องใช้เวลาเลือกสิ่งที่ถูกต้องเสมอเครื่องมือ ตัวอย่างเช่น คุณต้องรวบรวมข้อมูลจากผู้เยี่ยมชมแหล่งข้อมูลบนเว็บ แต่คุณต้องเปรียบเทียบกับข้อมูลจาก MS SQL Server ทรัพยากรบนเว็บโฮสต์บน FreeBSD (อินเทอร์เน็ต, เซิร์ฟเวอร์ Apache) และ MS SQL Server ในเมืองอื่นมีให้ใช้งานผ่านเครือข่ายแบบกระจายของบริษัท

พื้นฐานการออกแบบฐานข้อมูล
พื้นฐานการออกแบบฐานข้อมูล

ในโซลูชันนี้ ก่อนอื่นคุณต้องแก้ปัญหาเฉพาะ: เพื่อสร้างการแลกเปลี่ยนข้อมูลกับเซิร์ฟเวอร์ภายใน

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

เมื่อเร็ว ๆ นี้ นักทฤษฎีและผู้ปฏิบัติงานจำนวนมากดำเนินการกับหน่วยงานต่างๆ เป็นข้อมูลพิเศษ สิ่งเหล่านี้เป็นนามธรรมที่ให้คุณอธิบายรูปแบบของข้อมูลที่อินพุต ระหว่างการประมวลผล และในผลลัพธ์สุดท้าย - ฐานข้อมูล

มุมมองข้อมูลและเอนทิตี

ออกแบบDB ผ่านนามธรรมและเอนทิตี: ความสามารถในการสร้างรูปภาพข้อมูล กำหนดประเภทข้อมูลและความสัมพันธ์ระหว่างพวกเขา

โดยปกติการออกแบบโมเดลฐานข้อมูลดังกล่าวจะลงท้ายด้วยโมเดลกราฟิก โดยใช้ MS Visio หรือเครื่องมือภาพของ DBMS ที่เลือก Access มีวิธีการสร้างภาพข้อมูลเป็นของตัวเอง MySQL มีของตัวเอง และระบบการจัดการเนื้อหาบางระบบซ่อนฐานข้อมูลทั้งหมด กำหนดรูปแบบข้อมูลให้กับผู้พัฒนาผ่านเอนทิตีของตนเอง -วัตถุของงานที่กำลังแก้ไข

คุณลักษณะเฉพาะของระบบจัดการเนื้อหาจำนวนมาก (CMS) คือพวกเขาสร้าง "แอปพลิเคชัน" สำหรับระดับนามธรรมที่มากขึ้นเมื่ออธิบายพื้นที่ข้อมูลของปัญหาที่กำลังแก้ไข ฐานข้อมูลที่แท้จริงถูกซ่อนไว้ CMS เสนอให้นักพัฒนามีแนวคิดเกี่ยวกับภาพข้อมูลของโลก

ด้วยเหตุนี้ ขั้นตอนของการออกแบบฐานข้อมูลจึงลดลงตามข้อกำหนดพื้นฐานและการดำเนินการตามขั้นตอนที่เสนอโดยผู้สร้าง CMS เฉพาะ ไม่มีอะไรน่าละอายในการใช้แนวคิดของฐานข้อมูลและการออกแบบจาก Symfony หรือ Bitrix, Zend หรือ Yii แต่สำหรับนักพัฒนา มันคือ "ภาระ"

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

การออกแบบฐานข้อมูล
การออกแบบฐานข้อมูล

เหมาะสำหรับนักพัฒนาที่ได้รับการรับรองจาก Oracle แต่เป็นที่ยอมรับอย่างสมบูรณ์สำหรับคุณสมบัติของนักพัฒนา ในการรวมข้อมูลเชิงลึกเกี่ยวกับแนวคิดด้านข้อมูลของ Oracle และความรู้ในการทำงานของแอปพลิเคชัน MySQL

ในโครงการที่ซับซ้อนและการประมวลผลข้อมูลแบบกระจาย ฐานข้อมูลไม่เพียงมีความสำคัญ แต่ยังรวมถึงแหล่งข้อมูล แนวคิดเกี่ยวกับความต้องการของผู้บริโภคด้วย

สเตจหรือทีม: สมดุลของลำดับความสำคัญ

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

  • เป็นระบบ;
  • phasing;
  • ข้อเสนอแนะจากจุดใดเวลาหนึ่งไปยังตำแหน่งเริ่มต้น

บทบัญญัติเหล่านี้เป็นนามธรรม แต่มีอยู่ในเทคโนโลยีเชิงทฤษฎีและเชิงปฏิบัติสำหรับการสร้างฐานข้อมูลที่มีประสิทธิภาพ

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

สิ่งที่สำคัญกว่า: กราฟิกที่สวยงามในการนำเสนอโครงสร้างฐานข้อมูลหรือคำอธิบายที่ถูกต้องของการไหลของข้อมูลในไดนามิก - ไม่ใช่แค่เรื่องงานและขอบเขตเท่านั้น แต่ยังรวมถึงความคิดเห็นของทีมพัฒนาในไดนามิกด้วย

การออกแบบโครงสร้างฐานข้อมูล
การออกแบบโครงสร้างฐานข้อมูล

บุคลากรคือทุกสิ่ง แต่ในบริบท: การออกแบบแนวคิดของฐานข้อมูลคือคุณสมบัติทุกอย่าง ทุกคนล้วนมีเอกลักษณ์เฉพาะตัว และในด้านระบบข้อมูล ตัวแทนของบุคคลที่เจาะจงมีอยู่และพัฒนา

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

ย้อนกลับได้ มี Excel และ Access และข้อมูล "มากมาย" ในรูปแบบเหล่านี้ตั้งแต่สมัยโบราณ เมื่อ Windows for Workgoups ยังมีชีวิตอยู่และดี ข้อมูล dBase และ Quattro ยังคงอยู่บางส่วน วันนี้คำเหล่านี้ถูกลืมไปแล้ว แต่ข้อมูลยังคงเป็นที่ต้องการและจำเป็นต้องสกัดและสร้างแนวคิดใหม่

เก่าและใหม่: ความสมดุลของความรู้

เทคโนโลยีคลาวด์ไม่เหมือนกับฐานข้อมูลที่ Ashton-Tate ทำ สิ่งที่ Oracle เคยซื้อไม่สามารถเทียบได้กับสิ่งที่ทำในทุกวันนี้ แต่ตัวแปร อัลกอริธึม ฟังก์ชัน ลูปและเงื่อนไขต่างๆ ยังคงอยู่ในการเขียนโปรแกรมตั้งแต่ช่วงต้นทศวรรษที่ 80 เว้นแต่แนวคิดของขั้นตอนจะจมลงในความหลงลืมและทุกอย่างยังคงเหมือนเดิมในสมัยโบราณ

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

สิ่งที่ต้องทำ - การเขียนโปรแกรมเป็นแบบเฉื่อย และการจัดรูปแบบข้อมูลและการออกแบบฐานข้อมูลให้เป็นแบบแผนนั้นเป็นกระบวนการมากกว่าผลลัพธ์ งานที่จัดฉากเป็นข้อกำหนดเบื้องต้นสำหรับการบรรลุผล แต่ใครล่ะที่นับจำนวนการวนซ้ำตั้งแต่ขั้นกลางจนเกือบเริ่มงาน?

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

การออกแบบฐานข้อมูลเชิงตรรกะ
การออกแบบฐานข้อมูลเชิงตรรกะ

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

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

การพัฒนาตามลำดับและ/หรือกระโดดสูง

Windows ไม่ใช่ฐานข้อมูล แต่มีของที่ระลึก - รีจิสตรี ไฟล์โฮสต์เป็นเพียงการระบุที่อยู่ IP ของเครื่องท้องถิ่นและชื่อสัญลักษณ์ แต่ผ่านไฟล์นี้ ข้อมูลจะไหลจากโดเมนที่ต่างกันหรือไปยัง DBMS ที่แตกต่างกัน

สามารถเข้าใจ Windows แบบหลายด้านได้ในฐานะคอมพิวเตอร์หรือเซิร์ฟเวอร์ที่ใช้งานได้ แต่จะไม่สามารถปรับตรรกะของเวอร์ชันของผลิตภัณฑ์นี้ได้ PHP ไม่ใช่ฐานข้อมูลเช่นกัน แต่ข้อโต้แย้งของนักพัฒนาว่าทำไมเวอร์ชัน 5 ต่อจากเวอร์ชัน 7 ทันทีจึงไม่สอดคล้องกัน PHP เป็นเครื่องมือเข้าถึง MySQL ไวยากรณ์ของมันกำหนดวิธีการสร้างแบบสอบถามและรับการตอบสนองจากฐานข้อมูลโดยใช้ภาษา SQL

ตัวอย่างความไม่ลงรอยกันระหว่างเครื่องมือการเขียนโปรแกรมสมัยใหม่และการสนับสนุนฐานข้อมูลได้กลายเป็นบรรทัดฐานในช่วงไม่กี่ปีที่ผ่านมา แต่นี่ไม่ใช่สิ่งดั้งเดิมที่สุด อะไรจะอยู่เบื้องหลังเวอร์ชันของ Windows 10? โอกาสของ Oracle Database 12c คืออะไร

ข้อมูลของผู้พัฒนา-ผู้เขียน: Oracle Database 11g Express Edition (Oracle Database XE) เป็น DBMS ระดับเริ่มต้นตามรหัส DBMS ของ Oracle Database 11g Release 2 DBMS นี้ฟรีสำหรับการพัฒนาการติดตั้งและการขาย ดาวน์โหลดเร็วและจัดการง่าย”

มุมมองของนักพัฒนาผู้ใช้: “ในปี 2013 Oracle ได้เปิดตัว Oracle Database 12c (เวอร์ชัน 12.1.0.1) โดยมีประโยชน์หลักในด้านต้นทุนพื้นที่จัดเก็บที่ต่ำกว่า ความพร้อมใช้งานของข้อมูลสูง การรวมฐานข้อมูลที่ง่ายดาย และการป้องกันการเข้าถึงข้อมูล ""

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

สู่โลกของรูปทรงเรียบจากสี่เหลี่ยมที่แม่นยำ

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

พลังและความเที่ยงธรรมของความสัมพันธ์เชิงสัมพันธ์ไม่อาจปฏิเสธได้ แต่การเปลี่ยนแปลงของคอลัมน์และแถวทำลายชื่อเสียงของพวกเขาหรือไม่ ตารางเป็นเพียงข้อมูลที่อาจมีส่วนหัว (รายการคอลัมน์) หรือไม่มีแถว ให้ตารางเป็นเพียงชุดของข้อมูล ไม่จำเป็นต้องตั้งชื่อ

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

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

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

  • ป้อนข้อมูลโฟลว์;
  • การเปลี่ยนแปลงและการเคลื่อนไหวของข้อมูลภายในฐานข้อมูล;
  • เลือกข้อมูลที่จะใช้

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

ข้อกำหนดบังคับของการเรียกซ้ำของฟังก์ชันการประมวลผลข้อมูลทั้งหมดและเน้นที่ฟังก์ชัน ไม่ใช่ข้อมูล ช่วยให้คุณสามารถออกแบบฐานข้อมูลในไดนามิกของข้อมูลที่สะสมและกระแสข้อมูลขาเข้า ซึ่งใช้ในความคิดริเริ่มของผู้ใช้, กระบวนการหรือฟังก์ชันอื่นๆ

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

ความรู้พื้นฐานและโครงสร้างที่เข้มงวด

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

ผลงานของโปรแกรมเมอร์ - ที่ระดับโปรแกรมใน "พื้นฐาน" ซึ่งดึงข้อมูลจากเว็บไซต์ของร้านค้าออนไลน์ผ่าน ODBC เทียบเท่ากับนักพัฒนา Oracle ชื่อที่ร้องขอให้ดึงข้อมูล จาก MAKS Aviation and Space Salon ผลลัพธ์ทั้งสอง "หยุด" แบบคงที่ตั้งแต่วินาทีที่งานเสร็จสิ้น นี่ไม่ใช่ความรู้เชิงรุกที่คนใช้ นี่คือความลับของการสร้างระบบออกแบบฐานข้อมูล

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

คำถามคือไดนามิกของพื้นที่แอปพลิเคชันถูกทำให้เป็นทางการได้ดีเพียงใด ไม่ใช่โครงสร้างของฐานข้อมูล

ไลฟ์สด

มันเป็นไปไม่ได้ที่จะวางแผนการทำงานในลักษณะที่จะผูกทีมนักพัฒนามืออาชีพเข้ากับงาน ไม่ใช่ว่าทีมไม่พอใจ แต่นี่ไม่ใช่แนวทางที่ถูกต้อง

โซลูชั่นสด
โซลูชั่นสด

งานออกแบบฐานข้อมูลควรกำหนดในลักษณะที่ฟังก์ชันที่พัฒนาแล้วจะพัฒนาตัวเอง สะสมความรู้ และในการปฏิบัติงานของ "หน้าที่" ไม่ได้เริ่มต้นจากโค้ดสร้างขึ้นโดยผู้เชี่ยวชาญ แต่จากความรู้ที่ได้รับผ่านโค้ดนี้