التوسع باستخدام Azure SQL Database

ينطبق على: قاعدة بيانات Azure SQL

يمكنك بسهولة توسيع نطاق قواعد البيانات في Azure SQL Database باستخدام أدوات قاعدة بيانات مرنة. تتيح لك هذه الأدوات والميزات استخدام موارد قاعدة البيانات الخاصة بـ Azure SQL Database لإنشاء حلول لأحمال عمل العمليات، وخاصة تطبيقات البرامج كخدمة (SaaS). تتكون ميزات قاعدة بيانات مرنة من:

يوضح الرسم التالي بنية تتضمن ميزات قاعدة بيانات مرنة فيما يتعلق بمجموعة من قواعد البيانات.

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

  1. تمت استضافة مجموعة من قواعد بيانات SQL على Azure باستخدام بنية التجزئة.
  2. تُستخدم مكتبة عميل قاعدة بيانات مرنة لإدارة مجموعة الأجزاء.
  3. يتم وضع مجموعة فرعية من قواعد البيانات في تجمع مرن. (راجع ما هو التجمع؟).
  4. تعمل وظيفة قاعدة بيانات مرنة على تشغيل برامج نصية T-SQL مجدولة أو مخصصة مقابل جميع قواعد البيانات.
  5. تُستخدم أداة الدمج المنقسم لنقل البيانات من جزء إلى آخر.
  6. يتيح لك استعلام قاعدة بيانات مرنة كتابة استعلام يمتد عبر جميع قواعد البيانات في مجموعة الأجزاء.
  7. تسمح لكالعمليات المرنة بتشغيل العمليات التي تمتد عبر عدة قواعد بيانات.

Elastic Database tools

لماذا نستخدم الأدوات؟

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

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

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

التحجيم الأفقي والرأسي

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

Horizontal versus vertical scale-out

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

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

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

  • تتم إدارة القياس الأفقي باستخدام مكتبة عميل قاعدة بيانات مرنة.
  • يتم إجراء القياس العمودي باستخدام أوامر Azure PowerShell لتغيير طبقة الخدمة، أو عن طريق وضع قواعد البيانات في تجمع مرن.

Sharding

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

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

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

تعمل المشاركة بشكل أفضل عندما يمكن تقييد كل معاملة في تطبيق ما بقيمة واحدة لمفتاح التجزئة. يضمن ذلك أن تكون جميع العمليات محلية لقاعدة بيانات محددة.

متعدد المستأجرين ومستأجر واحد

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

Single tenant versus multi-tenant

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

نقل البيانات من قواعد بيانات متعددة إلى قواعد بيانات الإيجار الفردي

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

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

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

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

لمعرفة تفاصيل المسبح المرن، راجع اعتبارات السعر والأداء للتجمع المرن، أو أنشئ مسبحاً جديداً به تجمعات مرنة.

الموارد الإضافية

ألم تستخدم أدوات قاعدة بيانات مرنة بعد؟ تحقق من ⁧⁩دليل بدء التشغيل⁩. في حالة وجود أسئلة، تواصل معنا على Microsoft Q&A وهي صفحة الأسئلة حول SQL Database ولطلبات الميزات، أضف أفكاراً جديدة أو صوّت للأفكار الموجودة في منتدى ملاحظات SQL Database.