متا معماری ذخیرهسازی هوش مصنوعیشو بازنویسی کرد
خلاصهٔ کاملتر
تو سند «AI Storage Blueprint at Scale» متا اومده که ذخیرهسازی داره به ترمز کار AI تبدیل میشه: توان محاسباتی هر دو سال حدود سه برابر میشه ولی سرعت استوریج به همون نسبت بالا نمیره. به گفتهٔ سیدهارت باجاج و ونکاتراگاوان سرینیواسان، گلوگاههای ذخیرهسازی یکی از دلایل اصلی متوقفموندن GPUهاست و مستقیم روی هزینه و زمان رسیدن به بازار اثر میذاره.
زیرساخت متا صدها کلاستر در مقیاس اگزابایت داره که همهشون روی یه لایهٔ بلاک به اسم Tectonic سوارن. Tectonic یه فابریک ذخیرهسازی منطقهای و multi-tenant ـه که با erasure coding دوام و دسترسپذیری بالا میده و دادهٔ داغ و سرد رو بین HDD و فلش جابهجا میکنه. متا مدل Llama رو مستقیم روی همین لایه آموزش داده، ولی برای دسترسی یکپارچه به دریاچههای دادهٔ عظیم، کمکم از فایل به BLOB مهاجرت کرده.
مشکل اصلی تو مسیر getObject بود: سرور API قبل از رسیدن به داده باید چندین بار متادیتا رو تو لایههای name، volume و container جستوجو میکرد و بعد خودش داده رو به کلاینت پروکسی میکرد. مهندسا این لایهها رو تو یه اسکیمای تخت و یکپارچه روی ZippyDB ادغام کردن، پروکسی رو حذف کردن و یه SDK کلاینت «چاق» ساختن که با Tectonic BlockClient توکار، بایتها رو مستقیم از سرورهای ذخیرهسازی استریم میکنه.
برای جلوگیری از پیکهای ترافیکی هم از حافظهٔ خالی خود هاستهای GPU یه کش توزیعشده ساختن که میانگین ۸۰ درصد نرخ hit میده، و کش read-plan متادیتا رو تو ۱ تا ۲ میلیثانیه برمیگردونه. برای ingestion ایده رو از دنیای سیستمعامل گرفتن: حافظه و فلش هاست GPU نقش L1 و L2 رو بازی میکنن و فابریک منطقهای مبتنی بر فلش میشه L3، در حالی که HDDها منبع نهایی حقیقت میمونن. نتیجه اینه که ingestion ۱۵۰ دقیقهای به ۱۰ دقیقه و یه جاب ۸۹ ساعته به کمی بیش از ۳ ساعت رسیده.
نویسندهٔ گزارش اشاره میکنه که همچین بازنویسیای فقط از دست یه هایپراسکیلر برمیاد؛ شرکتهای معمولی ناچارن به راهکارهای آمادهٔ فروشندههای GPU و استوریج مثل KV caching تکیه کنن که لزوماً به همین خوبی بهینه نشده. یه تحلیلگر هم میگه ارزیابی استوریج فقط با معیار دلار بر ترابایت دیگه جواب نمیده: اگه داده دیر برسه و GPU بیکار بمونه، هزینهٔ اون بیکاری از صرفهجویی استوریج بیشتر میشه، پس باید هزینهٔ کل سیستم بهازای هر GPU-hour مؤثر رو حساب کرد.
نکات کلیدی:
- متادیتای پراکنده تو یه اسکیمای تخت روی ZippyDB ادغام شده و تعداد lookupها کم شده
- سرور API دیگه داده رو پروکسی نمیکنه؛ SDK کلاینت مستقیم از Tectonic استریم میگیره
- کش توزیعشده روی حافظهٔ خالی هاستهای GPU با میانگین ۸۰ درصد نرخ hit
- کش لایهای: حافظه و فلش هاست بهعنوان L1 و L2، فابریک منطقهای فلش بهعنوان L3
- زمان ingestion از ۱۵۰ دقیقه به ۱۰ دقیقه و از ۸۹ ساعت به کمی بیش از ۳ ساعت




