در زمینه ذخیره سازی و مدیریت دادهها، Replication به عمل ایجاد و نگهداری چندین نسخه از دادهها در سیستم ذخیره سازی اشاره دارد. این کار برای افزایش دسترسی به دادهها، تحمل خطا و عملکرد انجام میشود. هنگامی که دادهها در استوریج Replication میشوند، به این معنی است که کپیهای یکسان از دادهها در چندین دستگاه یا سیستم استوریج ذخیره میشوند.
یکی از مباحثی که باید قبل از خرید استوریج نسبت به آن آگاهی داشته باشید مبحث Replication میباشد.
Replication همزمان یک روش تکرار داده است که در آن تغییراتی که در Site A اعمال میشوند، به طور فوری در Site B تکثیر یا کپی میشوند. این بدان معناست که هر تغییر یا عمل نوشتنی که بر روی داده اصلی انجام میشود، تا زمانی که تغییرات مشابه با موفقیت در منبع داده فرعی تکثیر شوند، متوقف میشود. ویژگیهای کلیدی Replication همزمان عبارتند از:
سازگاری فوری: Replication همزمان تضمین میکند که نسخههای اولیه و ثانویه اطلاعات همیشه هماهنگ هستند. این سازگاری خطر ناسازگاری اطلاعات را در صورت خرابی به حداقل میرساند.
یکپارچگی اطلاعات: از آنجایی که تغییرات تا زمانی که تکرار نشوند به عنوان Replication شناخته نمیشوند، سطح بالایی از یکپارچگی و دوام اطلاعات را فراهم میکند.
دسترسی به اطلاعات: در صورت خرابی در سیستم اصلی، کپی ثانویه میتواند به طور یکپارچه کنترل شود و کاربران میتوانند بدون اختلال، به اطلاعات دسترسی داشته باشند.
به عبارتی، Replication غیر همزمان یک روش تکرار داده است که تغییرات اعمال شده در Site A به طور فوری به Site B کپی نمیشوند. به جای آن، تأخیری بین عملیات نوشتن در سیستم اصلی و تکثیر این تغییرات به سیستم فرعی وجود دارد. ویژگیهای کلیدی Replication ناهمزمان عبارتند از:
تأخیر در انتقال اطلاعات: Replication ناهمزمان باعث وقوع تأخیر در اطلاعات میشود. ممکن است تأخیری میان تغییرات اعمال شده به سیستم اصلی و سیستم فرعی وجود داشته باشد. به این معنا که در صورت وقوع خطا، برخی از تغییرات، ممکن است از بین برود.
عملکرد: Replication ناهمزمان معمولاً عملکرد نوشتن بهتری نسبت به Replication همزمان دارد زیرا عملیات نوشتن در سیستم اصلی توسط فرآیند Replication تأخیر نخواهد خورد.
قابلیت مقیاسپذیری: این روش معمولاً در سناریوهایی استفاده میشود که یکپارچگی دیتا به طور بیوقفه مهم نیست و تمرکز بر عملکرد نوشتن و قابلیت مقیاسپذیری بیشتر است.
پیاده سازی و اجرای Replication معمولا شامل چندین روش و استراتژی است. که در ادامه به بررسی رویکردهای رایج برای پیاده سازی و اجرای Replication میپردازیم:
Replication دیتابیس:
سیستمهای مدیریت دیتابیس (DBMS): بسیاری از DBMSهای مدرن مانند Oracle ،MySql و Server SQL ویژگیهای رپلیکیشن دیتابیس داخلی را ارائه میدهند که امکان پیکربندی و مدیریت آسان رپلیکیشن دیتابیس را فراهم میکنند.
Replication در سطح فایل و Block:
شبکههای ذخیرهسازی (SAN): SANها اغلب ویژگیهای رپلیکیشن را دارند که میتوانند اطلاعات را در سطح Block یا فایل بین دستگاههای ذخیرهسازی مختلف تکثیر کنند. این اغلب برای Disaster Recovery و تکرار اطلاعات استفاده میشود.
Replication مرکز داده:
اتصالات مرکز داده: سازمانها با چندین مرکز داده ممکن است از اتصالات اختصاصی یا اتصالات شبکه با سرعت بالا برای تکثیر اطلاعات بین مراکز داده مختلف به منظور Disaster Recovery یا Load Balance استفاده کنند.
Replication مبتنی بر Cloud:
ارائه دهندگان خدمات Cloud: ارائه دهندگان Cloud مانند AWS ،Azure و گوگل Cloud خدمات و ابزاری برای تکثیر اطلاعات در میان مراکز داده یا مناطق مختلف خود ارائه میدهند. کاربران میتوانند تکثیر را از طریق پنلهای کنترل پلتفرم ابری خود یا رابطهای برنامه نویسی آنها پیکربندی کنند.
Replication در سطح برنامه:
برنامههای سفارشی: برخی از برنامهها مکانیزمهای رپلیکیشن خود را پیاده میکنند که تغییرات در اطلاعات را ردیابی کرده و به چند نسخه از برنامه یا دیتابیس منتقل کنند. این مکانیزم معمولاً نیاز به توسعه سفارشی دارد.
ابزارهای همگامسازی فایل:
خدمات همگامسازی و پشتیبانگیری فایل: ابزارهایی مانند دراپ باکس، گوگل درایو و واندرایو امکان همگامسازی و رپلیکیشن فایل را برای کاربران فردی، کسبوکارهای کوچک و سازمانها فراهم میکنند.
ابزارهای Replication سختافزاری:
دستگاههای سختافزاری ویژه: برخی از سازمانها از دستگاههای سختافزاری که برای رپلیکیشن داده به منظور موارد مشخص به کار میروند، استفاده میکنند. این دستگاهها میتوانند برای موارد خاص، سرعت بالا و رپلیکیشن قابل اعتمادی فراهم کنند.