مفهوم scaling horizontally وscaling vertically در دیتابیس ها

مفهوم scaling horizontally وscaling vertically در دیتابیس ها

Horizontal scaling یا بزرگ کردن افقی به معنی افزایش مقیاس دیتابیس با استفاده از افزایش سرور ها است . به این منظور که شما به راحتی با افزایش سرورها و کنار هم قرار دادن آنها می توانید به بزرگ کردن scale بپردازید که در دیتابیس های جهان اغلب به صورت پارتیشن بندی کردن دیتاها ( partitioning  ) انجام می شود که در این صورت هر node یا سرور تنها بخشی از کل دیتاها را نگهداری می کند .

سرورهای مقیاس افقی همچنین می توانند از تکثیر داده ها استفاده کنند، به موجب آن یک ماشین یک نسخه اولیه از کل پایگاه داده را نگه می دارد در حالی که چندین نسخه دیگر برای بارگیری فقط خواندنی استفاده می شود.
Vertical scaling یا بزرگ کردن عمودی, بزرگ کردن و مقیاس دادن را با استفاده از افزایش resources های سرور یعنی تعداد cpu و ram در سرور جاری انجام می دهید . در Vertical scaling داده ها غالبا روی یک node یا سرور قرار دارند و شما می توانید در صورت نیاز به افزایش تعداد  cpu و ram آن بپردازید .
معمولا پیاده سازی Horizontal scaling ساده تر و داینامیک تر می باشد  و تغریبا بدون محدودیت می توانید سرورهای جدیدی را برای افزایش مقایس , اضافه کنیم اما در Vertical scaling نهایت دچار محدودیت ظرفیت cpu و ram می شویم.
مثال های خوبی که می توان برای Horizontal scaling زد :
Cassandra
MongoDB
مثالهایی که می توان برای Vertical scaling زد
MySQL
(Amazon RDS (The cloud version of MySQL
نویسنده :
مجید پورداود
  • مجید پورداود
  • مهندس نرم افزار و تحلیلگر ارشد سیستم های کامپیوتری تحت وب می باشم. از سال 1395 برنامه نویسی را شروع کردم و به زبان های php (فریم ورک laravel -codeigniter)  و زبان جاوا اسکریپت (فریم ورک express.js-nest.js)  تسلط دارم.  

ثبت دیدگاه جدید

0 دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *