وقتی دیتابیسها باید برای SSD آپدیت بشن
توی این پست، Marc Brooker بررسی میکنه که دیتابیسهای کلاسیک مثل PostgreSQL و MySQL که در دهههای ۹۰ و ۲۰۰۰ طراحی شدن، برای دیسکهای چرخان قدیمی بهینهسازی شده بودن، جایی که I/O بسیار کند بود و کارایی با خواندن ترتیبی دادهها تعیین میشد. اما امروزه SSDها، هزار برابر سریعتر هستن و این یعنی معماری سنتی دیتابیسها دیگه همیشه بهترین انتخاب نیست.
وقتی SSD رو در نظر میگیریم، دو بحث مهم پیش میاد:
۱. کش مناسب: SSDها سریعن، اما هنوز RAM ازشون خیلی سریعتره. به همین دلیل، دیتابیس باید کش رو جوری تنظیم کنه که بخش مهم دادهها (که احتمال دسترسی دوباره دارن) توی حافظه بمونه نه روی SSD
۲. سازماندهی I/O: درواقع SSDها نسبت به read/write حساسیت متفاوت دارن و بهترین کارایی وقتی بهدست میاد که اندازهی تراکنشها و الگوهای دسترسی با سرعت و IOPS SSD هماهنگ باشن.
نقش سرورهای ابری چیه؟
۱. وقتی دیتابیسها روی سرور ابری اجرا میشن، علاوه بر سرعت SSD، شبکههای دیتاسنتر هم وارد جریان میشن
۲. پهنای باند بین AZها در سرور ابری خیلی بالاست و latency بسیار پایینه
۳. نوشتن دادهها در چند دیتاسنتر مختلف (Replication) اهمیت بالایی پیدا میکنه و این یعنی دیتابیسهای مدرن باید Designشون طوری باشه که Durability و Availability واقعی رو بدون وابستگی به SSD یه سرور تنها تضمین کنن.
در عمل به این معنیه که:
هارد SSD برای throughput و IOPS عالیه، ولی برای durability و failover، باید دیتابیس Replicate بشه (مثلاً توی مناطق مختلف ابر)، latency کم شبکهی ابری به دیتابیس کمک میکنه تا commitها سریعتر از SSD محلی هم بشه.
نتیجه Brooker اینه که اگر بخوایم یه دیتابیس تازه از صفر برای محیطهای SSD و ابری ۲۰۲۵ طراحی کنیم، باید:
۱. کش هوشمند داشته باشه تا hot set دادهها همیشه توی RAM بمونه
۲. طراحی I/O pattern رو حول سرعت SSD تنظیم کنه
۳. موارد replication و durability رو جدی بگیره چون دیگه نمیتونی به SSD یه سرور تنها اعتماد کنی و از latency و throughput شبکهی دیتاسنتر ابری بهره ببری تا هر چیزی از local storage فراتر بره.
۴. دیتابیسهای سنتی برای SSD خوب کار میکنن، اما بهترین نتیجه وقتی به دست میاد که طراحی از اول با توانایی SSD و امکانات ابری تطبیق داده بشه.
منبع:
brooker.co.za
What Does a Database for SSDs Look Like?
@NobarCloud ☁️
7December 23, 2025 592 4