تصميم قاعدة البيانات. أفضل الممارسات

تحسبا لبداية التدفق القادم بالمعدل "قاعدة البيانات" لقد قمنا بإعداد مادة مؤلف صغيرة تحتوي على نصائح مهمة لتصميم قاعدة بيانات. نأمل أن تكون هذه المادة مفيدة لك.

تصميم قاعدة البيانات. أفضل الممارسات

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

1. تحديد الغرض من الجدول وما هو هيكله

تصميم قاعدة البيانات. أفضل الممارسات

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

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

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

2. ما هي البيانات التي يجب أن أختارها للتخزين؟

تصميم قاعدة البيانات. أفضل الممارسات

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

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

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

3. قم بصياغة البيانات بعناية

تصميم قاعدة البيانات. أفضل الممارسات

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

أثناء النمذجة، يتم بناء نماذج البيانات المفاهيمية (CDM)، والمادية (PDM)، والمنطقية (LDM). 

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

إذا كان من الصعب جدًا تصنيف كيان ما في كلمة أو عبارة واحدة، فقد حان الوقت لاستخدام الأنواع الفرعية (الكيانات الفرعية).

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

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

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

ثم تتم مقارنة نموذج البيانات المنطقية مع النظام الأساسي DBMS (نظام إدارة قواعد البيانات) المحدد مسبقًا ويتم الحصول على النموذج المادي. ويصف كيفية تخزين البيانات فعليا.

4. استخدم أنواع البيانات الصحيحة

تصميم قاعدة البيانات. أفضل الممارسات

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

قم بإنشاء الحد الأدنى من الأعمدة الفارغة بقيمة NULL. إذا قمت بإنشاء كافة الأعمدة كـ NULL، فهذا خطأ كبير. إذا كنت بحاجة إلى عمود فارغ لأداء وظيفة عمل محددة، عندما تكون البيانات غير معروفة أو غير منطقية بعد، فلا تتردد في إنشائه. بعد كل شيء، لا يمكننا ملء الأعمدة "تاريخ الوفاة" أو "تاريخ الفصل" مقدما، فنحن لسنا متنبئين نشير بأصابعنا إلى السماء :-).

معظم برامج النمذجة (ER/Studio، MySQL Workbench، SQL DBM، gliffy.com) تتيح لك إنشاء نماذج أولية لمناطق البيانات. وهذا لا يضمن فقط نوع البيانات الصحيح ومنطق التطبيق والأداء الجيد، بل يضمن أيضًا أن القيمة مطلوبة.

5. كن طبيعيًا

تصميم قاعدة البيانات. أفضل الممارسات

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

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

ما لم يكن مفتاح العمل فريدًا (الاسم الأول واسم العائلة والموضع) ويتكرر في صفوف مختلفة من الجدول أو يجب أن يتغير، فيجب تعيين المفتاح الاصطناعي الذي تم إنشاؤه كمفتاح أساسي.

6. تطبيع باعتدال

تصميم قاعدة البيانات. أفضل الممارسات

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

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

7. اختبر مبكرًا، اختبر بشكل متكرر

تصميم قاعدة البيانات. أفضل الممارسات

يجب أن تكون خطة الاختبار والاختبار المناسب جزءًا من تصميم قاعدة البيانات.

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

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

المصدر: www.habr.com

إضافة تعليق