تفاوت Differential Backup و Incremental Backup چیست؟

هردو نوع بکاپ Differential و Incremental روش های بکاپ گیری هوشمندی هستند که زمان و فضای دیسک را بوسیله بکاپ گیری از فایل های تغییر کرده ذخیره می کنند. اما تفاوت این روش ها به طور قابل ملاحظه ای در این است که چگونه کار بکاپ گیری از داده ها را انجام می دهند.

یک Full backup از تمام فایل های یک پارتیشن و یا یک هارد دیسک بوسیله کپی کردن تمام سکتورهای حاوی داده بدست می آید. در ایجاد یک Full Backup از یک فایل سیستم ناشناخته و یا آسیب دیده تمام سکتورها چه آنهایی که داده دارند و چه آنهایی که داده ندارند در یک Image File کپی می شوند. این ساده ترین فرم تهیه بکاپ می باشد، البته این روشی است که با کمترین انعطاف پذیری، بیشترین زمان را گرفته و فضای زیادی را نیاز دارد. عموماً Full Backupها بخشی از یک نقشه کلی تهیه بکاپ هستند و فقط یکبار در هفته انجام می شوند. گاهی اوقات یک Full Backup بعد از یک تغییر اساسی در داده های ذخیره شده بر روی دیسک انجام می شود، مانند Upgrade یک سیستم عامل و یا نصب یک نرم افزار. فواصل نسبتاً طولانی بین بکاپ ها به این معنی می باشد که اگر چیزی خراب شود، حجم بالایی از داده ها از دست خواهد رفت. به همین دلیل است که پیشنهاد می شود از داده ها در بین Full Backupها نیز بکاپ تهیه شود. بیشتر اطلاعات ذخیره شده بر روی کامپیوتر خیلی آرام تغییر کرده و یا اصلاً تغییری نمی کنند. این مسئله شامل برنامه های کاربردی، سیستم عامل و حتی داده های کاربر نیز می شود. عموماً فقط درصد کوچکی از اطلاعات در یک پارتیشن یا دیسک به صورت روزانه و یا حتی هفتگی تغییر می کنند. به همین دلیل می بایست از داده های تغییر کرده در یک روز بکاپ تهیه شود. این مسئله اساس یک استراتژی پیچیده بکاپ گیری می باشد.

پیش از آنکه در مورد این ویژگی های صحبت کنیم باید با مفاهیم RTO و RPO نیز آشنا شویم.

RTO

فرض می کنیم از سیستم پشتیبانگیری مطمئنی بهره می بریم. در این صورت در بازه های زمانی معین نسخه های پشتیبان اطلاعات خود را در اختیار داریم. پس از وقوع هر گونه حادثه ای نیاز داریم داده های خود را بازیابی (Recovery) کنیم. مدت زمانی که بازیابی اطلاعات از نسخه ی پشتیبان به طول می انجامد را Recovery Time Objective می گوییم.

RPO

با توجه به فرض قبل در صورت از دست رفتن اطلاعات و با بازیابی اطلاعات از روی نسخه های پشتیبان به زمان و داده های آخرین نسخه ی پشتیبان خواهیم رسید و مقداری از اطلاعات را از دست خواهیم داد. به زمانی که پس از بازگشت از بحران به آن برمیگردیم Recovery Point Objective گفته می شود.

Incremental Backup :

ابتدایی ترین شکل Incremental Backup از شناسایی، رکورد و در نتیجه حفظ آن فایل هایی که از آخرین بکاپ گرفته شده، تغییر کرده اند تشکیل شده است. تا زمانی که تغییرات عموماً کم هستند، Incremental Backupها کوچکتر و البته سریعتر نسبت به Full Backupها خواهند بود. برای مثال پس از یک Full Backup در روز جمعه، بکاپ روز دوشنبه فقط آن فایل هایی را که از جمعه تا اکنون تغییر کرده اند شامل خواهد شد. اکنون بکاپ روز سه شنبه نیز فقط آن فایل هایی را که از روز دوشنبه تغییر کرده اند شامل خواهد شد (خواه آخرین بکاپ Full و یا Incremental بوده باشد)، و این روال تا Full Backup بعدی ادامه خواهد یافت. مشخصه یک Incremental Backup این است که در زمان های کوتاه تری بین بکاپ ها اجرا شده، و هر مرتبه از داده های کمتری بکاپ گرفته می شود. البته بازیابی داده ها از آنجایی که تمام Incremental Backupها به همراه آخرین Full Backup باید بازیابی شوند به طور طبیعی کندتر خواهد بود. همچنین اگر یکی از این Incremental Backupها دچار مشکل شود بازیابی فایل ها ناتمام خواهد ماند.

Differential Backup :

قدم بعدی در تکامل استراتژی بکاپ گیری، Differential Backupها می باشند. Differential Backup یک روش تهیه بکاپ تجمعی از تمام تغییرات ایجاد شده از زمان آخرین Full Backup می باشد. برای مثال قرار است یک Full Backup در روز یکشنبه تهیه شود. در روز دوشنبه نیز فقط از فایل های تغییر کرده نسبت به Full Backup روز یکشنبه بکاپ گرفته خواهد شد، در روز بعد یعنی سه شنبه نیز از فایل های تغییر کرده از Full Backup یکشنبه تاکنون، بکاپ گرفته می شود؛ و این روال همین طور تا زمان Full Backup بعدی ادامه خواهد یافت. Differential Backupها نسبت به Full Backupها سریعتر هستند؛ زیرا از حجم کمتری داده بکاپ می گیرند. مزیت این روش بکاپ گیری این است که زمان بازیابی آن سریعتر بوده و همچنین برای بازیابی فایل ها فقط به آخرین Full Backup و Differential Backup نیاز دارد. اما ایراد این روش، این است که برای هر روز سپری شده بعد از آخرین Full Backup، حجم داده بیشتری برای بکاپ گرفتن وجود خواهد داشت، به خصوص اگر بخش قابل توجهی از داده ها تغییر کرده باشد.