النسخ الاحتياطي الآلي

يمكن لمستخدمي خطة Blaze إعداد قاعدة بيانات Firebase Realtime الخاصة بهم للنسخ الاحتياطي التلقائي، وهي ميزة خدمة ذاتية تتيح إجراء نسخ احتياطي يومي لبيانات تطبيق قاعدة البيانات وقواعده بتنسيق JSON في مجموعة التخزين السحابي .

يثبت

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

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

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

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

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

لاستعادة Firebase الخاص بك من نسخة احتياطية، قم أولاً بتنزيل الملف من Cloud Storage إلى القرص المحلي لديك. يمكن القيام بذلك عن طريق النقر فوق اسم الملف الموجود في قسم نشاط النسخ الاحتياطي أو من واجهة مجموعة Cloud Storage. إذا كان الملف مضغوطًا بصيغة 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

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

الجدولة

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

تسمية الملف

سيتم وضع طابع زمني على الملفات المنقولة إلى مجموعة التخزين السحابي الخاصة بك (معيار 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 لتوفير تكاليف التخزين وتقليل أوقات النقل. يختلف حجم الملف المضغوط وفقًا لخصائص البيانات في قاعدة البيانات الخاصة بك، ولكن قواعد البيانات النموذجية قد تتقلص إلى ⅓ حجمها الأصلي، مما يوفر عليك تكاليف التخزين ويقلل وقت تحميل النسخ الاحتياطية.

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

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

تخزين دورة حياة 30 يوما

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

التكاليف

يمكن تمكين ميزة النسخ الاحتياطية للمشاريع الموجودة في خطة Blaze دون أي تكلفة إضافية. ومع ذلك، سيتم محاسبتك بالأسعار القياسية لملفات النسخ الاحتياطي الموجودة في مجموعة التخزين السحابي الخاصة بك. يمكنك تمكين دورة حياة Gzip Compression and Storage لمدة 30 يومًا لتقليل تكاليف التخزين لديك.