تفاوت بین Backup و Snapshot در پایگاه داده چیست

خلاصه
1404/07/26

در دنیای پایگاه داده، Backup و Snapshot هر دو ابزارهایی برای محافظت از اطلاعات شما هستند، اما تفاوت‌های کلیدی در نحوه عملکرد و کاربردهای آن‌ها وجود دارد: **Backup (پشتیبان گیر

تفاوت بین Backup و Snapshot در پایگاه داده چیست

در دنیای پایگاه داده، Backup و Snapshot هر دو ابزارهایی برای محافظت از اطلاعات شما هستند، اما تفاوت‌های کلیدی در نحوه عملکرد و کاربردهای آن‌ها وجود دارد:

**Backup (پشتیبان گیری):**

* **تعریف:** یک کپی کامل یا جزئی از داده‌ها در یک نقطه مشخص از زمان است که در یک مکان جداگانه ذخیره می‌شود.
* **هدف:** ایجاد یک نسخه قابل بازیابی از پایگاه داده برای بازیابی اطلاعات در صورت بروز فاجعه، خرابی سخت افزار، یا خطای انسانی.
* **عملکرد:**
* می‌تواند **کامل (Full)**، **تفاوضی (Differential)** یا **افزایشی (Incremental)** باشد.
* معمولاً به یک بازه زمانی مشخص (مثلاً روزانه، هفتگی) زمانبندی می‌شود.
* ممکن است پایگاه داده را در حین پشتیبان گیری مسدود کند یا عملکرد آن را کاهش دهد (بسته به نوع پشتیبان گیری).
* برای بازیابی کامل پایگاه داده به یک نقطه خاص در زمان استفاده می‌شود.
* عموماً شامل داده‌ها و همچنین ساختار پایگاه داده (Schema) است.
* **موارد استفاده:**
* بازیابی کامل پایگاه داده پس از فاجعه
* بازیابی داده‌های از دست رفته یا آسیب دیده
* انتقال پایگاه داده به یک سرور جدید
* ایجاد یک نسخه آرشیوی از پایگاه داده برای اهداف حسابرسی یا انطباق

**Snapshot (تصویر فوری):**

* **تعریف:** یک کپی لحظه‌ای (Point-in-time) از داده‌ها است که به سرعت ایجاد می‌شود و به فضای ذخیره‌سازی کمتری نسبت به پشتیبان گیری کامل نیاز دارد.
* **هدف:** ایجاد یک نسخه خواندنی و ثابت از پایگاه داده برای اهدافی مانند گزارش گیری، آزمایش، یا تجزیه و تحلیل، بدون اینکه بر عملکرد پایگاه داده اصلی تأثیر بگذارد.
* **عملکرد:**
* به سرعت ایجاد می‌شود، معمولاً با استفاده از تکنیک‌های Copy-on-Write.
* به فضای ذخیره‌سازی کمتری نسبت به پشتیبان گیری کامل نیاز دارد، زیرا فقط تغییرات را ذخیره می‌کند.
* تأثیر کمتری بر عملکرد پایگاه داده اصلی دارد.
* می‌تواند برای بازیابی سریع به یک نقطه خاص در زمان استفاده شود، اما معمولاً برای بازیابی کامل پس از فاجعه مناسب نیست.
* عموماً فقط شامل داده‌ها است و ساختار پایگاه داده (Schema) را شامل نمی‌شود (مگر اینکه به طور خاص کپی شود).
* **موارد استفاده:**
* ایجاد یک نسخه خواندنی از پایگاه داده برای گزارش گیری و تجزیه و تحلیل
* ایجاد یک محیط آزمایشی برای آزمایش تغییرات بدون تأثیر بر پایگاه داده اصلی
* بازیابی سریع به یک نقطه خاص در زمان (مانند بازگرداندن یک جدول حذف شده)

**جدول مقایسه‌ای:**

| ویژگی | Backup | Snapshot |
|---------------|-------------------------------------------------|-------------------------------------------------|
| هدف | بازیابی در صورت فاجعه، خرابی، یا خطای انسانی | ایجاد نسخه خواندنی برای گزارش گیری، آزمایش، و غیره |
| نوع کپی | کامل یا جزئی | لحظه‌ای (Point-in-time) |
| زمان ایجاد | طولانی‌تر | سریع |
| فضای ذخیره سازی | بیشتر | کمتر