مقدمه

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

خوشه ‌بندی پایگاه داده چگونه کار می ‌کند؟

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

کاربردهای خوشه‌ بندی پایگاه داده

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

خوشه‌ بندی پایگاه داده: تعادل بار

تعادل بار به طور معمول تنها با خوشه ‌بندی پایگاه داده ایجاد نمی ‌شود بلکه لازم است تا تنظیمات خاصی بدین ‌منظور ایجاد شود. در واقع معنای تعادل بار آن است که حجم کار بر روی کامپیوترهای مختلفی که بخشی از خوشه است توزیع می ‌شود. معنای این امر آن است که اگر به هر دلیل ترافیک قابل توجهی در سیستم ایجاد شود، این اطمینان وجود دارد که می‌ توان سیستم را در برابر این حجم جدید، پشتیبانی کرد. یعنی اینکه لازم نیست تمام بار ترافیک بر روی یک سیستم قرار گرفته و بقیه وظیفه ‌ای نداشته باشند. در این وضعیت در صورت نیاز دیگر سیستم‌‌ ها به حالت یکپارچه درخواهند آمد. این فرآیند به طور مستقیم با دسترسی بالا ارتباط دارد.
دسترسی بالا: زمانی که بتوانید به پایگاه داده دسترسی داشته باشید، گفته می ‌شود که پایگاه داده در دسترس قرار دارد. دسترسی بالا به تعداد دفعاتی اشاره دارد که پایگاه داده تحت عنوان در دسترس تلقی می ‌شود. به عنوان مثال اگر یک پایگاه داده تنها در 99 درصد مواقع در دسترس باشد، در اینصورت سیستم با مشکلاتی مواجه خواهد شد زیرا به مدت 3.6 روز در هر سال سیستم شما قادر به پاسخگویی نیست. میزان در دسترس بودن تا حد زیادی به تراکنش‌ هایی بستگی دارد که بر روی پایگاه داده انجام می ‌شود و اینکه هر چند وقت یک بار هر نوع تحلیلی را بر روی داده‌ های خود انجام می ‌دهید.

با خوشه ‌بندی پایگاه داده به دو دلیل می ‌توانیم به سطح بسیار بالایی از دسترسی برسیم

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

انواع خوشه‌ بندی پایگاه داده

سه نوع خوشه‌ بندی پایگاه داده بر اساس نحوه ‌ی اتصال سیستم‌ ها به دستگاه اصلی دسته ‌بندی داده ‌ها وجود دارد:

خوشه ‌ی کوئوروم تک (Single Quorum Cluster)
این نوع خوشه ‌بندی به طور معمول مورد استفاده است و شامل چندین سیستم با یک یا چند آرایه‌ ی دیسک خوشه که از یک دستگاه ارتباطی تک استفاده می ‎کنند، می ‌شود. یکی از سرورها، کل خوشه را مدیریت کرده و دارای هر یک از آرایه‌ های دیسک خوشه موجود در درون خوشه است. خوشه ‌ی کوئوروم سیستمی است که برای آنلاین بودن هر خوشه و یا عدم سازش آن به کار می ‌رود.
این نوع خوشه ‌بندی در عمل بسیار ساده هستند. هر یک از سیستم ‌های متصل می‌ توانند به سیستم مرکزی اعلام کنند که آنلاین بوده و در حال انجام وظایف خود هستند. تا زمانی که بیش تر از 50% از سیستم‌ های متصل آنلاین باشند، خوشه برقرار بوده و اجرا می‌ شود. اگر بیش از 50 درصد از سیستم ‌ها نتوانند به وظایف خود عمل کنند، این نوع خوشه ‌بندی از کار افتاده و تا زمان رفع مشکل غیرفعال باقی خواهد ماند.

خوشه تنظیم‌ شده بر اساس اکثریت نودها (Majority Node Set Cluster)
درست مانند خوشه ‌بندی قبلی است و تنها تفاوت در این است که هر یک از نودها دارای نسخه ‌ی خود از اطلاعات پیکربندی خوشه هستند و این اطلاعات در تمامی سیستم ‌ها یکسان است. این مدل خوشه‌ بندی برای سرورهایی که از لحاظ جغرافیایی در نقاط مختلفی قرار دارند کاملاً مفید عمل می‌کند. تفاوت این روش با روش قبلی در این است که به یک سیستم اصلی مشترک ذخیره نیاز دارد. نحوه‌ ی عملکرد این نوع خوشه ‌بندی باعث می ‌شود که انعطاف بالاتری را نسبت به روش قبلی ایجاد کند.

خوشه‌ ی تک‌ گره ‌ای (Single Node Cluster)
این نوع خوشه ‌بندی که بیشر مواقع برای اهداف آزمایشی مورد استفاده قرار می ‌گیرد، دارای یک نود است. این نوع خوشه‌ بندی اغلب ابزاری برای توسعه و تحقیق کاربردهای خوشه‌ ها است و استفاده از آنها به علت ماهیت محدودی که دارند چندان گسترده نیست. از آنجا که این نوع خوشه‌ بندی تنها داری یک گره است، ایجاد اختلال در آن سیستم باعث از کار افتادن کل خوشه خواهد شد.

نتیجه ‌گیری

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

البته واضح است که در هر شرایطی نمی‌ توان از این روش استفاده کرد و تنها با مطالعه ‌ی دقیق سیستم و اطلاع از نیازمندی‌ ها و اهداف مجموعه می ‌توان روش مناسب را برای سیستم‌ های مورد نظر تعریف کرد و از مزایا و کاربردهای آن بهره‌مند شد. شما می‌ توانید با ارائه‌ی نظرات و تجربیات خود ما را در بهبود کیفیت مطالب یاری کنید.