كيف تتم مقارنة قواعد بيانات AWS العلائقية

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

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

سنلقي نظرة فاحصة على قواعد البيانات التالية التي يمكن أن تكون جزءًا من هذه المبادرة:

  • وحي
  • أورورا
  • خادم مايكروسوفت SQL
  • MySQL و PostgreSQL
  • MariaDB

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

AWS Oracle DB

المصدر: aws.amazon.com

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

كيف يختلف

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

المزايا الرئيسية

فيما يلي بعض المزايا الرئيسية التي تحصل عليها عند اختيار نظام قاعدة بيانات ناضج مثل Oracle:

دعم كبير وخيارات لأنشطة النسخ الاحتياطي والاستعادة الفعالة.

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

✅ التخصيص العالي لحل قاعدة البيانات. نظرًا لأن Oracle DB تدعم قدرًا كبيرًا من الوظائف للاختيار من بينها ، فأنت بصفتك مُتكامل نظام لديك الكثير من الخيارات لبناء نظام قوي يتكون من تلك الوظائف التي يحتاجها نظامك الأساسي (التفكير في المشغلات ، والأقسام ، والأقسام الفرعية ، وتسلسل المفاتيح الأساسية المؤتمتة ، وطرق العرض ، لقطات ، قيود البيانات ، مفاتيح فريدة ، مفاتيح مجتمعة ، مفاتيح خارجية ، فهارس مركبة ، إلخ.). إنه يدعم كل شيء.

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

✅ دعم البيئات متعددة المستخدمين. إذا كان المتطلب هو دعم الآلاف من المستخدمين النشطين المميزين في نفس الوقت ، فإن Oracle هي الحل.

العيوب الرئيسية

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

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

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

  كيفية توصيل iPhone بتلفزيون Samsung

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

متى تختار

يعد اختيار النظير السحابي لـ Oracle DB هو القرار الطبيعي الذي يجب اتخاذه متى كان الحل المحلي الحالي لديك يستخدم Oracle DB بالفعل. كما أنه سيجعل الترحيل والتبديل إلى الحل المستند إلى السحابة أمرًا سهلاً قدر الإمكان.

لذلك ، اختر AWS Oracle DB في الحالة:

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

مثال على الاستخدام

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

AWS Aurora DB

المصدر: aws.amazon.com

من نواحٍ عديدة ، يعد Aurora هو النقيض المباشر لـ Oracle ، حتى لو كانت لا تزال قاعدة بيانات علائقية.

كيف يختلف

Autora DB هي خدمة قاعدة بيانات أصلية في AWS. تمنحها AWS الدعم الكامل والتطوير المستمر وتدمجها بعمق مع بقية النظام البيئي لخدمات AWS.

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

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

المزايا الرئيسية

أود أن أقول إن المزايا الرئيسية لـ Aurora DB هي:

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

✅ جاهز للنمو الكبير للبيانات – يعد القياس الأفقي ميزة كبيرة في Aurora DB. تعد إضافة مجموعات جديدة وتوسيع قابلية التوسع عبر مناطق الإتاحة المختلفة أمرًا بسيطًا كما هو. وبالتالي ، فإن Aurora فعال للغاية في اختيار كميات كبيرة من البيانات بسرعة كبيرة.

✅ يمكنك اختيار ما إذا كنت تريد استخدام الخادم أو الوضع بدون خادم لـ Aurora DB. ستفقد بعض الميزات في الوضع بدون خادم. لكنك تحصل على قدر كبير من المرونة وتحسينات التكلفة عند اختيار الوضع بدون خادم.

✅ النسخ الاحتياطية الآلية وسهولة الرجوع في الوقت المناسب. هناك ميزة أخرى تتمثل في أن Aurora DB يمكنها إجراء عمليات نسخ احتياطي يومية سهلة ، كما أن استعادة قاعدة البيانات الكاملة إلى أي نقطة زمنية أسهل بكثير. يمكنك الجمع بين جميع مزايا البيئة السحابية هنا ، مثل المساحة الخالية المتوفرة دائمًا ، وعمليات AWS الداخلية السريعة ، وميزة Aurora DB المخصصة التي تستهدف أوقات استرداد سريعة ووقت تعطل قصير.

✅ دعم محرك MySQL أو PostgreSQL DB ، بحيث يمكنك اختيار أيهما يناسبك.

  كيفية قفل عرض تقديمي بوربوينت من أن يتم تحريره

العيوب الرئيسية

  • على الرغم من أن Aurora هي قاعدة البيانات الارتباطية الأصلية الأكثر ثراءً بالميزات التي يمكنك اختيارها في AWS ، إلا أنها لا تزال متخلفة عن Oracle في هذا الصدد. انه مفهوم؛ كان لدى Oracle المزيد من الوقت لتطوير هذه الميزات في الماضي. تظل الحقيقة أن Aurora DB ، مع كل إصدار ، أقوى وأقرب.
  • لا يوجد ما يعادل Aurora DB في مساحة مكان العمل. يمكنك المجادلة بأن قواعد البيانات القديمة التي تم إنشاؤها داخل قواعد بيانات MySQL أو PostgreSQL متطابقة تمامًا – ومن منظور التوافق ، فهي بالتأكيد كذلك. لكنها ليست المكافئ الصارم. هذا يعني أن الهجرة لن تكون بهذه البساطة. ستحتاج إلى تخصيص عمليات الترحيل وتنفيذها للتأكد من أنها ستنقل البيانات من مكان العمل وتخزينها في Aurora DB ، كل ذلك بتنسيق نموذج البيانات الصحيح.
  • تعد حدود AWS المختلفة ، خاصة تلك الصعبة ، عاملاً قد ينتقص ، في بعض الحالات ، من اختيار قاعدة البيانات هذه كهدف للمضي قدمًا. من المحتمل جدًا أن تكون قادرًا على حلها جميعًا ، ولكن بالنسبة للبعض ، ستحتاج إلى بعض الاستثمار الجاد في إعادة البناء ، مما قد يؤدي في النهاية إلى زيادة التكاليف الإجمالية للترحيل مقارنةً بهدف قاعدة بيانات آخر.

متى تختار

باختصار ، لا يعد اختيار Aurora DB كقاعدة بيانات goto العلائقية في منصة AWS قرارًا سيئًا على الإطلاق ، ولكن قم بذلك ، خاصة إذا:

  • ستنشئ نظامًا سحابيًا من البداية حول قاعدة بيانات علائقية.
  • تتوقع أعلى مستوى من التوافق والتكامل مع أكبر قدر ممكن من خدمات AWS الأصلية المختلفة.
  • تتوقع أن ينمو حجم بياناتك بشكل ملحوظ خلال فترة زمنية قصيرة.
  • أنت تخطط لبدء العديد من مشاريع إثبات المفهوم العرضي (POC) حيث يمكنك الاستفادة من جميع مزايا الإصدار بدون خادم من قاعدة البيانات العلائقية.

مثال على الاستخدام

  • نظام أساسي بدون خادم لتحليل كميات كبيرة من بيانات صورة البنية التحتية.
  • استخدام نماذج التعلم الآلي لمعالجة معلومات بحيرة البيانات الخاصة بك وإنشاء تنبؤات أعمال لعملك.
  • يستخدم Netflix Aurora DB لعمليات تنفيذ الاستعلام المتوازية السريعة على بيانات الكتالوج الخاصة بهم.

AWS Microsoft SQL DB

المصدر: aws.amazon.com

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

كيف يختلف

على الرغم من أوجه التشابه هذه ، لا يزال MS SQL DB هو النوع الذي كان له استخدام أقل بكثير في الماضي مقارنةً بـ Oracle DB.

على الأقل انطلاقا من منظور خبرتي الشخصية. لقد شاركت في العديد من مشاريع Oracle على مدار العقدين الماضيين ، ولكن فقط في عدد قليل من الحالات التي شاركت فيها MS SQL DB. وبصراحة ، لم أرغب في التعامل معها في أي مكان قريب بقدر ما فعلت مع Oracle DB.

على أي حال ، ما زلت أتعرف على شريحة كبيرة من الشركات تستخدم MS SQL DB كقاعدة البيانات الرئيسية التي تمثل نقطة الحقيقة الوحيدة لجميع البيانات.

المزايا الرئيسية

المزايا الرئيسية التي يتمتع بها MS SQL DB:

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

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

✅ بسيط للغاية من منظور إداري (على الأقل بالمقارنة مع Oracle DB).

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

العيوب الرئيسية

  • على غرار حالة Oracle DB ، كقاعدة بيانات غير أصلية في مساحة سحابة AWS ، يجب توجيه كل الدعم وحل المشكلات عبر فرق دعم MS SQL منفصلة ومخصصة.
  • دعم أقل لتنويع الوظائف بشكل عام عند مقارنتها بـ Oracle DB أو Aurora DB.
  • غير مناسب لعدد كبير من المستخدمين النشطين.
  • تعد قابلية التوسع الأفقي مشكلة أكبر من حالة Oracle DB.
  هل يمكن لتطبيق القانون حقًا تعقب شخص ما بعنوان IP؟

متى تختار

يعد MS SQL DB هو الأنسب إذا كنت ترغب في ترحيل MS SQL DB الموجود في مكان العمل إلى السحابة مع أقل قدر ممكن من عوامل التشتيت. أيضًا ، لا تتوقع هذا التكامل مع خدمات AWS السحابية الأخرى إلى حد كبير.

بعد ذلك ، ستعيش MS SQL DB داخل سحابة AWS كقاعدة بيانات مُدارة بالكامل مع مساحة تخزين غير محدودة وخيارات موسعة لقابلية التوسع الأفقي والتوافر العالي مقارنةً بالبدائل المحلية.

مثال على الاستخدام

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

AWS MySQL و PostgreSQL DB

المصدر: aws.amazon.com

قواعد البيانات هذه مفتوحة المصدر حسب الأصل (على الرغم من شراؤها الآن من قبل شركات أكبر) ، مما يمنحها في النهاية مزايا وعيوب.

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

كيف يختلف

عند ترحيل قاعدة البيانات المحلية (سواء كانت MySQL أو PostgreSQL) إلى سحابة AWS ، يمكنك فقط استخدام Aurora مباشرةً مع MySQL أو محرك PostgreSQL كهدف وبالتالي الحصول على جميع المزايا الإضافية التي تقدمها Aurora DB.

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

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

العيوب الرئيسية

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

متى تختار

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

مثال على الاستخدام

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

AWS MariaDB

المصدر: aws.amazon.com

لا تزال MariaDB قاعدة بيانات مفتوحة المصدر بالكامل أنشأها مطورو MySQL السابقون (بعد استحواذ Oracle على MySQL).

من حيث التوافق ، سيتم تشغيل أي قاعدة بيانات MySQL بشكل جيد داخل MariaDB.

كيف يختلف

من الناحية الوظيفية ، لا توجد اختلافات كثيرة يمكن توقعها من MySQL ، ولكن الخاصية مفتوحة المصدر هي الميزة.

من الناحية الفنية ، هناك عدد كبير من الميزات المفيدة المتوفرة في MariaDB ولكن ليس في MySQL.

العيوب الرئيسية

تشبه إلى حد كبير حالة MySQL.

متى تختار

  • إذا كنت تحب تطبيق MariaDB الحالي الخاص بك في مكان العمل تمامًا ولا تريد الانتقال إلى Aurora DB ، لأي سبب من الأسباب.
  • إذا كنت تريد أن تظل مفتوح المصدر حقًا باستخدام حل قاعدة البيانات الخاص بك داخل النظام البيئي السحابي لـ AWS.

مثال على الاستخدام

تشبه إلى حد كبير حالة MySQL.

الكلمات الأخيرة

وبالمثل ، نظرًا لأن Oracle DB كان الحل في العالم المحلي ، يبدو أن Aurora DB تحتل هذا المكان في عالم السحابة AWS. على الأقل من منظور مجموعات الميزات ، هذا هو أقرب ما يمكنك الحصول عليه.

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

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