النسخ الاحتياطية التلقائية

يمكن لمستخدمي خطة Blaze إعداد Firebase Realtime Database للاحتفاظ بنسخ احتياطية تلقائية، وهي ميزة ذاتية الخدمة تتيح الاحتفاظ بنسخ احتياطية يومية من بيانات تطبيق قاعدة البيانات وSecurity Rules بتنسيق JSON في حاوية Cloud Storage.

الإعداد

  1. في Firebase Console، انتقِل إلى قواعد البيانات ومساحة التخزين > قاعدة بيانات الوقت الفعلي.

  2. في علامة التبويب النُسخ الاحتياطية ، استخدِم سير العمل داخل وحدة التحكّم لإعداد النُسخ الاحتياطية التلقائية.

لتوفير تكاليف التخزين، نفعِّل ضغط Gzip تلقائيًا، ويمكنك اختيار تفعيل سياسة مدة بقاء تبلغ 30 يومًا على الحاوية لحذف النُسخ الاحتياطية التي مرّ عليها أكثر من 30 يومًا تلقائيًا.

يمكنك الاطّلاع على الحالة ونشاط الاحتفاظ بنسخة احتياطية مباشرةً في Firebase console حيث يمكنك أيضًا بدء عملية احتفاظ بنسخة احتياطية يدويًا. يمكن أن يكون ذلك مفيدًا لأخذ لقطات في أوقات محدّدة أو كإجراء أمان قبل إجراء أي تغييرات في الرمز.

بعد الإعداد، سيتم إنشاء حاوية Cloud Storage جديدة لك مع إذن "الكاتب" لـ Firebase. يجب عدم تخزين البيانات في هذه الحاوية إذا لم تكن مرتاحًا لوصول Firebase إليها. لن يتمكّن Firebase من الوصول إلى حاويات Cloud Storage الأخرى أو أي مناطق أخرى في Google Cloud.

الاستعادة من النُسخ الاحتياطية

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

يتوفّر لك خياران لكيفية استيراد بياناتك:

  • الخيار 1: استخدِم Firebase Console.

    1. انتقِل إلى علامة التبويب قواعد البيانات ومساحة التخزين > قاعدة بيانات الوقت الفعلي > البيانات.

    2. انقر على استيراد JSON، واختَر ملف JSON لبيانات التطبيق.

  • الخيار 2: أرسِل طلب CURL من سطر الأوامر.

    1. استردِ سرًا من Firebase، يمكنك الحصول عليه من علامة التبويب قواعد البيانات ومساحة التخزين > قاعدة بيانات الوقت الفعلي > الإعدادات.

    2. أدخِل ما يلي في الجهاز، مع استبدال الحقلَين DATABASE_NAME وSECRET بقيمك الخاصة:

      curl 'https://<DATABASE_NAME>.firebaseio.com/.json?auth=<SECRET>&print=silent' -X PUT -d @<DATABASE_NAME>.json
      

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

الجدولة

يتم تخصيص ساعة معيّنة كل يوم للاحتفاظ بنسخة احتياطية من "قاعدة البيانات"، ما يضمن توزيع الحمل بالتساوي وأعلى درجة من التوفّر لجميع العملاء الذين يحتفظون بنسخ احتياطية. سيتم الاحتفاظ بالنسخة الاحتياطية المُجدوَلة بغض النظر عمّا إذا كنت تحتفظ بأي نُسخ احتياطية يدويًا على مدار اليوم.

تسمية الملفات

سيتم وضع طابع زمني (وفقًا لمعيار ISO 8601) على الملفات التي يتم نقلها إلى حاوية Cloud Storage، وسيتم استخدام اصطلاحات التسمية التالية:

  • بيانات "قاعدة البيانات": YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_data.json
  • قواعد "قاعدة البيانات": YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json

إذا كانت ميزة Gzip مفعَّلة، سيتم إلحاق اللاحقة .gz بأسماء الملفات. يمكنك العثور بسهولة على النُسخ الاحتياطية من تاريخ أو وقت معيّنَين باستخدام Cloud Storage البحث عن البادئة.

ضغط Gzip

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

لفك ضغط ملفات JSON المضغوطة باستخدام Gzip، أرسِل أمر سطر أوامر باستخدام الملف الثنائي gunzip الذي يتم شحنه تلقائيًا لنظام التشغيل OS-X ومعظم توزيعات Linux.

gunzip <DATABASE_NAME>.json.gz  # Will unzip to <DATABASE_NAME>.json

مدة بقاء التخزين لمدة 30 يومًا

نقدّم مفتاح إعداد سهل الاستخدام يفعِّل سياسة مدة بقاء تلقائية للكائنات تبلغ 30 يومًا لحاوية Cloud Storage. عند تفعيل هذه السياسة، سيتم حذف الملفات في الحاوية تلقائيًا بعد 30 يومًا. يساعد ذلك في تقليل النُسخ الاحتياطية القديمة غير المرغوب فيها، ما يوفّر لك تكاليف التخزين ويحافظ على نظافة دليل الحاوية. إذا وضعت ملفات أخرى في حاوية "النُسخ الاحتياطية التلقائية"، سيتم حذفها أيضًا بموجب السياسة نفسها.

التكاليف

يمكن تفعيل ميزة "النُسخ الاحتياطية" للمشاريع في خطة Blaze بدون أي تكلفة إضافية. ومع ذلك، سيتم تحصيل الرسوم منك بالأسعار العادية مقابل ملفات النُسخ الاحتياطية التي يتم وضعها في حاوية Cloud Storage. يمكنك تفعيل ضغط Gzip وسياسة مدة بقاء التخزين لمدة 30 يومًا لتقليل تكاليف التخزين.