معیارهای جدید ذخیره سازی اشیاء

معیارهای جدید ذخیره سازی اشیاءقلعه پرواز توسط نله دیل

دستور ذخیره سازی اشیاء S3 Mail.ru Cloud Storage مقاله ای را در مورد اینکه چه معیارهایی هنگام انتخاب یک ذخیره سازی شی مهم هستند ترجمه کرده است. متن زیر از نگاه نویسنده است.

وقتی صحبت از ذخیره سازی اشیا می شود، مردم معمولاً فقط به یک چیز فکر می کنند: قیمت هر ترابایت/گیگابایت. البته، این معیار مهم است، اما رویکرد را یک طرفه می‌کند و ذخیره‌سازی اشیا را با ابزار ذخیره‌سازی آرشیو برابر می‌کند. به علاوه، این رویکرد اهمیت ذخیره سازی اشیا را برای پشته فناوری سازمانی کاهش می دهد.

هنگام انتخاب ذخیره سازی اشیا، باید به پنج ویژگی توجه کنید:

  • کارایی؛
  • مقیاس پذیری؛
  • S3 سازگار؛
  • پاسخ به شکست ها؛
  • تمامیت.

این پنج ویژگی معیارهای جدیدی برای ذخیره سازی اشیا به همراه هزینه هستند. بیایید به همه آنها نگاه کنیم.

کارایی

فروشگاه های اشیاء سنتی فاقد عملکرد هستند. ارائه دهندگان خدمات دائماً آن را قربانی قیمت های پایین می کردند. با این حال، با ذخیره سازی اشیاء مدرن همه چیز متفاوت است.

سیستم های ذخیره سازی مختلف به سرعت Hadoop نزدیک می شوند یا حتی از آن فراتر می روند. الزامات مدرن برای سرعت خواندن و نوشتن: از 10 گیگابایت بر ثانیه برای هارد دیسک، تا 35 گیگابایت در ثانیه برای NVMe. 

این توان عملیاتی برای Spark، Presto، Tensorflow، Teradata، Vertica، Splunk و دیگر چارچوب‌های محاسباتی مدرن در پشته تجزیه و تحلیل کافی است. این واقعیت که پایگاه های داده MPP برای ذخیره سازی اشیاء پیکربندی می شوند، نشان می دهد که به طور فزاینده ای به عنوان ذخیره سازی اولیه استفاده می شود.

اگر سیستم ذخیره‌سازی شما سرعت مورد نیاز شما را فراهم نمی‌کند، نمی‌توانید از داده‌ها استفاده کنید و مقدار را از آن استخراج کنید. حتی اگر داده ها را از ذخیره سازی اشیاء به یک ساختار پردازش درون حافظه بازیابی کنید، همچنان برای انتقال داده ها به و از حافظه به پهنای باند نیاز دارید. فروشگاه های قدیمی اشیاء به اندازه کافی از آن برخوردار نیستند.

این نکته کلیدی است: معیار عملکرد جدید توان عملیاتی است، نه تأخیر. برای داده ها در مقیاس مورد نیاز است و در زیرساخت های داده مدرن معمول است.

در حالی که معیارها روش خوبی برای تعیین عملکرد هستند، نمی توان آن را قبل از اجرای برنامه در محیط به طور دقیق اندازه گیری کرد. فقط بعد از آن می توانید بگویید که گلوگاه دقیقا کجاست: در نرم افزار، دیسک، شبکه یا در سطح محاسبات.

مقیاس پذیری

مقیاس پذیری به تعداد پتابایت هایی اشاره دارد که در یک فضای نام قرار می گیرند. آنچه فروشندگان ادعا می کنند مقیاس پذیری آسان است، چیزی که آنها نمی گویند این است که با بزرگ شدن، سیستم های یکپارچه عظیم شکننده، پیچیده، ناپایدار و گران می شوند.

معیار جدید مقیاس پذیری، تعداد فضاهای نام یا مشتریانی است که می توانید به آنها خدمت کنید. این معیار مستقیماً از مقیاس‌کننده‌های بزرگ گرفته می‌شود، جایی که بلوک‌های سازنده ذخیره‌سازی کوچک اما در مقیاس میلیاردها واحد هستند. به طور کلی، این یک متریک ابری است.

هنگامی که بلوک های ساختمان کوچک هستند، بهینه سازی آنها برای امنیت، کنترل دسترسی، مدیریت خط مشی، مدیریت چرخه عمر و به روز رسانی های غیر مخرب آسان تر است. و در نهایت بهره وری را تضمین می کند. اندازه بلوک ساختمان تابعی از کنترل پذیری ناحیه شکست است که به این صورت است که سیستم های بسیار انعطاف پذیر ساخته می شوند.

چند اجاره ای ویژگی های زیادی دارد. در حالی که این بعد به نحوه دسترسی سازمان ها به داده ها و برنامه ها اشاره می کند، به خود برنامه ها و منطق پشت جداسازی آنها از یکدیگر نیز اشاره دارد.

ویژگی های رویکرد مدرن به چند مشتری:

  • در یک زمان کوتاه، تعداد مشتریان می تواند از چند صد به چند میلیون افزایش یابد.
  • مشتریان کاملاً از یکدیگر جدا هستند. این به آن‌ها اجازه می‌دهد نسخه‌های مختلف یک نرم‌افزار را اجرا کنند و اشیاء را با تنظیمات، مجوزها، ویژگی‌ها، سطوح امنیتی و نگهداری متفاوت ذخیره کنند. این در هنگام مقیاس بندی به سرورهای جدید، به روز رسانی ها و مناطق جغرافیایی ضروری است.
  • ذخیره سازی به صورت کشسانی مقیاس پذیر است، منابع در صورت تقاضا ارائه می شوند.
  • هر عملیات توسط یک API کنترل می شود و بدون دخالت انسان به صورت خودکار انجام می شود.
  • نرم افزار را می توان در کانتینرها میزبانی کرد و از سیستم های ارکستراسیون استاندارد مانند Kubernetes استفاده کرد.

S3 سازگار است

Amazon S3 API استاندارد واقعی برای ذخیره سازی اشیا است. هر فروشنده نرم افزار ذخیره سازی شی ادعا می کند که با آن سازگار است. سازگاری با S3 باینری است: یا به طور کامل پیاده سازی شده است یا نیست.

در عمل، صدها یا هزاران سناریوی لبه وجود دارد که در آن هنگام استفاده از ذخیره‌سازی شی، مشکلی پیش می‌آید. به ویژه از ارائه دهندگان نرم افزار و خدمات اختصاصی. موارد استفاده اصلی آن آرشیو مستقیم یا پشتیبان گیری است، بنابراین دلایل کمی برای فراخوانی API وجود دارد، موارد استفاده همگن هستند.

نرم افزار منبع باز مزایای قابل توجهی دارد. با توجه به اندازه و تنوع برنامه ها، سیستم عامل ها و معماری های سخت افزاری، اکثر سناریوهای لبه را پوشش می دهد.

همه اینها برای توسعه دهندگان برنامه مهم است، بنابراین ارزش آزمایش برنامه را با ارائه دهندگان ذخیره سازی دارد. منبع باز این فرآیند را آسان‌تر می‌کند – درک اینکه کدام پلتفرم برای برنامه شما مناسب است آسان‌تر است. ارائه دهنده می تواند به عنوان یک نقطه ورود به فضای ذخیره سازی استفاده شود، به این معنی که نیازهای شما را برآورده می کند. 

منبع باز به این معنی است: برنامه ها به یک فروشنده متصل نیستند و شفاف تر هستند. این یک چرخه عمر طولانی برنامه را تضمین می کند.

و چند نکته دیگر در مورد منبع باز و S3. 

اگر یک برنامه کلان داده را اجرا می کنید، S3 SELECT عملکرد و کارایی را با یک مرتبه بزرگ بهبود می بخشد. این کار را با استفاده از SQL انجام می دهد تا فقط اشیاء مورد نیاز شما را از ذخیره سازی بازیابی کند.

نکته کلیدی پشتیبانی از اعلان‌های سطلی است. اعلان‌های سطلی، محاسبات بدون سرور را تسهیل می‌کنند، که جزء مهمی از معماری میکروسرویس است که به عنوان یک سرویس ارائه می‌شود. با توجه به اینکه ذخیره سازی اشیاء به طور موثر ذخیره سازی ابری است، این قابلیت زمانی که ذخیره سازی شی توسط برنامه های کاربردی مبتنی بر ابر استفاده می شود، حیاتی می شود.

در نهایت، اجرای S3 باید از APIهای رمزگذاری سمت سرور Amazon S3 پشتیبانی کند: SSE-C، SSE-S3، SSE-KMS. حتی بهتر از آن، S3 از حفاظت از دستکاری که واقعاً ایمن است پشتیبانی می کند. 

پاسخ به شکست ها

معیاری که احتمالاً اغلب نادیده گرفته می شود این است که سیستم چگونه با خرابی ها برخورد می کند. خرابی‌ها به دلایل مختلفی اتفاق می‌افتند و ذخیره‌سازی اشیا باید همه آنها را مدیریت کند.

به عنوان مثال، یک نقطه شکست وجود دارد، متریک آن صفر است.

متأسفانه، بسیاری از سیستم‌های ذخیره‌سازی اشیاء از گره‌های خاصی استفاده می‌کنند که باید برای عملکرد مناسب خوشه فعال شوند. اینها شامل گره های نام یا سرورهای ابرداده است - این یک نقطه شکست ایجاد می کند.

حتی در مواردی که چندین نقطه شکست وجود دارد، توانایی مقاومت در برابر شکست فاجعه بار بسیار مهم است. دیسک ها خراب می شوند، سرورها از کار می افتند. نکته کلیدی ایجاد نرم افزار طراحی شده برای رسیدگی به شکست به عنوان یک شرایط عادی است. اگر دیسک یا گره ای از کار بیفتد، چنین نرم افزاری بدون تغییر به کار خود ادامه می دهد.

حفاظت داخلی در برابر پاک شدن داده ها و تخریب داده ها تضمین می کند که می توانید به اندازه بلوک های برابری - معمولاً نیمی از دیسک ها - تعداد دیسک ها یا گره ها را از دست بدهید. تنها در این صورت نرم افزار قادر به برگرداندن داده ها نخواهد بود.

خرابی به ندرت تحت بار آزمایش می شود، اما چنین آزمایشی لازم است. شبیه سازی شکست بار کل هزینه های متحمل شده پس از شکست را نشان می دهد.

ثبات

به نمره سازگاری 100% سازگاری دقیق نیز گفته می شود. سازگاری جزء کلیدی هر سیستم ذخیره سازی است، اما ثبات قوی نادر است. به عنوان مثال، Amazon S3 ListObject کاملاً سازگار نیست، فقط در انتها سازگار است.

منظور از سازگاری دقیق چیست؟ برای همه عملیات‌های پس از یک عملیات PUT تأیید شده، موارد زیر باید رخ دهد:

  • مقدار به روز شده هنگام خواندن از هر گره قابل مشاهده است.
  • به روز رسانی در برابر افزونگی خرابی گره محافظت می شود.

این به این معنی است که اگر در وسط ضبط، دوشاخه را بکشید، چیزی از بین نمی رود. سیستم هرگز داده های خراب یا قدیمی را بر نمی گرداند. این یک نوار بالا است که در بسیاری از سناریوها، از برنامه های کاربردی تراکنش گرفته تا پشتیبان گیری و بازیابی، اهمیت دارد.

نتیجه

اینها معیارهای جدید ذخیره‌سازی شی هستند که الگوهای استفاده را در سازمان‌های امروزی منعکس می‌کنند، جایی که عملکرد، سازگاری، مقیاس‌پذیری، دامنه‌های خطا و سازگاری S3 بلوک‌های سازنده برنامه‌های ابری و تجزیه و تحلیل داده‌های بزرگ هستند. من توصیه می کنم هنگام ساخت پشته های داده مدرن، از این لیست علاوه بر قیمت استفاده کنید. 

درباره ذخیره سازی اشیاء Mail.ru Cloud Solutions: معماری S3. 3 سال تکامل Mail.ru Cloud Storage.

دیگر چه بخوانیم:

  1. نمونه‌ای از یک برنامه رویداد محور مبتنی بر هوک‌ها در ذخیره‌سازی شی S3 Mail.ru Cloud Solutions.
  2. بیشتر از Ceph: ذخیره سازی بلوک ابری MCS 
  3. کار با Mail.ru Cloud Solutions S3 به عنوان یک سیستم فایل.
  4. کانال تلگرام ما با اخبار به روز رسانی ذخیره سازی S3 و سایر محصولات

منبع: www.habr.com

اضافه کردن نظر