بررسی اجمالی بازیابی نقطه در زمان (PITR).

مربوط به نسخه استاندارد Cloud Firestore و نسخه سازمانی Cloud Firestore.

بازیابی نقطه‌ای در زمان (PITR) از حذف یا نوشتن تصادفی محافظت می‌کند. PITR نسخه‌هایی از اسناد شما را از زمان‌های گذشته نگهداری می‌کند. به عنوان مثال، در صورتی که توسعه‌دهنده‌ای داده‌های نادرست، حذف یا نوشتن تصادفی را ارسال کند، PITR می‌تواند داده‌ها را به نقطه‌ای از زمان در گذشته (حداکثر تا ۷ روز) بازیابی کند.

برای هر پایگاه داده زنده‌ای که از بهترین شیوه‌ها پیروی می‌کند، استفاده از PITR بر عملکرد خواندن یا نوشتن تأثیری ندارد.

پنجره PITR

پس از فعال کردن PITR، Cloud Firestore شروع به نگهداری داده‌های PITR می‌کند. داده‌های PITR به مدت ۷ روز در پنجره PITR نگهداری می‌شوند.

شما می‌توانید داده‌های مربوط به یک مهر زمانی را بر اساس زمان فعال شدن PITR بخوانید:

وضعیت فعال‌سازی PITR اولین داده‌های PITR موجود است
معلول ۱ ساعت قبل از زمان درخواست خواندن
ظرف ۷ روز فعال شد ۱ ساعت قبل از فعال شدن PITR
بیش از ۷ روز پیش فعال شده است ۷ روز قبل از زمان درخواست خواندن

یک نسخه در هر دقیقه در پنجره PITR نگهداری می‌شود. می‌توانید اسناد را با دقت دقیق و با استفاده از یک مهر زمانی کامل در هر دقیقه بخوانید. خواندن‌هایی که دقیق و با دقت دقیق نیستند، مانند 2023-05-30 09:00:00.1234AM خطایی مبنی بر قدیمی بودن read_time برمی‌گردانند.

در صورت چندین بار نوشتن، فقط یک نسخه از سند حفظ می‌شود. برای مثال، اگر سندی چندین بار نوشتن از v1, v2, ... vk بین تاریخ‌های 2023-05-30 09:00:00AM (به طور انحصاری) و 2023-05-30 09:01:00AM (شامل) داشته باشد، درخواست خواندن در تاریخ 2023-05-30 09:01:00AM نسخه vk سند را برمی‌گرداند.

شما می‌توانید از داده‌های ایجاد شده در طول پنجره PITR بخوانید. داده‌ها با جزئیات جزئی ذخیره می‌شوند و می‌توانید داده‌ها را با همان جزئیات بازیابی کنید. ویژگی PITR به طور پیش‌فرض غیرفعال است.

فیلد earliestVersionTime در پایگاه داده شما، اولین زمان مجاز برای خواندن داده‌های شما را مشخص می‌کند.

صرف نظر از اینکه PITR فعال باشد یا خیر، می‌توانید اسناد را در هر مهر زمانی با دقت میکروثانیه در یک ساعت گذشته بخوانید (اما نمی‌توانید آنها را صادر کنید)، اما نه قبل از earliestVersionTime .

راه‌های بازیابی اطلاعات

چندین روش برای بازیابی اطلاعات وجود دارد:

  • برای بازیابی بخشی از پایگاه داده ، یک عملیات خواندن قدیمی را با مشخص کردن یک شرط پرس و جو یا با استفاده از جستجوی مستقیم کلید به همراه یک مهر زمانی در گذشته انجام دهید و سپس نتایج را دوباره در پایگاه داده زنده بنویسید. این روش معمولاً برای عملیات جراحی در یک پایگاه داده زنده استفاده می‌شود. به عنوان مثال، اگر به طور تصادفی یک سند خاص را حذف کنید یا زیرمجموعه‌ای از داده‌ها را به اشتباه به‌روزرسانی کنید، می‌توانید آن را با این روش بازیابی کنید. برای دستورالعمل‌ها، به بازیابی بخشی از پایگاه داده خود مراجعه کنید.

  • برای بازیابی کل پایگاه داده ، از یکی از گزینه‌های زیر استفاده کنید:

    • برای ایجاد یک کپی از پایگاه داده در یک زمان مشخص، پایگاه داده را کلون کنید .

    • پایگاه داده را اکسپورت کنید و یک مهر زمانی در گذشته مشخص کنید و سپس آن را به یک پایگاه داده جدید وارد کنید. عملیات اکسپورت PITR از همه فیلترها، از جمله اکسپورت همه اسناد و اکسپورت مجموعه‌های خاص، پشتیبانی می‌کند.

    شما می‌توانید داده‌های PITR را که در آن‌ها مهر زمانی یک دقیقه کامل در هفت روز گذشته است، اما نه زودتر از earliestVersionTime کلون یا صادر کنید.

قیمت‌گذاری

قبل از فعال کردن PITR برای پایگاه داده خود، اطلاعات قیمت‌گذاری زیر را در نظر بگیرید:

  • فضای ذخیره‌سازی: Cloud Firestore با سازگاری با MongoDB، حجم پایگاه داده را روزانه اندازه‌گیری می‌کند. در طول یک ماه، از این نقاط نمونه میانگین گرفته می‌شود تا حجم فضای ذخیره‌سازی پایگاه داده محاسبه شود. این مقدار میانگین در قیمت واحد PITR (گیگابایت در ماه) ضرب می‌شود. برای اطلاعات بیشتر به قیمت‌گذاری فضای ذخیره‌سازی مراجعه کنید.

    فضای ذخیره‌سازی PITR ردیف رایگان ندارد و اگر می‌خواهید از PITR استفاده کنید، باید صورتحساب را فعال کرده باشید.

  • محاسبه صورتحساب: هرگونه درخواستی که در طول بازه زمانی ۷ روزه PITR، چه از طریق خواندن اسناد قدیمی و چه از طریق صادرات، انجام دهید، هزینه‌های عملیات خواندن را بر اساس تعداد اسناد خوانده شده متحمل می‌شود. برای اطلاعات بیشتر به قیمت‌گذاری مراجعه کنید.

  • حداقل هزینه: حتی اگر PITR را ظرف یک روز پس از فعال‌سازی غیرفعال کنید، ممکن است تا سقف ۱ روز هزینه ذخیره‌سازی PITR از شما کسر شود.

قدم بعدی چیست؟