جنگ سیستم های Block Storage ،File Storage و Object Storage
ذخیره دیتا زمانی آسان بود. دیتای ساختاریافتۀ شما منظم و مرتب در یک دیتابیس قرار می گرفت و کارمندان فایل های خود را بر روی فایل سیستم در کامپیوتر رومیزی خود ذخیره می کردند. اما امروزه وضعیت کاملا تغییر کرده است.
یکی از بخش های مقالۀ "File Storage چقدر هزینه دارد؟" در مورد دیتای ساختار نایافته بحث می کند و این که چگونه رشد سریع آن، دنیای دیجیتال را فرا گرفته است. حجم انبوه فایل های متنی، ویدئوها، ایمیل ها و محتوای وب باعث شده است که مدیران IT به دنبال راه حل بهتری برای ذخیره اطلاعات خود باشند.
فناوری های مختلف مزایای مختلفی دارند اما انتخاب از بین آنها اصلا ساده نیست.
از نظر معماری، سه سطح مختلف ذخیره سازی وجود دارد که می توانید انتخاب کنید:
Block Storage ،File Storage و Object Storage. بیایید در مورد آنها بحث کرده و مزایای آنها و موارد استفاده هریک را بیان کنیم.
ذخیره آسان و مستقیم در سطح فایل
ذخیره مبتنی بر فایل قدمت زیادی دارد و مثل بسیاری از چیزهای دیگری که قدیمی اند، ساده هم هست. شما نامی برای فایل انتخاب می کنید، فراداده می دهید و سپس آنها را در فولدرها و زیرفولدرها قرار می دهید. قراردادهای ساده نامگذاری باعث شده است که ساماندهی فایل ها به این روش خیلی ساده باشد در حالی که ذخیره سازی NAS برای تسهیلِ به اشتراکگذاری محلی در نظر گرفته شده است. بسیاری از شرکت ها نیاز به راهی ساده و متمرکز برای ذخیره فایل ها دارند. File Storage می تواند به تمام این نیازها پاسخ گوید و هزینه آن نیز معمولا برای تجارت های کوچک معقول است.
در File Storage، یک ساختار سلسله مراتبی داریم که معمولا برای مقادیر نسبتا کم دیتا به خوبی انجام می شود. اما هر مدیر IT که با این سیستم کار کرده باشد مطمئنا متوجه ضعف های آن شده است. از نظر فنی شما می توانید تعداد نامحدودی فایل ایجاد و ذخیره کنید. اما پیدا کردن آن فایل ها کاری طاقت فرسا است. هرچه تعداد فایل ها بیشتر باشد این مساله بغرنج تر می شود. سر و کار داشتن با تعداد زیادی فولدر، اسکرول کردن تعداد زیادی فایل برای پیدا کردن فقط یک فایل، اصلا جالب نیست.
سطح بعدی: Block Storage
حرفه ای های IT از روش Block Storage بیش از همه در معماری های SAN استفاده می کنند. این گزینه جایگزین خوبی برای ذخیره سازی سطح فایل است. Block یک حجم خام ذخیره سازی است که با فایل هایی پر شده است که تکه های دیتا با حجم یکسان را تشکیل می دهند.
یک سیستم عامل مبتنی بر سرور این حجم ها را مدیریت می کند و می تواند از آنها به عنوان هارد درایو استفاده کند. این بدین معنی است که آنها قابلیت هایی دارند که به صورت Native در سیستم عامل وجود دارد.
به عنوان مثال سازمان ها معمولا از ابزارهای جانبی برای مدیریت و Backup گرفتن از دیتایی استفاده می کنند که در معماری Block Storage وجود دارد.
یکی از موارد جالب در مورد Block Storage نوع رفتار آن با فراداده است. برخلاف معماری مبتنی بر فایل، هیچ یک از جزئیات مربوط به یک بلاک در خارج از آدرس آن قرار ندارد. در عوض، سیستم عامل تعیین می کند که چگونه ذخیره سازی مدیریت شود.
سیستم عامل، ذخیره سازی را برای نرم افزارهای مختلف تخصیص می دهد، تصمیم می گیرد که دیتا به کدام قسمت از بلاک برود و فضای ذخیره سازی را با ابزارهایی فراهم می آورد که در روش های دیگر ذخیره سازی وجود ندارد. در شرایط ایده آل، این کنترل به ظاهر کوچک باعث می شود یک Block Storage با عملکرد خیلی خوب داشته باشیم که اساسا Block Storage به همین دلیل مشهور است.
Object Storage: راهکاری پیچیده برای نیازهای پیچیده ذخیره سازی
Object Storage همان طور که از نامش پیداست برای ذخیره فایل در Containerهای مجزایی به کار می رود که Object نام دارند. می توانید به یک Object یک Identifier منحصربفرد بدهید و آن را در یک حافظه مدل Flat ذخیره کنید. این مساله به دو دلیل مهم است. می توانید Object را با ارائه ID منحصربفرد آن، از Storage بازیابی کنید و در نتیجه پیدا کردن اطلاعات در یک مخزن بزرگ دیتا ساده تر می شود. می توانید دیتا را به صورت فیزیکی در یک سرور محلی یا روی یک سرور بر روی کلود که کیلومترها دورتر است، ذخیره کنید. با استفاده از ساختار آدرس Flat می توان Object را به همان صورت بازیابی کرد.
Object Storage همچنین رویکرد انعطاف پذیرتری در مورد فراداده دارد. به عنوان مثال می توانید فراداده را طوری تنظیم کنید که Objectها را با نرم افزارهای خاصی Pair کند. همچنین می توانید تعیین کنید که بر اساس اهمیت نرم افزارها، Objectها به قسمت های مختلفی از ذخیره سازی انتقال داده شوند و حتی Objectهایی را که به مدت طولانی به آنها نیاز نداشتید به کلی حذف کنید. سقف محدودیت شما آسمان است! این حالت های مختلف و بی پایان تنظیمات فقط در Object Storage وجود دارد.
می توانید در اعتراض بگویید که ذخیره سازی سطح فایل و بلاک، کارایی بهتری دارند، اما انعطاف پذیری مزیتی است که باعث می شود Object Storage از نظر سهولت مدیریت با اختلاف فاحشی از رقبای خود سبقت بگیرد.
همگام شدن با سرعت فزاینده رشد داده ها از بزرگ ترین چالش هایی است که تیم های IT با آن مواجهند. قطعا هر دو روش ذخیره سازی مبتنی بر فایل و مبتنی بر بلاک، قابل توسعه هستند و می توان آنها را برای مقادیر بزرگ دیتا استفاده کرد، اما وقتی دیتا به ترابایت و پتابایت می رسد، این قابلیت اطمینان است که اهمیت می یابد و بیشک باید در ذخیره سازی در نظر گرفته شود.
قابلیت توسعه جایی است که Object Storage در آن کارکرد شگفت انگیز خود را به نمایش می گذارد. Scale Out کردن معماری Object به سادگی افزودن یک Node به کلاستر ذخیره سازی است. هر سروری محدودیت های فیزیکی خاص خود را دارد، اما این نوع ذخیره سازی با استفاده از Location Transparency و انعطاف پذیری فراداده می تواند بدون هیچ محدودیتی Scale شده و روش های متداول ذخیره سازی را به چالش بکشد. برای مطالعه این مطلب کلیک کنید
مطلبی دیگر از این انتشارات
امنیت داشتن ، مسئله این است
مطلبی دیگر از این انتشارات
سیر تا پیاز Nodejs
مطلبی دیگر از این انتشارات
API چیست ؟