تصميم قاعدة البيانات: الخطوات والأساسيات

جدول المحتويات:

تصميم قاعدة البيانات: الخطوات والأساسيات
تصميم قاعدة البيانات: الخطوات والأساسيات
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 أو الأدوات المرئية لنظام إدارة قواعد البيانات المختار. Access لها طريقتها الخاصة في تكوين صورة المعلومات ، ول MySQL طريقتها الخاصة ، وبعض أنظمة إدارة المحتوى تخفي قاعدة البيانات تمامًا ، وتفرض نموذج بيانات على المطور من خلال الكيانات الخاصة بها -كائنات المهمة التي يتم حلها.

من السمات المميزة للعديد من أنظمة إدارة المحتوى (CMS) أنها تقدم "تطبيقًا" لمستوى أكبر من التجريد عند وصف منطقة المعلومات الخاصة بالمشكلة التي يتم حلها. قاعدة البيانات الحقيقية مخفية ، CMS تقدم للمطور فكرته الخاصة عن صورة المعلومات للعالم.

نتيجة لذلك ، يتم تقليل مراحل تصميم قاعدة البيانات إلى مراعاة المتطلبات الأساسية وتنفيذ الخطوات التي اقترحها منشئو نظام إدارة محتوى معين. لا يوجد شيء مخجل في استخدام أفكار قواعد البيانات وتصميمها من Symfony أو Bitrix أو Zend أو Yii ، لكنها بالنسبة للمطور "عبء".

من الناحية المثالية ، يجب اختيار أدوات تصميم قاعدة البيانات وتطبيقها بشكل فردي ، دون رأي خارجي ، ولكن مع تطبيق الخبرة والمعرفة.

تصميم قاعدة بيانات المعلومات
تصميم قاعدة بيانات المعلومات

مثالي للمطور أن يكون معتمدًا من Oracle ، ولكنه مقبول تمامًا لمؤهلات المطور لتشمل رؤى في أفكار معلومات Oracle ومعرفة عملية بتطبيقات MySQL.

في المشاريع المعقدة ومعالجة المعلومات الموزعة ، ليس فقط قاعدة البيانات مهمة ، ولكن أيضًا مصادر المعلومات والأفكار حول احتياجات المستهلكين.

المراحل أو الفريق: توازن الأولويات

متطلبات الاتساق هي الأكثر أهمية إلحاحًا. تتضمن أساسيات تصميم قاعدة البيانات أيضًا مراحل العمل ، ومراقبة النتائج الوسيطة ، وإعادة التفكير في كل مرحلة مكتملة بناءً على تنفيذ نوع العمل التالي:

  • منهجي ؛
  • مراحل ؛
  • ردود فعل من أي وقت ، إلى نقطة البداية.

هذه الأحكام مجردة ، لكنها موجودة في أي تقنية نظرية وعملية لإنشاء قاعدة بيانات فعالة.

لا توجد تقنية تتطور من تلقاء نفسها ، يقودها الناس. مؤهلات فريق التطوير ضرورية. نموذج معلومات قاعدة البيانات ليس مجرد إطار عمل ، ولكن أيضًا تدفق المعلومات.

ما هو أكثر أهمية: رسومات جميلة في تمثيل بنية قاعدة البيانات أو وصف دقيق لتدفق المعلومات في الديناميكيات - لا يتعلق الأمر بالمهمة والنطاق فحسب ، بل يتعلق أيضًا برأي فريق التطوير في الديناميكيات.

تصميم هيكل قاعدة البيانات
تصميم هيكل قاعدة البيانات

الموظفون هم كل شيء ، لكن في السياق: التصميم المفاهيمي لقاعدة البيانات هو كل شيء مؤهل. كل الناس فريدون ، وفي مجال نظم المعلومات ، توجد تمثيلات لأشخاص محددين وتتطور.

من المهم بناء فريق من المطورين ، وليس بعض خطوات تصميم قاعدة البيانات الأسطورية التي اقترحها خبير موثوق. تم تشكيل سلطة هذا الاختصاصي على أساس أعمال محددة ، في وقت محدد. العمل يجب القيام به اليوم ، مهمة جديدة ، معدات حديثة ، تكنولوجيا جديدة ، …

عكس محتمل. هناك بيانات Excel و Access وبيانات "وفيرة" بهذه التنسيقات من العصور القديمة ، عندما كان Windows for Workgoups لا يزال على قيد الحياة وبصحة جيدة. بقيت جزئيًا بيانات dBase و Quattro. اليوم تم بالفعل نسيان هذه الكلمات ، ولكن المعلوماتبقي ، هو مطلوب ويحتاج إلى استخراجه وتشكيل أفكار جديدة.

القديم والجديد: ميزان المعرفة

تقنية السحابة ليست مثل قواعد البيانات التي قامت بها Ashton-Tate. ما اشترته Oracle ذات مرة لا يمكن مقارنته بأي حال بما تفعله اليوم. لكن المتغيرات والخوارزميات والوظائف والحلقات والشروط ظلت في البرمجة منذ أوائل الثمانينيات. ما لم يكن مفهوم الإجراء قد غرق في النسيان ، وبقي كل شيء على ما كان عليه في العصور القديمة.

حتى الأفكار الحديثة للبرمجة الشيئية مغطاة بالأغلال النحوية والدلالية الكلاسيكية للقرن الماضي.

ما يجب فعله - البرمجة بالقصور الذاتي ، وإضفاء الطابع الرسمي على المعلومات وتصميم قواعد بيانات المعلومات عملية أكثر منها نتيجة. العمل على مراحل شرط أساسي لتحقيق النتائج. ولكن من الذي أحصى عدد التكرارات من المراحل المتوسطة تقريبًا إلى بداية العمل؟

المعلومات ديناميكية دائمًا ، فلا شيء يقف ساكنًا: خاصة مجال موضوع المهمة ومتطلبات المستخدم. تتيح لك كل مرحلة مكتملة من العمل أن تقيم على مستوى جديد ما تم إنجازه بالفعل وما يجب القيام به.

تصميم قاعدة بيانات منطقية
تصميم قاعدة بيانات منطقية

التفكير في تصميم بنية قاعدة بيانات كمهمة والحصول على النتيجة النهائية أمر غير مجدٍ. بمجرد تشغيل قاعدة البيانات ، ستظهر بالتأكيد فكرة جديدة ، حتى لو كانت أداة إنشاء قاعدة البيانات هي 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 للمبتدئين يعتمد على كود Oracle Database 11g Release 2 DBMS. نظام DBMS هذا مجاني للتطوير ،النشر والبيع ، التنزيل السريع وسهولة الإدارة."

منظور مطور المستخدم: "في عام 2013 ، أصدرت Oracle Oracle Database 12c (الإصدار 12.1.0.1) مع مزايا رئيسية تتمثل في انخفاض تكاليف التخزين ، وتوافر البيانات بشكل كبير ، وتوحيد قواعد البيانات بسهولة ، وحماية الوصول إلى البيانات" ".

الممارسة الحقيقية: تصميم قاعدة بيانات منطقي موضوعي وفعال وفعال متاح فقط لفريق من المطورين المؤهلين. الحصول على نتيجة عمل ليس بالأمر الصعب ، فمن الصعب إضفاء الطابع الرسمي على تدفقات المعلومات الواردة وتحديد الأساس الأمثل.

إلى عالم الأشكال الملساء من المستطيلات الدقيقة

مع ظهور البرمجة الكائنية ، أخذ تسلسل البيانات حيزًا جديدًا من الحياة. في الواقع ، كل شيء حوله مجرد خطوط ، ويفضل أن يكون طوله غير محدد. الأرقام والتواريخ هي أيضًا سلاسل أحرف.

لا يمكن إنكار قوة وموضوعية العلاقات العلائقية ، لكن هل ديناميكيات الأعمدة والصفوف تضر بسمعتها؟ الجدول هو ببساطة بيانات قد تحتوي على رأس (قائمة أعمدة) أو لا تحتوي على صفوف. اجعل الجدول مجرد مجموعة من البيانات ، وليس بالضرورة تسميتها.

يمكن أن تكون مجموعة البيانات غير متجانسة ويمكنك العثور على بيانات ذات بنية مختلفة فيها. بشكل أساسي ، يشير تجانس البيانات إلى تطور النطاق. يعد توزيع البيانات حسب الأنواع والأنواع علامة على نهج منهجي وموضوعي ، ولكن لا يزال من المستحسن الاعتراف بإمكانية ديناميات الهيكل.

إذا كان الإخراجتصميم وإنشاء قاعدة بيانات تتجاوز الهياكل الجامدة وافتراض أن الجدول عبارة عن مجموعة من الصفوف التي ليست بالضرورة من نفس النوع ومتشابهة في دلالات بعضها البعض ، ثم سيتغير تصميم قاعدة البيانات بشكل كبير.

لن يكون موضوع العمل وصفًا لهيكل قاعدة البيانات ، بل ديناميكيات حركة المعلومات. ستقسم مراحل العمل إلى ثلاثة مراكز ثقل:

  • تدفق معلومات الإدخال ؛
  • تحويل وحركة المعلومات داخل قاعدة البيانات ؛
  • حدد البيانات المراد استخدامها.

لا يوجد مفهوم لهيكل الجدول. لا توجد صفوف أو أعمدة. هناك تجريد - معطى ، لهيكل معين ، يلبي نقطة معينة في الخوارزمية. وبشكل أكثر تحديدًا ، تتطلب وظيفة معالجة المعلومات معلومات معينة بكمية محددة.

المتطلب الإلزامي للتكرار لجميع وظائف معالجة المعلومات والتركيز على الوظائف ، وليس البيانات ، يسمح لك بتصميم قاعدة بيانات في ديناميات المعلومات المتراكمة وتدفق البيانات الواردة ، والتي تُستخدم بمبادرة من المستخدم أو عملية أو وظيفة أخرى.

في الواقع: ظهرت إشارة استخدام ، وتم استلام طلب إحضار ، وتم تشغيل مشغل في التطبيق ، وقدمت المعلومات الواردة ، من خلال ما كان موجودًا بالفعل ، الحل المطلوب.

المعرفة الأساسية والإنشاءات الجامدة

المعرفة حق للإنسان ، والبرامج عبء الحاسوب. المطور حر في تطبيق المعرفة كما يراه مناسبًا في موقف معين. يستخدم الإنسان العادي الكثير من قواعد البيانات ، دون أن يوليها أهمية. كيفقواعد البيانات منظمة في رأس شخص عادي ، لا أحد يعرف ، لكن الجميع يعرف كيف يدير عمله ، أين يكتب ما يجده ، ومتى يحتاج إلى استخدامه.

نتيجة عمل المبرمج - على مستوى برنامج في "أساسي" ، والذي يسترد البيانات من موقع ويب لمتجر عبر الإنترنت عبر ODBC ، يعادل مطور Oracle الذي يحمل عنوانًا والذي يقدم طلبًا لجلب البيانات من صالون ماكس للطيران والفضاء. كلا النتيجتين "تتجمد" في حالة ثبات من لحظة اكتمال العمل. هذه ليست معرفة نشطة يستخدمها الشخص ، هذا هو سر إنشاء نظام تصميم قاعدة بيانات.

لا يمكن إصلاح الخوارزمية. يجب تحديد كل شيء ديناميكيًا. مزايا المطورين المؤهلين لا يمكن إنكارها ، لكنها لا تكمن على الإطلاق في الأشكال الأنيقة للحلول من Oracle أو MySQL أو Access ، وهي محدودة في إمكانياتها. يمكن أن يوفر جدول بيانات Excel آخر محتوى ديناميكيًا ولا يتطلب مشاركة مبرمج لوقت لائق أكثر أو أقل بعد الانتهاء من العمل.

السؤال هو إلى أي مدى يتم إضفاء الطابع الرسمي على ديناميكيات منطقة التطبيق ، وليس هيكل قاعدة البيانات.

حلول مباشرة

من المستحيل التخطيط للعمل بطريقة تربط فريق من المطورين المحترفين بمهمة ما. لا يعني ذلك أن الفريق تعرض للإهانة ، لكن هذا ليس النهج الصحيح.

حلول مباشرة
حلول مباشرة

يجب أن تصاغ مهمة تصميم قاعدة البيانات بطريقة تجعل الوظيفة المطورة من شأنها تحسين نفسها ، وتراكم المعرفة ، وفي أداء "واجباتها" ، لا تبدأ من الكود ،تم إنشاؤها بواسطة خبراء ، ولكن من المعرفة المكتسبة من خلال هذا الرمز.

موصى به: