قابلية الوصول العالية في قاعدة بيانات Azure لـ PostgreSQL- خادم واحد

ينطبق على: قاعدة بيانات Azure لـ PostgreSQL - خادم واحد

هام

قاعدة بيانات Azure ل PostgreSQL - خادم واحد على مسار التقاعد. نوصي بشدة بالترقية إلى Azure Database for PostgreSQL - Flexible Server. لمزيد من المعلومات حول الترحيل إلى قاعدة بيانات Azure ل PostgreSQL - خادم مرن، راجع ما يحدث لقاعدة بيانات Azure لخادم PostgreSQL الفردي؟.

توفر خدمة Azure Database for PostgreSQL - Single Server مستوى عاليا مضمونا من التوفر مع اتفاقية مستوى الخدمة المدعومة ماليا (SLA) لوقت التشغيل. توفر قاعدة بيانات Azure لـ PostgreSQL قابلية وصول عالية أثناء الأحداث المخطط لها مثل عملية حساب المقياس التي بدأها المستخدم، وأيضا عند حدوث أحداث غير مخطط لها مثل الأجهزة الأساسية أو البرامج أو فشل الشبكة. يمكن لقاعدة بيانات Azure ل PostgreSQL التعافي بسرعة من الظروف الأكثر أهمية، ما يضمن عدم تعطل التطبيق تقريبا عند استخدام هذه الخدمة.

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

المكونات الموجودة في قاعدة بيانات Azure لـ PostgreSQL - خادم واحد

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

تعمل على التخفيف من وقت التعطل المخطط له

تم تصميم قاعدة بيانات Azure لـ PostgreSQL لتوفير قابلية وصول عالية أثناء عمليات التوقف المخطط لها.

لقطة شاشة للتحجيم المرن في Azure PostgreSQL.

  1. توسيع نطاق خوادم قاعدة بيانات PostgreSQL وتقليصها في ثوان.
  2. البوابة التي تعمل كوكيل لتوجيه العميل تتصل بخادم قاعدة البيانات المناسب.
  3. يمكن إجراء تغيير سعة التخزين دون أي وقت تعطل. يتيح التخزين عن بعد إمكانية فصل/إعادة إرفاق سريع بعد تجاوز الفشل. فيما يلي بعض السيناريوهات المتعلقة بالصيانة المخطط لها:
السيناريو الوصف
تحجيم الحساب لأعلى/لأسفل عندما ينفذ المستخدم عملية تغيير سعة الحساب لأعلى/لأسفل، يتم توفير خادم قاعدة بيانات جديد باستخدام تكوين الحساب الذي تم تغيير سعته. في خادم قاعدة البيانات القديم، يسمح باكتمال نقاط التحقق النشطة، ويتم استنزاف اتصالات العميل، ويتم إلغاء أي معاملات غير ملتزم بها، ثم يتم إيقاف تشغيلها. ثم يتم فصل التخزين عن خادم قاعدة البيانات القديم وإرفاقه بخادم قاعدة البيانات الجديد. عندما يحاول تطبيق العميل الاتصال، أو يحاول إجراء اتصال جديد، تقوم البوابة بتوجيه طلب الاتصال إلى خادم قاعدة البيانات الجديد.
توسيع نطاق التخزين يُعد توسيع نطاق التخزين عملية عبر الإنترنت ولا يقطع خادم قاعدة البيانات.
توزيع برامج جديدة (Azure) يتم طرح الميزات الجديدة أو إصلاح الأخطاء بشكل تلقائي كجزء من الصيانة المخططة للخدمات. لمزيد من المعلومات، راجع المستندات، وتحقق أيضاً من المدخل الخاص بك.
ترقيات الإصدار الثانوي تقوم قاعدة بيانات Azure لـ PostgreSQL بشكل تلقائي بتصحيح خوادم قاعدة البيانات إلى الإصدار الثانوي الذي يحدده Azure. يحدث ذلك كجزء من الصيانة المخطط لها للخدمة. قد يتطلب ذلك وقت تعطل قصير من حيث الثواني، ويتم إعادة تشغيل خادم قاعدة البيانات تلقائيًا باستخدام الإصدار الثانوي الجديد. لمزيد من المعلومات، راجع المستندات، وتحقق أيضاً من المدخل الخاص بك.

التخفيف غير المخطط له من وقت التعطل.

يمكن أن يحدث وقت التعطل غير المخطط له نتيجة لعدة محاولات فاشلة غير متوقعة، بما في ذلك أعطال الأجهزة الأساسية، ومشكلات الشبكات، وأخطاء البرامج. إذا تعطل خادم قاعدة البيانات بشكل غير متوقع، يتم توفير خادم قاعدة بيانات جديد بشكل تلقائي في ثوانٍ. يتم إرفاق التخزين عن بُعد تلقائياً بخادم قاعدة البيانات الجديد. ينفذ محرك PostgreSQL عملية الاسترداد باستخدام ملفات WAL وقاعدة البيانات، ويفتح خادم قاعدة البيانات للسماح للعملاء بإجراء عملية الاتصال. يتم فقد العمليات غير الملتزم بها، ويجب إعادة المحاولة بواسطة التطبيق. بينما لا يمكن تجنب حدوث التعطل غير المخطط له ، فإن Azure Database for PostgreSQL بقوم بالتخفيف وقت التعطل عن طريق إجراء عمليات الاسترداد بشكل تلقائي على كل من خادم قاعدة البيانات وطبقات التخزين دون الحاجة إلى تدخل بشري.

لقطة شاشة لقابلية الوصول العالية في Azure PostgreSQL.

  1. خوادم Azure PostgreSQL ذات إمكانات تغيير السعة بشكل سريع.
  2. البوابة التي تعمل كوكيل لتوجيه اتصالات العميل إلى خادم قاعدة البيانات المناسب.
  3. تخزين Azure بثلاث نسخ من أجل الموثوقية والتوافر والتكرار.
  4. يتيح التخزين عن بُعد إمكانية فصل/إعادة إرفاق سريع بعد تجاوز الفشل.

وقت التعطل غير المخطط له: سيناريوهات الفشل واسترداد الخدمة

فيما يلي بعض سيناريوهات الفشل وكيفية استرداد Azure Database for PostgreSQL بشكل تلقائي:

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

يعتمد وقت الاسترداد (RTO) على عوامل مختلفة بما في ذلك النشاط في وقت الخطأ مثل المعاملة الكبيرة ومقدار الاسترداد الذي يتعين إجراؤه أثناء عملية بدء تشغيل خادم قاعدة البيانات.

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

فيما يلي بعض سيناريوهات الفشل التي تتطلب إجراءً من المستخدم للاسترداد:

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

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

الملخص

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

الخطوات التالية