- مقدمه
- چالشهای بهینهسازی عملکرد و ظرفیت در ذخیرهسازی سازمانی
- معرفی فناوری ترکیبی HDD+NAND یا TurboBoost
- درک دقیق مراحل عملکرد هارددیسکهای معمولی و محدودیتهای آنها
- فناوری TurboBoost چگونه کار میکند؟
- بهینهسازی بیشتر با کش پیشرفته نوشتن (Advanced Write Caching)
- DRAM آینهای (Mirrored DRAM یا mDRAM)
- چگونه Advanced Write Caching و TurboBoost عملکرد هارددیسکهای سازمانی را دگرگون میکنند؟
مقدمه
درایوهای مغناطیسی (HDD) سالهاست که بهعنوان گزینهای اقتصادی و پایدار برای ذخیرهسازی در مراکز داده شناخته میشوند. با این حال، یکی از محدودیتهای آنها همواره در سرعت دسترسی، بهویژه هنگام نوشتن دادهها، بوده است.
در نسلهای گذشته، این درایوها تنها از کش خواندن (Read Cache) برای افزایش عملکرد بهره میبردند. دلیل آن ساده بود: در صورت قطع برق، دادههای در حال نوشتن که در بافر ذخیره شده بودند از بین میرفتند، بنابراین استفاده از کش نوشتن ریسک از دست دادن اطلاعات را به همراه داشت.
امروزه اما با معرفی فناوریهایی مانند TurboBoost™ و Advanced Write Caching در نسل جدیدی از HDDها، امکان پیادهسازی کش نوشتن به صورت ایمن و پایدار فراهم شده است. این قابلیت با استفاده از ترکیب حافظههای DRAM پرسرعت و حافظههای غیر فرار مانند NAND Flash، باعث شده تا عملیات نوشتن نیز از سرعت بالاتری برخوردار شود، بدون نگرانی از قطع برق یا از بین رفتن دادهها.
در ادامه این مقاله به بررسی چگونگی عملکرد این فناوریها و مزایای آنها برای مراکز داده و بارهای کاری سنگین خواهیم پرداخت.
چالشهای بهینهسازی عملکرد و ظرفیت در ذخیرهسازی سازمانی
امروزه کارشناسان فناوری اطلاعات در حوزه سازمانی، در زمان ارزیابی درایوهای ذخیرهسازی، معیارهای مختلفی را مد نظر قرار میدهند؛ از جمله گارانتی، ظرفیت، قابلیتهای بازیابی RAID و موارد دیگر. اما وقتی صحبت از عملکرد میشود، تا همین اواخر، هیچ گزینهای نتوانسته بود از نظر شاخصهایی مانند تعداد عملیات ورودی/خروجی در ثانیه (IOPS) و زمان تأخیر (Latency) با درایوهای حالتجامد (SSD) رقابت کند.
با این حال، سیستمها همچنان به ظرفیت بالا و تراکم ذخیرهسازی فوقالعادهی هارد دیسکهای مغناطیسی (HDD) نیاز دارند. استفاده از آرایههای ذخیرهسازی ترکیبی که هم SSD و هم HDD را در خود دارند، راهحل جامعی به نظر میرسد، اما این ترکیب اغلب باعث افزایش پیچیدگی، بار مدیریتی بیشتر و هزینههای بالاتر میشود.
در این چالش دائمی برای رسیدن به تعادل بین ظرفیت، عملکرد و صرفهجویی به ازای هر ترابایت، هنوز بازار به یک راهحل واحد و کاملاً بهینه نرسیده است.
در هنگام انتخاب راهکارهای ذخیرهسازی برای کاربردهای خاص، تیمهای IT معمولاً ابتدا یک ظرفیت موردنظر را تعیین کرده و سپس سعی میکنند در آن محدودهی ظرفیتی، کمترین میزان تأخیر ممکن را با توجه به بودجهشان انتخاب کنند. ویژگیهای فنی و جزئیات معماری هر محصول در این تصمیمگیری تأثیر زیادی دارد. در بسیاری از موارد، هارد دیسکها حتی در شرایط معمول هم برای رسیدن به زمان پاسخدهی زیر ۴۰ میلیثانیه دچار مشکل هستند، و عواملی مانند بار اضافی آرایهها و افزایش عمق صفها (Queue Depths) شرایط را بدتر هم میکنند.
معرفی فناوری ترکیبی HDD+NAND یا TurboBoost
مهندسان و کاربران به تدریج به مزایای استفاده از حافظههای فلش NAND بهعنوان فناوری کمکی در داخل هارد دیسکهای مغناطیسی (HDD) پی بردند و این درها را به سمت بهبود عملکرد باز کردند. این نوع درایوها که به طور گسترده به عنوان درایوهای هیبریدی حالتجامد (SSHD) شناخته میشوند، ترکیبی از ظرفیت بالای HDD و سرعت SSD را ارائه میدهند.
در بازار سازمانی، این فناوری با نام TurboBoost شناخته شده است. به جای ساخت راهکارهای ذخیرهسازی که ترکیبی از HDD و SSD جداگانه باشند، فناوری TurboBoost اغلب میتواند بهترین مزایای هر دو را در قالب یک محصول فراهم کند. حداقل مزیت TurboBoost این است که با بهبود چشمگیر دسترسی به دادههای پرکاربرد (Hot Data)، بهرهوری کلی کار را به طور قابلتوجهی افزایش میدهد.
مرزهای عملکرد هارددیسکهای سازمانی پرسرعت با مجموعهای از ویژگیهای پیشرفته کشینگ به طور چشمگیری در حال گسترش است. این قابلیتها به گونهای طراحی شدهاند که به سه هدف کلیدی زیر پاسخ دهند:
- کاهش حداکثری تعداد عملیات جستجو (Seek): با کاهش حرکت مکانیکی هد دیسک، زمان تأخیر به حداقل رسیده و پاسخدهی کلی دستگاه بهبود مییابد.
- خواندن و نوشتن دادهها از سریعترین نقطه دسترسی (کش): استفاده از حافظه کش برای افزایش سرعت انتقال داده و کاهش زمان دسترسی.
- دسترسی و نوشتن دادهها به بهینهترین شکل با استفاده از موقعیت چرخش (Rotational Positioning): هماهنگسازی عملیات انتقال داده با چرخش فیزیکی دیسک برای افزایش کارایی و کاهش زمان انتظار.
با بهکارگیری این روشهای نوآورانه، هارددیسکهای سازمانی نسل جدید توانستهاند عملکرد IOPS را دو تا سه برابر بیشتر از گزینههای ذخیرهسازی معمولی افزایش دهند، آن هم بدون نیاز به کش اختصاصی SSD یا استفاده از آرایههای گرانقیمت SSD.
علاوه بر این، با استفاده از استراتژیهای متنوع پیادهسازی حافظههای NAND فلش و DRAM متناسب با بار کاری خاص، این فناوریها عملکرد بهتری را در طیف گستردهای از کاربردهای سازمانی مانند پایگاههای داده، سرویسهای ایمیل و وب، پخش ویدئو، خدمات ابری و بسیاری موارد دیگر ارائه میدهند.
بار کاری و تاثیر آن بر عملکرد هارددیسکهای سنتی
هارددیسکهای مغناطیسی سنتی به طور معمول با افزایش بار کاری، زمان پاسخدهی کندتری نشان میدهند. برای مثال، در شرایطی که تعداد عملیات ورودی/خروجی در ثانیه (IOPS) به حدود ۲۰۰ برسد، یک آرایه دیسک ممکن است پاسخدهی ۵ میلیثانیه داشته باشد؛ اما اگر این مقدار به ۶۰۰ IOPS افزایش یابد، زمان تأخیر (Latency) میتواند به ۴۰ میلیثانیه یا بیشتر برسد. خوشبختانه، بخش زیادی از این فشار و کندی با بهرهگیری از فناوری کشینگ پیشرفته کاهش مییابد و به بهبود چشمگیر عملکرد کمک میکند (شکل ۱)

شکل ۱. کشینگ پیشرفته نوشتن: بیش از ۱۰ برابر بهبود در زمان پاسخدهی
برای سنجش عملکرد هارددیسکها در شرایط واقعی، از معیارهای استاندارد صنعتی مانند بار کاری «Hot Band» استفاده میشود؛ این بار کاری به بخشهایی از دادهها اشاره دارد که بیشترین میزان خواندن و نوشتن را دارند. با استفاده از ابزار تست Vdbench، این شرایط شبیهسازی شده و عملکرد سیستم ذخیرهسازی اندازهگیری میشود.
نتایج این تستها نشان میدهد که آرایهای از هارددیسکهای سازمانی با قابلیت کشینگ پیشرفته میتواند زمان پاسخدهی زیر ۵ میلیثانیه را تا زمانی که تعداد عملیات ورودی/خروجی در ثانیه (IOPS) به حدود ۸۰۰ برسد، حفظ کند. در هاردهای سنتی، این زمان پاسخدهی با افزایش بار کاری به سرعت افزایش یافته و ممکن است به ۴۰ میلیثانیه یا بیشتر برسد که منجر به کاهش سرعت سیستم میشود.
به بیان ساده، هرچه بار کاری بیشتر شود، فناوری کشینگ پیشرفته در هاردهای هیبریدی (SSHD) تاثیرگذاری بیشتری داشته و به بهبود عملکرد کلی سیستم کمک میکند.
پارامترهای بار کاری معمولاً بسته به نوع برنامه کاربردی و مجموعه دادههای خاص، متفاوت هستند. ترکیب دادههای تصادفی در مقابل ترتیبی، نسبت خواندن به نوشتن، اندازه متوسط فایلها، اندازه بلوکها و عوامل مشابه، تأثیر قابل توجهی بر عملکرد دارند.
دستههای اصلی برنامههای سازمانی که بیشتر بر خواندن دادهها تکیه دارند عبارتند از: پردازش تحلیلی آنلاین (OLAP) که به آن دادهکاوی و هوش تجاری نیز گفته میشود، برنامهریزی منابع سازمانی (ERP) و پردازش تراکنش آنلاین (OLTP). بیشتر هزینههای فناوری اطلاعات در این حوزهها صرف برنامههای با بار کاری خواندنی (Read-intensive) میشود که با افزایش حجم کار سازمانی، تحت فشار عملکردی قرار میگیرند. به همین دلیل، فناوری TurboBoost یکی از مهمترین بهبودهای عملکردی است که به طراحی هارددیسکهای سازمانی استاندارد افزوده شده است؛ چرا که به نیاز اصلی بازار ذخیرهسازی سازمانی، یعنی بهبود کارایی در برنامههای خواندنی، پاسخ میدهد.
برعکس، برنامههایی مانند انبار داده (Data Warehousing) و پخش ویدئو (Video Streaming) عمدتاً بر عملیات نوشتن متمرکز هستند. به دلیل ماهیت عملکرد حافظه NAND، فناوریهای SSD و کش فلش در عملیات نوشتن نسبت به خواندن، تاثیر کمتری دارند؛ بنابراین از نظر نسبت عملکرد به هزینه، این فناوریها برای عملیات نوشتن کمتر جذاب هستند.
به همین دلیل، دو کاربرد مهم که نیاز زیادی به عملکرد نوشتن دارند — یعنی پخش ویدئو و انبار داده — کندتر از سایر برنامهها به سمت فراتر رفتن از طراحیهای سنتی هارددیسکها حرکت کردهاند، هرچند این برنامهها نیز با افزایش بار کاری به شدت به پهنای باند و سرعت انتقال بالاتر نیاز دارند.
برنامههای کمتقاضاتر، مانند مدیریت محتوا و مدیریت پروژه، معمولاً بدون نیاز به کمک کش فلش NAND عملکرد قابل قبولی دارند. اما در مواردی که بارهای خواندن یا نوشتن سنگین باشد، استفاده از کش فلش NAND بهطور چشمگیری در حال افزایش است، چرا که هارددیسکهای معمولی نمیتوانند همیشه نیازهای تاخیر (Latency) و IOPS را تامین کنند و بهبود عملکرد لازم است.
درک دقیق مراحل عملکرد هارددیسکهای معمولی و محدودیتهای آنها
فناوری هارددیسکهای معمولی یا سنتی برای اکثر افراد آشناست. در این فناوری، کنترلر میزبان (Host Controller) دستورات خواندن و نوشتن را به هارددیسک ارسال میکند. داخل هارددیسک دو بخش اصلی وجود دارد:
- فضای ذخیرهسازی اصلی که همان صفحات مغناطیسی چرخان (Platters) هستند،
- و یک حافظه موقت DRAM که به عنوان بافر (Buffer) عمل میکند.
فرآیند اجرای دستورات خواندن و نوشتن شامل چندین مرحله است که در ادامه به بررسی شش مرحله اصلی اجرای دستور خواندن در یک هارددیسک سنتی میپردازیم:
- دریافت دستور خواندن: کنترلر هارددیسک یک فرمان خواندن از میزبان دریافت میکند و شروع به اجرای آن میکند.
- صف انتظار (Queue): در حالت ایدهآل، دستور باید بلافاصله اجرا شود، اما در محیطهای پرترافیک احتمال دارد که هارد در حال انجام وظیفه دیگری باشد. بنابراین دستور جدید باید در صف انتظار بماند تا نوبتش برسد.
- عملیات جستجو (Seek): زمانی که هارد آماده خواندن داده است، باید هد خواندن را بر روی ترک (Track) صحیح قرار دهد، جایی که دادههای مورد نظر ذخیره شدهاند. این مرحله به عنوان «زمان جستجو» شناخته میشود.
- تاخیر چرخشی (Rotational latency): بعد از قرار گرفتن هد بر روی ترک صحیح، هد باید منتظر بماند تا سکتور (بخشی از ترک) مورد نظر از زیر سنسور مغناطیسی هد عبور کند تا داده قابل خواندن شود. سرعت چرخش صفحات مغناطیسی رابطه مستقیم با این تاخیر دارد؛ هرچه سرعت چرخش بیشتر باشد، زمان تاخیر کمتر خواهد بود. به همین دلیل، هارددیسکهای سازمانی با عملکرد بالا دارای سرعت چرخش ۱۰ هزار یا ۱۵ هزار دور در دقیقه (RPM) هستند.
- انتقال دادهها (Media transfer): در این مرحله، دادهها از صفحات مغناطیسی خوانده شده و به میزبان ارسال میشوند.
- ارسال وضعیت (Status): پس از اینکه تمام دادههای درخواست شده به میزبان منتقل شد، هارددیسک وضعیت پایان عملیات را اعلام میکند.
فناوری هارددیسکهای معمولی یا سنتی برای اکثر افراد آشناست. در این فناوری، کنترلر میزبان (Host Controller) دستورات خواندن و نوشتن را به هارددیسک ارسال میکند. داخل هارددیسک دو بخش اصلی وجود دارد:
- فضای ذخیرهسازی اصلی که همان صفحات مغناطیسی چرخان (Platters) هستند،
- و یک حافظه موقت DRAM که به عنوان بافر (Buffer) عمل میکند.
فرآیند اجرای دستورات خواندن و نوشتن شامل چندین مرحله است که در ادامه به بررسی شش مرحله اصلی اجرای دستور خواندن در یک هارددیسک سنتی میپردازیم:
- دریافت دستور خواندن: کنترلر هارددیسک یک فرمان خواندن از میزبان دریافت میکند و شروع به اجرای آن میکند.
- صف انتظار (Queue): در حالت ایدهآل، دستور باید بلافاصله اجرا شود، اما در محیطهای پرترافیک احتمال دارد که هارد در حال انجام وظیفه دیگری باشد. بنابراین دستور جدید باید در صف انتظار بماند تا نوبتش برسد.
- عملیات جستجو (Seek): زمانی که هارد آماده خواندن داده است، باید هد خواندن را بر روی ترک (Track) صحیح قرار دهد، جایی که دادههای مورد نظر ذخیره شدهاند. این مرحله به عنوان «زمان جستجو» شناخته میشود.
- تاخیر چرخشی (Rotational latency): بعد از قرار گرفتن هد بر روی ترک صحیح، هد باید منتظر بماند تا سکتور (بخشی از ترک) مورد نظر از زیر سنسور مغناطیسی هد عبور کند تا داده قابل خواندن شود. سرعت چرخش صفحات مغناطیسی رابطه مستقیم با این تاخیر دارد؛ هرچه سرعت چرخش بیشتر باشد، زمان تاخیر کمتر خواهد بود. به همین دلیل، هارددیسکهای سازمانی با عملکرد بالا دارای سرعت چرخش ۱۰ هزار یا ۱۵ هزار دور در دقیقه (RPM) هستند.
- انتقال دادهها (Media transfer): در این مرحله، دادهها از صفحات مغناطیسی خوانده شده و به میزبان ارسال میشوند.
- ارسال وضعیت (Status): پس از اینکه تمام دادههای درخواست شده به میزبان منتقل شد، هارددیسک وضعیت پایان عملیات را اعلام میکند.
در این مراحل، حافظه DRAM نقش بسیار مهمی ایفا میکند. دو کاربرد معمول آن عبارتاند از:
- صفبندی دستورات (Command Queuing): مدیریت بهینه صف دستورات برای افزایش کارایی.
- فعالسازی کش نوشتن (Write Cache Enable – WCE): به هارد این امکان را میدهد که دادهها را ابتدا در DRAM ذخیره کند و سپس آنها را به آرامی روی صفحات مغناطیسی بنویسد. به محض اینکه دادهها در DRAM قرار گرفتند، هارددیسک به میزبان اعلام میکند که آماده دریافت دستورات بعدی است، حتی اگر دادهها هنوز روی رسانه ذخیرهسازی دائمی نوشته نشده باشند.
DRAM به دلیل سرعت بالای پردازش، به عنوان حافظه اصلی سیستم (RAM) هم شناخته میشود، اما مشکل اصلی آن این است که یک حافظه فرار (Volatile Memory) است؛ یعنی با قطع برق، دادههای ذخیره شده در آن از بین میرود.
این موضوع باعث میشود اگر برق در حین عملیات نوشتن قطع شود، میزبان گمان کند که دادهها با موفقیت نوشته شدهاند (چون هارددیسک اعلام کرده که داده را در DRAM دریافت کرده)، اما در واقع دادهها هنوز روی صفحات مغناطیسی ذخیره نشدهاند و در نتیجه دادهها از بین میروند.
برعکس، حافظه NAND فلش حافظه غیر فرار (Non-Volatile Memory) است، یعنی دادهها را حتی بدون برق حفظ میکند، اما سرعت آن به مراتب پایینتر از DRAM است. همین موضوع باعث میشود NAND کمتر برای کارهای بافرینگ سریع که هارددیسکها به آنها نیاز دارند مناسب باشد.
از طرفی، کاربران عادی ممکن است کاهش اندک سرعت ناشی از استفاده از NAND را بپذیرند تا نگرانی از بابت از دست رفتن داده نداشته باشند. اما شرکتها و سازمانهایی که مسئول حفظ امنیت دادههای حساس مشتریان خود هستند، نیازمند رویکرد متعادلتری بین سرعت و امنیت داده هستند.
فناوری TurboBoost چگونه کار میکند؟
TurboBoost یعنی اضافه کردن یک حافظه فلش کوچک و سریع (NAND) داخل هارددیسکهای معمولی. این حافظه فلش به هارد کمک میکند تا دادههایی که بیشتر استفاده میشوند (دادههای داغ) را سریعتر بخواند و بنویسد. در این هاردها علاوه بر کش معمولی که دادهها را موقتاً نگه میدارد، یک بخش کوچک از حافظه فلش وجود دارد که نسبت به کش معمولی خیلی پایدارتر و بادوامتر است (eMLC NAND). مهندسان بعد از سالها تحقیق متوجه شدند اگر اندازه این حافظه فلش خیلی بزرگ باشد هزینه بالا میرود و اگر خیلی کوچک باشد فایدهای ندارد؛ بنابراین اندازهای از این حافظه را انتخاب کردند که هم کارایی خوبی داشته باشد و هم هزینه اضافی زیادی نداشته باشد. الگوریتمها و برنامههایی که مشخص میکنند کدام دادهها باید به حافظه فلش منتقل شوند، اهمیت بسیار زیادی دارند و هر شرکت سازنده روش خودش را دارد تا بهترین عملکرد را ارائه دهد. اما اصل کار ساده است: دادههایی که سیستم بیشتر از همه درخواست میکند (مثل فایلهایی که دائم استفاده میشوند یا اصطلاحاً “دادههای داغ”) از بخش مغناطیسی هارد (صفحات چرخان) به حافظه فلش منتقل میشوند.
وقتی دادهها در حافظه فلش قرار گرفتند، سیستم میتواند خیلی سریعتر به آنها دسترسی پیدا کند و این باعث افزایش سرعت کار هارد میشود. وقتی حافظه فلش پر شود، دادههایی که کمتر استفاده میشوند از آن حذف میشوند تا جا برای دادههای جدیدی که بیشتر نیاز هستند باز شود. اما همچنان آن دادهها روی صفحات مغناطیسی هارد ذخیره شدهاند و اگر لازم باشد از آنجا خوانده میشوند.این روش باعث میشود هارددیسک بتواند سرعت خواندن و نوشتن دادههای پرکاربرد را به شکل قابل توجهی افزایش دهد، بدون اینکه هزینه خیلی زیادی داشته باشد یا نیاز به استفاده از هاردهای کاملاً SSD باشد.
با فناوری TurboBoost، بخشهای مربوط به جستجو (seek) و تأخیر چرخشی (rotational latency) که در فرآیند خواندن هارددیسکهای معمولی وجود دارد، معمولاً از بین میروند. دلیل این اتفاق این است که اگر دادهها در حافظه فلش NAND قرار داشته باشند، دیگر نیازی به حرکت و چرخش صفحات مغناطیسی نیست تا داده پیدا شود.
زمانهای مربوط به فرمان خواندن (read command) و پردازش وضعیت (status processing) تقریباً همانند قبل باقی میماند، اما زمان صفبندی دستورات (queuing time) و مدت زمان انتقال داده (transfer duration) کوتاهتر میشود.
مزایای عملی TurboBoost به نوع برنامهها و حجم کاری وابسته است، اما به طور کلی، نگه داشتن نسخههایی از دادههای پرکاربرد در حافظه فلش باعث میشود عملیات خواندن چند برابر سریعتر انجام شود.
بهخصوص برنامههایی که به صورت مکرر با بلوکهای کوچک داده کار میکنند، بیشترین بهره را میبرند؛ زیرا این نوع عملیات بیشتر از همه تحت تأثیر تأخیرهای جستجو و چرخش صفحات قرار میگیرند و با TurboBoost این مشکلات به حداقل میرسند.
اپلیکیشنهای OLAP (پردازش تحلیلی آنلاین)، ERP (برنامهریزی منابع سازمانی) و OLTP (پردازش تراکنشهای آنلاین) شاید بهترین نمونهها برای استفاده از کش تقویتشده با فناوری TurboBoost باشند، اما اینها بخشهایی نیستند که بیشترین رشد را در بازار نشان میدهند. به این لیست باید ذخیرهسازی مبتنی بر اشیاء (object-based storage) و پلتفرمهای مجازیسازی سرور و دسکتاپ را نیز اضافه کرد.
طبق بررسیهای مستقل اخیر منتشر شده توسط StorageReview، هارددیسکهای Enterprise Performance مجهز به TurboBoost به راحتی در زمینه سرعت انتقال داده (throughput) و تأخیر (latency) و در گستره وسیعی از برنامههای سازمانی، عملکرد بهتری نسبت به رقبای خود دارند. StorageReview اشاره میکند که TurboBoost “افزایش قابل توجهی در عملکرد نسبت به هارددیسکهای استاندارد ارائه میدهد و رابط SAS آن را قدرتمندتر از SSDهای SATA ارزانقیمت میکند که رقابتشان بر اساس هزینه به ازای هر گیگابایت است.”
با این حال، نتایج این بررسیها و سایر منابع تأیید میکنند که میزان بهبود در عملکرد خواندن دادهها با TurboBoost بسیار بیشتر از بهبود در نوشتن است. برای پاسخ به نیازهای خاص بازارهایی که تمرکزشان بر روی عملیات نوشتن است، باید به بهینهسازیهای دیگری نیز توجه شود.
بهینهسازی بیشتر با کش پیشرفته نوشتن (Advanced Write Caching)
اگرچه فناوری TurboBoost نسبتاً جدید است، استفاده از بافرهای DRAM سالهاست که در طراحی هارددیسکها رایج است و نقش کلیدی در بهبود عملکرد دارند. اما بازار امروز نیازمند بهینهسازیهای پیشرفتهتری است، مخصوصاً برای کاربردهایی که بار نوشتن بالا دارند. به همین دلیل، اخیراً شرکتهای پیشرو در زمینه ذخیرهسازی، از جمله تولیدکنندگان هارددیسکهای سازمانی، بهروزرسانیهایی در زمینه کش پیشرفته نوشتن ارائه کردهاند.
کش پیشرفته نوشتن به ویژه در برنامههایی مانند انبار داده (data warehousing)، تولید محتوای دیجیتال و سیستمهای نظارتی ویدیویی متمرکز، بیشترین تأثیر را دارد و میتواند عملکرد این سیستمها را به طرز چشمگیری بهبود دهد.
DRAM آینهای (Mirrored DRAM یا mDRAM)
یکی از تکنیکهای جدید، استفاده از DRAM آینهای است. در این روش، بخشی از حافظه DRAM هارددیسک به صورت یک نسخه کپی از دادههای نوشته شده به کش رسانه (media cache) اختصاص داده میشود. هدف این است که هارددیسک بتواند در صورت لزوم، دادهها را به میزبان (کامپیوتر) بازگرداند یا در صورتی که دادهها دیگر «داغ» (hot) محسوب نشوند، آنها را به حافظه اصلی دیسک منتقل کند.
این روش باعث کاهش تأخیرهای ناشی از جستجو (seek) و چرخش (rotational latency) در پیدا کردن دادهها در کش رسانه میشود، چرا که دیگر لازم نیست هارددیسک دوبار به مکانهای مختلف روی دیسک مراجعه کند (یکی برای کش رسانه و یکی برای حافظه اصلی). علاوه بر این، mDRAM به بهینهسازی ترتیب اجرای دستورات نوشتن کمک میکند تا از موقعیت چرخشی صفحات دیسک به بهترین شکل ممکن استفاده شود.
کش نوشتن محافظتشده با NVC (NVC-Protected Write Cache)
یکی از چالشهای بزرگ در هارددیسکها، حفاظت از دادههایی است که هنوز به حافظه دائمی دیسک نوشته نشدهاند، مخصوصاً در مواقع قطع ناگهانی برق. در اینجا یک پدیده فیزیکی به نام نیروی محرکه الکتریکی معکوس (Back Electromotive Force یا Back EMF) وارد عمل میشود. این نیرو به ولتاژی گفته میشود که در خلاف جهت جریان الکتریکی ایجاد شده توسط حرکت سیمپیچهای موتور در میدان مغناطیسی ظاهر میشود.
در هارددیسکها، پس از قطع برق، موتور چرخان دیسک به دلیل این نیروی Back EMF کمی زمان و انرژی دارد که دادههای موجود در حافظه DRAM را به حافظه فلش غیر فرار (NAND) منتقل کند. به عبارت سادهتر، هارددیسک در آخرین لحظات قبل از خاموشی کامل، دادههای موقت را از DRAM به حافظه غیر فرار منتقل میکند تا از دست رفتن اطلاعات جلوگیری شود.
با استفاده از کش نوشتن محافظتشده توسط NVC، هارددیسک میتواند مزایای عملکردی کش نوشتن را حفظ کند، در حالی که دادهها نیز در برابر قطع برق محافظت شده باقی میمانند. این فناوری تعادلی بین سرعت بالا و امنیت دادهها ایجاد میکند.
چگونه Advanced Write Caching و TurboBoost عملکرد هارددیسکهای سازمانی را دگرگون میکنند؟
ویژگی Caching پیشرفته در نوشتن (Advanced Write Caching) شامل تکنولوژیهایی است که عملکرد نوشتن را به طور قابل توجهی بهبود میبخشد، در حالی که فناوری TurboBoost سرعت خواندن را افزایش میدهد. کشینگ پیشرفته نوشتن هماکنون در بسیاری از هارددیسکهای نزدیک به خط تولید (nearline) بهکار رفته است، و کشینگ خواندن TurboBoost به صورت استاندارد در مدلهای هارددیسکهای حیاتی سازمانی تعبیه شده است. با ادغام کشینگ پیشرفته نوشتن در هارددیسک Enterprise Performance با سرعت ۱۵ هزار دور در دقیقه، میتوان تا ۱۰۰ درصد بهبود در عملکرد نوشتن تصادفی نسبت به نسل قبلی را ارائه داد (با نرخ RW/RR برابر ۷۲۰/۴۰۰ IOPS).