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

يمكن لمستخدمي خطة Blaze إعداد Firebase Realtime Database من أجل بالنسخ الاحتياطية التلقائية، وهي ميزة ذاتية الخدمة تتيح إنشاء نسخ احتياطية يومية بيانات تطبيق قاعدة البيانات والقواعد بتنسيق JSON إلى حزمة Cloud Storage

الإعداد

للبدء، انتقل إلى النُسخ الاحتياطية. علامة تبويب في قسم "قاعدة البيانات" في وحدة التحكم Firebase، وسيرشدك المعالج من خلال إعداد النسخ الاحتياطية التلقائية

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

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

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

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

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

هناك طريقتان لاستيراد بياناتك:

الطريقة الأولى: انقر على الزر "استيراد JSON" في قسم "بيانات قاعدة البيانات" واختَر ملف JSON لبيانات تطبيقك.

الطريقة الثانية: يمكنك أيضًا إصدار طلب CURL من سطر الأوامر.

استرِدّ أولاً سرًّا من Firebase، والذي يمكنك الحصول عليه بالانتقال إلى صفحة إعدادات قاعدة البيانات.

أدخِل بعد ذلك ما يلي في نافذة الوحدة الطرفية، مع استبدال DATABASE_NAME. وSECRET حقلاً للقيم الخاصة بك:

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

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

الجدولة

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

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

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

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

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

ضغط Gzip

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

لفك ضغط ملفات Gzipped JSON، أصدر أمر سطر أوامر باستخدام برنامج ثنائي 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 يومًا مراحل النشاط لتقليل مساحة التخزين للتصنيف الخاطئ.