نسخ المهام في Azure Cosmos DB (معاينة)
يمكنك إجراء نسخ البيانات في Azure Cosmos DB باستخدام مهام نسخ الحاوية.
قد تحتاج إلى نسخ البيانات من حساب Azure Cosmos DB الخاص بك إذا كنت تريد تحقيق أي من هذه السيناريوهات:
- انسخ جميع العناصر من حاوية إلى أخرى.
- تغيير نقاوة توفير معدل النقل، من قاعدة البيانات إلى الحاوية والعكس صحيح.
- قم بتغيير مفتاح القسم للحاوية.
- قم بتحديث المفاتيح الفريدة للحاوية.
- إعادة تسمية حاوية أو قاعدة بيانات.
- تغيير وضع السعة للحساب من بلا خادم إلى توفير أو العكس.
- اعتماد ميزات جديدة مدعومة للحاويات الجديدة فقط، على سبيل المثال مفاتيح الأقسام الهرمية.
يمكن إنشاء مهام النسخ وإدارتها باستخدام أوامر Azure CLI.
الشروع في العمل
لبدء استخدام نسخة الحاوية عبر الإنترنت لحسابات Azure Cosmos DB ل NoSQL API، سجل لعلامة ميزة معاينة نسخ الحاوية عبر الإنترنت (NoSQL) في ميزات المعاينة في مدخل Microsoft Azure. بمجرد اكتمال التسجيل، تكون المعاينة فعالة لجميع حسابات NoSQL API في الاشتراك.
المتطلبات الأساسية
- تمكين النسخ الاحتياطي المستمر على حساب Azure Cosmos DB المصدر.
- قم بالتسجيل في جميع الإصدارات واحذف ميزة معاينة وضع موجز التغيير على اشتراك الحساب المصدر.
هام
سيتم فرض رسوم على جميع عمليات الكتابة إلى حاوية المصدر وحدات الطلب المزدوجة من أجل الاحتفاظ بالإصدارين السابق والحالي من التغييرات على العناصر الموجودة في الحاوية. تخضع زيادة رسوم وحدة الطلب هذه للتغيير في المستقبل.
نسخ بيانات الحاوية
- قم بإنشاء حاوية Azure Cosmos DB الهدف باستخدام الإعدادات التي تريد استخدامها (مفتاح القسم ونقاوة معدل النقل ووحدات الطلب والمفتاح الفريد وما إلى ذلك).
- إنشاء مهمة نسخ الحاوية.
- مراقبة تقدم مهمة النسخ.
- بمجرد نسخ جميع المستندات، أوقف التحديثات على حاوية المصدر ثم استدع واجهة برمجة تطبيقات الإكمال لوضع علامة على المهمة كمكتملة.
- استأنف العمليات عن طريق توجيه التطبيق أو العميل بشكل مناسب إلى الحاوية المصدر أو الهدف على النحو المنشود.
كيف يعمل نسخ الحاوية؟
- يخصص النظام الأساسي مثيلات الحوسبة من جانب الخادم لحساب Azure Cosmos DB الوجهة لتشغيل مهام نسخ الحاوية.
- تُنفذ مهمة واحدة عبر جميع المثيلات في أي وقت.
- تستخدم مهام النسخ عبر الإنترنت جميع الإصدارات وحذف وضع موجز التغيير لنسخ البيانات ونسخ التغييرات التزايدية من الحاوية المصدر إلى الحاوية الوجهة.
- بمجرد اكتمال المهمة، يقوم النظام الأساسي بإلغاء تخصيص هذه المثيلات بعد 15 دقيقة من عدم النشاط.
يمكنك تنفيذ مهام نسخ المجموعة دون اتصال لنسخ البيانات داخل نفس حساب Azure Cosmos DB ل Mongo DB.
نسخ بيانات مجموعة
- قم بإنشاء مجموعة Azure Cosmos DB الهدف باستخدام الإعدادات التي تريد استخدامها (مفتاح القسم ونقاوة معدل النقل ووحدات الطلب والمفتاح الفريد وما إلى ذلك).
- أوقف العمليات على مجموعة المصدر عن طريق إيقاف مثيلات التطبيق أو أي عملاء يتصلون بها مؤقتا.
- إنشاء مهمة النسخ.
- راقب تقدم مهمة النسخ وانتظر حتى تكتمل.
- استأنف العمليات عن طريق توجيه التطبيق أو العميل بشكل مناسب إلى مجموعة المصدر أو الهدف على النحو المنشود.
إشعار
نوصي بشدة بالتوقف عن تنفيذ أي عمليات على مجموعة المصدر قبل بدء مهمة نسخ المجموعة دون اتصال. قد لا يتم التقاط عمليات حذف العنصر والتحديثات التي يتم إجراؤها على مجموعة المصدر بعد بدء مهمة النسخ. إذا استمر تنفيذ العمليات على مجموعة المصدر أثناء مهمة النسخ قيد التقدم، فقد يكون لديك بيانات مكررة أو مفقودة على المجموعة الهدف.
كيف تعمل نسخة المجموعة؟
- يخصص النظام الأساسي مثيلات الحوسبة من جانب الخادم لحساب Azure Cosmos DB الوجهة.
- يتم تخصيص هذه المثيلات عند إنشاء وظيفة نسخ مجموعة واحدة أو أكثر داخل الحساب.
- تعمل مهام النسخ على هذه المثيلات.
- تُنفذ مهمة واحدة عبر جميع المثيلات في أي وقت.
- تتم مشاركة المثيلات بواسطة جميع مهام النسخ التي تعمل داخل نفس الحساب.
- تستخدم مهام النسخ دون اتصال تدفقات التغيير لنسخ البيانات ونسخ التغييرات التزايدية من مجموعة المصدر إلى مجموعة الوجهة.
- قد يقوم النظام الأساسي بإلغاء تخصيص المثيلات إذا كانت خامدة لأكثر من 15 دقيقة.
يمكنك إجراء نسخ جدول دون اتصال لنسخ بيانات جدول واحد إلى جدول آخر داخل نفس Azure Cosmos DB لحساب Apache Cassandra.
نسخ بيانات جدول
- إنشاء جدول Azure Cosmos DB الهدف باستخدام الإعدادات التي تريد استخدامها (مفتاح القسم ونقاوة معدل النقل ووحدات الطلب وما إلى ذلك).
- أوقف العمليات على الجدول المصدر عن طريق إيقاف مثيلات التطبيق أو أي عملاء يتصلون به مؤقتا.
- إنشاء مهمة النسخ.
- راقب تقدم مهمة النسخ وانتظر حتى تكتمل.
- استأنف العمليات عن طريق توجيه التطبيق أو العميل بشكل مناسب إلى الجدول المصدر أو الهدف على النحو المنشود.
إشعار
نوصي بشدة بالتوقف عن تنفيذ أي عمليات على الجدول المصدر قبل بدء مهمة نسخ الجدول دون اتصال. قد لا يتم التقاط عمليات حذف العنصر والتحديثات التي يتم إجراؤها على الجدول المصدر بعد بدء مهمة النسخ. إذا تابعت تنفيذ العمليات على الجدول المصدر أثناء تقدم مهمة النسخ، فقد يكون لديك بيانات مكررة أو مفقودة في الجدول الهدف.
كيف يعمل نسخ الجدول؟
- يخصص النظام الأساسي مثيلات الحوسبة من جانب الخادم لحساب Azure Cosmos DB الوجهة.
- يتم تخصيص هذه المثيلات عند إنشاء وظيفة نسخ واحدة أو أكثر داخل الحساب.
- تعمل مهام النسخ على هذه المثيلات.
- تُنفذ مهمة واحدة عبر جميع المثيلات في أي وقت.
- تتم مشاركة المثيلات بواسطة جميع مهام النسخ التي تعمل داخل نفس الحساب.
- تستخدم مهام النسخ دون اتصال موجز التغيير لنسخ البيانات ونسخ التغييرات المتزايدة من الجدول المصدر إلى الجدول الوجهة.
- قد يقوم النظام الأساسي بإلغاء تخصيص المثيلات إذا كانت خامدة لأكثر من 15 دقيقة.
العوامل التي تؤثر على معدل مهمة النسخ
تحدد هذه العوامل معدل تقدم مهمة نسخ الحاوية:
حاوية المصدر أو إعداد معدل نقل قاعدة البيانات.
الحاوية الهدف أو إعداد معدل نقل قاعدة البيانات.
تلميح
قم بتعيين معدل نقل الحاوية الهدف إلى ضعف معدل نقل الحاوية المصدر على الأقل.
مثيلات الحوسبة من جانب الخادم التي يتم تخصيصها لحساب Azure Cosmos DB لإجراء نقل البيانات.
هام
يوفر SKU الافتراضي مثيلين من جانب الخادم 4-vCPU 16 غيغابايت لكل حساب.
القيود
معاينة معايير الأهلية
لا تعمل مهام نسخ الحاوية مع الحسابات التي تم تمكين الإمكانات التالية لها. قم بتعطيل هذه الميزات قبل تشغيل مهام نسخ الحاوية:
تكوينات الحساب
لم يتم ضبط إعداد مدة البقاء (TTL) في حاوية الوجهة. ونتيجة لذلك، إذا لم تنته صلاحية مستند في الحاوية المصدر، فإنه يبدأ العد التنازلي من جديد في الحاوية الوجهة.
الأسئلة المتداولة
هل هناك اتفاقية على مستوى الخدمة لمهام نسخ الحاوية؟
يتم دعم مهام نسخ الحاوية حاليا على أساس أفضل جهد. نحن لا نقدم أي ضمانات اتفاقية على مستوى الخدمة (SLA) للوقت الذي يستغرقه انتهاء المهام.
هل يمكنني إنشاء مهام نسخ حاوية متعددة داخل حساب؟
نعم، يمكنك إنشاء مهام متعددة داخل نفس الحساب. يتم تشغيل المهام على التوالي. يمكنك سرد جميع المهام التي تم إنشاؤها داخل حساب، ومراقبة تقدمها.
هل يمكنني نسخ قاعدة بيانات بأكملها داخل حساب Azure Cosmos DB؟
يجب إنشاء مهمة لكل حاوية في قاعدة البيانات.
لدي حساب Azure Cosmos DB مع مناطق متعددة. في أي منطقة سيتم تشغيل مهمة نسخ الحاوية؟
يتم تشغيل مهمة نسخ الحاوية في منطقة الكتابة. في حساب تم تكوينه مع عمليات الكتابة متعددة المناطق، يتم تشغيل المهمة في إحدى المناطق في قائمة مناطق الكتابة.
ماذا يحدث لمهام نسخ الحاوية عند تغيير منطقة كتابة الحساب؟
قد تتغير منطقة الكتابة للحساب في السيناريو النادر لحدوث انقطاع في المنطقة أو بسبب تجاوز الفشل اليدوي. في هذا السيناريو، تفشل مهام نسخ الحاوية غير المكتملة التي تم إنشاؤها داخل الحساب. ستحتاج إلى إعادة إنشاء هذه الوظائف الفاشلة. إعادة إنشاء المهام ثم تشغيلها في منطقة الكتابة الجديدة (الحالية).
المناطق المدعومة
نسخ الحاوية مدعوم حالياً في المناطق التالية:
الأمريكتان | أوروبا وأفريقيا | آسيا/المحيط الهادئ |
---|---|---|
جنوب البرازيل | وسط فرنسا | وسط أستراليا |
وسط كندا | جنوب فرنسا | وسط أستراليا 2 |
شرق كندا | منطقة شمال ألمانيا | شرق أستراليا |
Central US | وسط غرب ألمانيا | وسط الهند |
EUAP بوسط الولايات المتحدة | أوروبا الشمالية | شرق اليابان |
شرق الولايات المتحدة | شرق النرويج | وسط كوريا |
East US 2 | غرب النرويج | جنوب شرق آسيا |
شرق الولايات المتحدة 2 EUAP | شمال سويسرا | الإمارات العربية المتحدة، الوسط |
وسط شمال الولايات المتحدة | غرب سويسرا | West India |
South Central US | جنوب المملكة المتحدة | شرق آسيا |
غرب وسط الولايات المتحدة | غرب المملكة المتحدة | جنوب ماليزيا |
غرب الولايات المتحدة | أوروبا الغربية | غرب اليابان |
West US 2 | إسرائيل الوسطى | جنوب شرق أستراليا |
غير مدعوم | جنوب أفريقيا | غير مدعوم |
المشاكل المعروفة والمشتركة
خطأ - مورد المالك غير موجود.
إذا فشل إنشاء المهمة وعرض مورد مالك الخطأ غير موجود (رمز الخطأ 404)، إما أن الحاوية الهدف لم يتم إنشاؤها بعد أو أن اسم الحاوية المستخدم لإنشاء المهمة لا يتطابق مع اسم حاوية فعلي.
تأكد من إنشاء الحاوية الهدف قبل تشغيل المهمة وتأكد من تطابق اسم الحاوية في الوظيفة مع اسم حاوية فعلي.
"code": "404", "message": "Response status code does not indicate success: NotFound (404); Substatus: 1003; ActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; Reason: (Message: {\"Errors\":[\"Owner resource does not exist\"]
خطأ - الطلب غير مصرح به.
إذا فشل الطلب وعرض الخطأ غير مصرح به (رمز الخطأ 401)، فقد يتم تعطيل التخويل المحلي.
تستخدم مهام نسخ الحاوية المفاتيح الأساسية للمصادقة. إذا تم تعطيل التخويل المحلي، يفشل إنشاء الوظيفة. يجب تمكين التخويل المحلي لكي تعمل مهام نسخ الحاوية.
"code": "401", "message": " Response status code does not indicate success: Unauthorized (401); Substatus: 5202; ActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; Reason: Local Authorization is disabled. Use an AAD token to authorize all requests."
خطأ - خطأ أثناء الحصول على موارد للوظيفة.
قد يحدث هذا الخطأ بسبب مشكلات في الخادم الداخلي. لحل هذه المشكلة، اتصل بدعم Microsoft عن طريق فتح طلب دعم جديد في مدخل Microsoft Azure. بالنسبة إلى نوع المشكلة، حدد ترحيل البيانات. بالنسبة إلى النوع الفرعي المشكلة، حدد نسخة حاوية داخل الحساب.
"code": "500" "message": "Error while getting resources for job, StatusCode: 500, SubStatusCode: 0, OperationId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, ActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
الخطوات التالية
- تعرف على كيفية إنشاء مهام نسخ الحاوية ومراقبتها وإدارتها في حساب Azure Cosmos DB باستخدام أوامر CLI.