JavadAgha
JavadAgha
خواندن ۳ دقیقه·۶ ماه پیش

Block storage, file storage , object storage

بررسی ذخیره‌سازهای مختلف

سیستم‌های ذخیره‌سازی به سه دسته کلی تقسیم می‌شوند:

  • Block storage
  • file storage
  • object storage

در جدول زیر به مقایسه این سه نوع ذخیره‌ساز پرداخته شده است:

نمودار زیر مقایسه سیستم‌های ذخیره‌سازی مختلف را نشان می‌دهد.

ذخیره‌ساز بلوکی (Block Storage)

ذخیره‌سازی بلوکی(Block Storage) اولین نوع ذخیره‌سازهایی است که در دهه ۱۹۶۰ معرفی شد. ابزارهای ذخیره‌سازی رایج مانند هارددیسک (HDD) و درایو حالت جامد (SSD) که به‌صورت فیزیکی به سرورها متصل می‌شوند، همگی به‌عنوان ذخیره‌سازی بلوکی شناخته می‌شوند.ذخیره‌سازی بلوکی، بلوک‌های خام را به‌صورت یک حجم(volume) به سرور ارائه می‌دهد. این انعطاف‌پذیرترین و کارآمدترین شکل ذخیره‌سازی است. سرور می‌تواند بلوک‌های خام را فرمت‌بندی کند و از آن‌ها به‌عنوان یک سیستم فایل استفاده نماید یا اینکه کنترل این بلوک‌ها را به یک برنامه واگذار کند. برخی از برنامه‌ها مانند پایگاه‌داده یا ماشین مجازی این بلوک‌ها را به‌صورت مستقیم مدیریت می‌کنند تا حداکثر کارایی را از آن‌ها به دست آورند.ذخیره‌سازی بلوکی محدود به ابزارهای فیزیکی متصل به سرور نیست. این نوع ذخیره‌سازی می‌تواند از طریق یک شبکه پرسرعت یا پروتکل‌های اتصال استاندارد صنعتی مانند فیبر کانال (FC) و iSCSI به سرور متصل شود. از لحاظ مفهومی، ذخیره‌سازی بلوکی متصل به شبکه نیز همچنان بلوک‌های خام را ارائه می‌دهد.برای سرورها، این روش مشابه با ذخیره‌سازی بلوکی متصل به‌صورت فیزیکی عمل می‌کند. چه به شبکه متصل باشد و چه به‌صورت فیزیکی به سیستم متصل باشند، ذخیره‌سازی بلوکی به طور کامل در اختیار یک سرور واحد قرار دارد و یک منبع اشتراکی به‌حساب نمی‌آید. همین‌طور Block Storage از متادیتا محدود استفاده می‌کند؛ اما برای عملیات خواندن/نوشتن بر روی شناسه‌های منحصربه‌فرد اختصاص‌داده‌شده به هر بلوک تکیه می‌کند. این کاهش اضافه‌بار انتقال داده را کاهش می‌دهد و به سرور اجازه می‌دهد به طور کارآمد به داده‌ها در ذخیره‌سازی بلوک دسترسی پیدا کند و آنها را بازیابی کند. به دلیل محدود بودن متادیتا ذخیره‌سازی بلوک، این نوع ذخیره‌سازی تأخیر فوق‌العاده کمی را که برای بارهای کاری که به عملکرد بالا نیاز دارند، سرعت مناسبی را ارائه می‌دهد. این برای برنامه‌های حساس به تأخیر مانند پایگاه‌های داده لازم است.


ذخیره‌سازی شیء (Object storage)

ذخیره‌سازی شیء (Object Storage) که ذخیره‌ساز حبابی یا Blob Storage نیز نامیده می‌شود، یک فناوری نسبتاً جدید است. این نوع از ذخیره‌سازی با اولویت قراردادن دوام (نگهداری ایمن اطلاعات برای مدت طولانی)، مقیاس‌پذیری عظیم و هزینه پایین، به طور عمدی از کارایی (سرعت) صرف‌نظر می‌کند. این نوع ذخیره‌سازی برای داده‌هایی که زیاد مورد استفاده قرار نگرفته (به‌اصطلاح داده‌های سرد) طراحی شده و عمدتاً برای بایگانی و پشتیبان‌گیری مورد استفاده قرار می‌گیرد. در ذخیره‌سازی شیء، تمامی اطلاعات به‌صورت شیء (Object) در یک ساختار تخت (بدون سلسله‌مراتب) ذخیره می‌شوند. در نتیجه، برخلاف روش‌های سنتی، خبری از ساختار درختیِ پوشه‌ها نیست.دسترسی به داده‌ها معمولاً از طریق یک رابط برنامه‌نویسی (RESTful API) فراهم می‌شود. سرعت ذخیره‌سازی شیء نسبت به سایر انواع روش‌های ذخیره‌سازی پایین‌تر است. اکثر ارائه‌دهندگان خدمات ابری عمومی، سرویس ذخیره‌سازی شیء را ارائه می‌دهند، مانند سرویس S3 شرکت آمازون (AWS)، سرویس ذخیره‌سازی بلوکی گوگل (Google Block Storage) و سرویس ذخیره‌سازی شیء آژور (Azure Blob Storage).


ذخیره‌سازی فایل (File storage)

ذخیره‌سازی فایل (File Storage) روی بستر ذخیره‌سازی بلوکی بنا شده است. این نوع از ذخیره‌سازی، سطح بالاتری از انتزاع (abstraction) را برای مدیریت آسان‌تر فایل‌ها و پوشه‌ها ارائه می‌دهد. در این روش، داده‌ها به‌عنوان فایل تحت یک ساختار سلسله‌مراتبی از پوشه‌ها ذخیره می‌شوند. ذخیره‌سازی فایل، متداول‌ترین راهکار ذخیره‌سازی برای مقاصد عمومی است. این نوع از ذخیره‌سازی را می‌توان با استفاده از پروتکل‌های رایج شبکه‌ای در سطح فایل، مانند SMB/CIFS و NFS را برای تعداد زیادی از سرورها قابل‌دسترسی کرد. سرورهایی که به ذخیره‌سازی فایل دسترسی پیدا می‌کنند،نیازی به مدیریت پیچیدگی‌های مربوط به بلوک‌ها، فرمت‌بندی حجم و غیره ندارند. سادگی ذاتیِ ذخیره‌سازی فایل، آن را به راه‌حلی ایده‌آل برای اشتراک‌گذاری تعداد زیادی از فایل‌ها و پوشه‌ها درون یک سازمان تبدیل می‌کند.


block storagefile storageobject storageمهندسی نرم افزارطراحی سیستم های نرم افزاری
کنجکاو در مباحث مهندسی نرم افزار
شاید از این پست‌ها خوشتان بیاید