بررسی سیستم alto disk archive و نقاط قوت و ضعف آن

مقدمه

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

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

مشکلات LTO و Tape library

از آنجا که حجم فایل های ویدئویی بسیار زیاد است، سیستم های استورج طراحی شده برای دیتا مانند انواع RAID برای آن بسیار گران می شدند. یک فایل یک ساعته ویدئو DV50 در حدود 50 گیگابایت می شود، در حالیکه ممکن است دیتابیس اطلاعات چندین سال آن سازمان این حجم نشود! برای همین برودکسترها مجبور شدند به سراغ گزینه هایی بروند که برای بک آپ دیتا استفاده میشد، مثل انواع نوارهای دیتای LTO.

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

اما نوار مشکلات زیادی داشت، از جمله اینکه دسترسی به نوار LTO خطی است. یعنی برای دسترسی به بخش های مختلف نوار، باید مثل یک نوار ضبط صوت قدیمی آنرا rewind / forward کرد و rewind کردن یک نوار معمولا تا 15 ثانیه طول می کشد.

تعداد بار خوانده شدن نیز در کیفیت نوار به شدت تاثیر گذار است و نوار با رسیدن به مرز 200 بار خوانده شدن ناپایدار می شود. برای خواندن اتوماتیک یک مجموعه بزرگ نوار، احتیاج به tape library است که به صورت خودکار نوارها را از قفسه برداشته و در درایوهای تیپ قرار دهد.

علاوه بر این فقط به تعداد تیپ درایوها، همزمان به نوار دسترسی است (یک تیپ لایبرری با 1000 عدد نوار، ممکن است فقط 6 تیپ درایو داشته باشد، یعنی در آن واحد فقط 6 نوار در دسترس است). در ضمن تیپ و تیپ درایو و تیپ لایبرری، همه قطعات مکانیکی پیچیده ای هستند که نیاز به نگهداری و مراقبت دقیق دارند.

راه اندازی tape library روند دشوار و پیچیده ای است و فقط توسط پرسنل دوره دیده و متخصص باید نصب شود و باید در یک محیط شبیه clean room نصب شود. در ضمن باید بصورت یک مکانیک متخصص بصورت دوره ای سرویس و maintenance شود. همچنین در صنعت LTO، هر درایو نهایتا می تواند نوارهای تا دو نسل قبل خود را بخواند، به عبارت دیگر باید هر 5 تا 6 سال کل چرخه را عوض کرد، چون مثلا LTO6 دیگر نمی تواند نوارهای LTO3 را بخواند و باید همه را به LTO3 انتقال داد.
وقتی همه این مشکلات کنار هم چیده میشوند، این سوال پیش می آید که آیا نمی توان از هارددیسک به عنوان مدیای آرشیو استفاده کرد؟ اکنون قیمت هارددیسک در ظرفیت مشابه، از قیمت نوار LTO ارزانتر است، و علاوه بر این مزایای زیادی مانند دسترسی غیرخطی به دیتای داخل آن، توسط تعداد زیادی استفاده کننده با هم دارد. اما مشکل اینجاست که با وجود قیمت ارزانتر هارددیسک نسبت به LTO، وقتی قرار است قیمت هارددیسک به همراه کنترلرهای RAID آنرا محاسبه کنیم، قیمت بسیار زیاد می شود. علاوه بر این RAID ها مشکلات متعدد دیگری را هم با خود به خانه می آورند!
اما چگونه می توان هزاران هارددیسک را در کنار هم چید، و از هزینه گزاف تجهیزات جانبی آن، مانند کنترلر RAID و مثل آن اجتناب کرد؟

ساختار سیستم ALTO

سیستم ALTO از شرکت disk-archives سعی می کند پاسخی به سوال بالا باشد و مزایای مشترک هارد دیسک و lto tape را با هم ارائه کند. ALTO که در واقع مخفف Alternative to LTO (جایگزینی برای LTO) است، از تعداد زیادی هارد دیسک که در کنار هم چیده شده اند، اما در واقع با هم RAID نیستند، تشکیل شده است.

این شرکت از سال 2009 تاسیس شده است و هدف اصلی آن media storage برای سیستم های media asset management و archive management solutions است. نکته مهم این است که شرکت انگلیسی است و به خاطر مسائل تحریم ها کلا جواب ایرانی ها را نمی دهد.
سیستم alto از یک شاسی 5U که داخل آن 48 تا دیسک قرار می گیرد تشکیل شده است. این دیسک ها توسط سیستم جداجدا دیده می شوند و هر فایل می تواند با تعداد بار کپی که اپراتور سیستم مشخص می کند روی دیسک ها کپی شود. به عبارت دیگر، مکانیزم striping که رشته رشته کردن اطلاعات است و در انواع RAID استفاده می شود، اینجا وجود ندارد و فایل ها درسته نگهداری می شوند، و اگر هم یک دیسک بیرون کشیده شود، می توان آنرا با یک آداپتور USB یا deck connector به کامپیوتر عادی متصل کرد و اطلاعات داخل آنرا دید. در حال حاضر دیسک های 4 و 6 ترابایتی در سیستم قابل استفاده است و با ارائه دیسک های 8TB به بازار می توان از آنها هم استفاده کرد.
مکانیزم حفاظت از اطلاعات، replica یا کپی از فایل ها است. هر فایل بسته به نظر اپراتور، می تواند با x2 (یعنی دو نسخه از آن) یا x3 (یعنی 3 نسخه از آن) نگهداری شود. این باعث می شود که وقتی یک دیسک از سیستم بیرون کشیده می شود، اطلاعات آن بصورت مجزا قابل دسترسی باشد و وابستگی به سایر دیسک ها نداشته باشد. به همین خاطر می توان تمام اسلات های سیستم را پر نکرد، و یا اینکه از انواع دیسک مختلف استفاده کرد، چیزی که در راید امکان پذیر نیست. یک مزیت دیگر در این حالت این است که در صورت بروز خرابی در یک هارد، نیازی نیست مانند RAID کل یک آرایه rebuild شود و زمان کپی مجدد اطلاعات از روی یک نسخه سالم آن، خیلی کمتر از RAID است. برای رپلیکا کردن یک سرویس یا دستگاه به نام alto replicator وجود دارد که عملیات replicate کردن روی دیسک های مختلف را انجام می دهد.

دیسک ها بصورت عمودی در سیستم قرار می گیرند و به همین خاطر دسترسی مستقیم از جلو به آنها وجود ندارد، بلکه برای تعویض دیسک باید کیس را بیرون کشید و دیسک را از توی آن برداشت.
سیستم عامل آلتو یک جور لینوکس 64 بیتی است که به گفته این شرکت امبدد شده است. سیستم در واقع یک سرور است که جای خوردن 48 تا هارد دارد و شبیه نوعی RAID-1 بدون استریپینگ با آن برخورد می شود.

علاوه بر خود سیستم کنترلر alto، یک شاسی توسعه به نام EX-60 expansion storage وجود دارد، که ظاهرا به هر کنترلر یکی از این ها هم می توان وصل کرد. این شاسی جای خوردن 60 هارد جدید را دارد، اما بدون کنترلر قابل استفاده نیست.
یکی از نکاتی که آلتو روی آن خیلی تاکید دارد، این است که وقتی سیستم به یکسری دیسک ها نیاز ندارد، یعنی تقاضایی برای فایل های روی آن دیسک ها وجود ندارد، سیستم آن هاردها را spin down و یا نهایتا stop می کند. سیستم می تواند هر دیسک را بصورت جدا spin down یا spin up کند. علاوه بر این هر چند مدت یکبار درایوها یکبار روشن می شوند و فایل های روی آن چک می شود تا مشکلی نداشته باشند و اگر مشکلی نبود مجدد درایو spin down می شود. زمان spin up تا دسترسی به اطلاعات در حدود 15 ثانیه طول می کشد که تقریبا برابر زمان دسترسی tape library به یک tape آن از داخل کابینت آن است.

جنبه مشخص و اول این کار این است که مصرف برق سیستم بسیار پایین می آید، زیرا در یک سیستم بزرگ با مثلا 1000 دیسک، مصرف برق وقتی که همه 1000 دیسک با هم روشن باشند و وقتی که مثلا فقط 100 تای آنها روشن باشند بسیار متفاوت است. جنبه دومی که آلتو به آن اشاره می کند، این است که عمر مفید یک دیسک وقتی که خاموش باشد بیشتر می شود. آلتو ادعا می کند، وقتی که یک درایو enterprise که در حالت 24×7 (یعنی همیشه روشن) در یک سیستم راید طبق ادعای سازنده عمر 3 تا 5 ساله دارد، خاموش باشد، عمری بین 30 تا 50 سال پیدا می کند! در این حالت به ادعای این شرکت حتی یک هارد western digital green هم عمری 3 تا 4 برابر عمر کار 24 ساعته در یک سیستم RAID پیدا می کند. ادعایی که البته صحت آن نیاز به تست علمی دارد.

نکته ای که در اینجا باید به آن اشاره کرد، این است که این سیستم با MAID یا Massive Array of Inactive Disk متفاوت است. در MAID در واقع دیسک ها با هم راید شده اند، اما وقتی به آرایه نیازی نیست، آرایه spin down می شود و هنگام نیاز به اطلاعات، کل دیسک های آرایه باید با هم spin up شوند. اما اینجا هر دیسک بصورت مجزا خاموش و روشن می شود.
برای کنترل و مانیتورینگ سیستم، شرکت alto با همکاری شرکت ASTEC IT و بر پایه سیستم Proficy از GE Intelligent Platforms نرم افزاری به نام iBroadcast درست کرده است که برای مدیریت و مانیتورینگ سیستم alto استفاده می شود. هر دیسک، و پاور و بقیه تجهیزات را هم می توان بصورت hot swap جابجا کرد. مصرف شاسی بدون هاردها حدود 300 وات است. روی خود دستگاه هم یک پانل تاچ اسکرین وجود دارد که می توان از روی خود دستگاه هم عملکرد آنرا کنترل کرد.

روش استفاده از سیستم

شرکت disk-archives سه نوع روش استفاده برای سیستم پیشنهاد می کند:

  • روش اول: استفاده از ALTO Filer. اگر از سیستم بخواهیم بدون هیچ تغییری در مجموعه خود استفاده کنیم، می توانیم یک دستگاه Alto Filer خریداری کنیم. کار این دستگاه این است که از طریق آن، اطلاعات سیستم Alto بصورت یک share عادی شبکه، یا به عبارت دیگر یک NAS دیده شوند. این دستگاه می تواند اطلاعات ذخیره شده روی آلتو را با پروتکل های CIFS/SMB یا FTP در دسترس قرار دهد. در این حالت سیستم alto بصورت یک share شبکه در ساختار جاری قابل استفاده است. این مناسب جاهایی است که نمی خواهند زیرساخت نرم افزاری خود را تغییر دهند. این دستگاه یک سیستم 1U جداست که می تواند به شبکه 1GbE یا 10GbE متصل شود. اگر فقط یک کنترلر Alto در مجموعه باشد، لیسانس اینرا می توان روی همان کنترلر هم سوار کرد، اما در غیر اینصورت باید بصورت یک دستگاه جدا خریداری شود.
  • روش دوم: استفاده از ALTO API / SDK سیستم. برای مجموعه هایی که نرم افزار newsroom یا mam خودشان را دارند و می توانند آنرا تغییر بدهند، آلتو یک API ارائه می کند که نرم افزار می تواند از طریق آن با سیستم کار کند. در این حالت نیازی به استفاده از ALTO Filer نیست و خود نرم افزار باید با API سیستم کار کند.
  • روش سوم: استفاده از یک MAM سازگار با آلتو. اگر مشتری قصد تعویض سیستم Media Asset Management خود را داشته باشد، می تواند از یک MAM که خودش بصورت داخل ALTO را می شناسد استفاده کند. در این حالت خود نرم افزار مدیریت آرشیو داخلی با آلتو کار می کند و لازم نیست از جانب مشتری کاری انجام شود. فهرستی از این شرکت های partner در سایت alto موجود است که از آنها می توان به media-alliance Borneo و Cantemo و SGL Flashnet و IPV Curator  یا CISTech اشاره کرد. این لیست از این جهت که فهرست تعداد زیادی ارائه دهنده MAM را هم نشان می دهد قابل توجه است.

از سیستم آلتو می توان به عنوان جایگزین LTO در سیستم های آرشیو و media asset management، نیوزروم ها و سیستم های تبادل تصویر استفاده کرد. هر سیستم آلتو می تواند جداگانه توسط یک MAM کنترل شود، یا اینکه با بقیه کنترل شود. در وب سایت این شرکت فهرستی از مشتریان آن است که بیشتر در روسیه و آسیای جنوب شرقی، مثل سنگاپور و چین متمرکز هستند. البته این خیلی عجیب نیست، چون کشورهای اروپایی که دانش IT خوبی دارند بعید است برای سیستمی که خودشان می توانند به راحتی با نرم افزارهای موجود تهیه کنند، پول بدهند!

قیمت

ما برای گرفتن قیمت، شرایط زیر را مطرح کردیم:

  1. یک برودکستر خاورمیانه ای که نیاز به 1200 ترابایت فضای مفید برای نگهداری مدیاهای آرشیوی خود دارد.
  2. از یک سیستم media asset manager که بصورت داخلی و home built خودش تهیه کرده است، استفاده می کند.

پاسخ شرکت به ما راه حلی با سه دستگاه کنترلر ALTO-II، شش دستگاه EX-60 expansion، دو دستگاه ALTO Filer و 504 عدد هارد دیسک 5 ترابایت بود. در این ساختار هر کنترلر ALTO-II جای 48 هارد دیسک و هر اکسپانژن EX-60 جای 60 هارددیسک را دارد، که در مجموع جای 504 هارد دیسک می شود. از آنجا که حداکثر دوتا EX-60 می توان به یک کنترلر متصل کرد باید از سه عدد کنترلر استفاده شود. دو دستگاه Filer هم برای ارتباط سیستم بدون نیاز به API خاص با بقیه شبکه، بصورت یک share عادی، استفاده می شوند.
قیمت مجموعه فوق به همراه پشتیبانی دو ساله و مجموعه هارددیسک ها 384 هزار دلار آمریکا بود. متاسفانه شرکت قیمت اجزای سیستم را بصورت جداگانه به ما نداد، و بنابراین از این قیمت می توان فقط برای مقایسه شرایط مشابه سایر محصولات استفاده کرد.

مزایا و معایب

سیستم آلتو طراحی بسیار ساده ای دارد. از آنجا که این سیستم از راید استفاده نمی کند، هیچکدام از دردسرهای راید مانند مشکلات rebuild و نیاز به استفاده از دیسک های خاص را هم ندارد. در ضمن spin down کردن دیسک ها در هنگام عدم نیاز به آنها، حتی اگر باعث افزایش عمر هارد نشود، قطعا باعث کاهش مصرف انرژی خواهد شد. در ضمن هزینه این سیستم نسبت به سایر انواع استورج بر پایه راید، خیلی پایین تر است. نگهداشتن فایل بصورت یک تکه روی دیسک هم باعث می شود که با جدا کردن یک دیسک تکی، بتوان فایل های روی آنرا بدون نیاز به بقیه دیسک ها کپی کرد.
اما باید توجه داشت که این سیستم هیچکدام از دردسرهای راید را ندارد، چون هیچکدام از مزایای آنرا هم ندارد. در این سیستم مکانیزم نگهداری بصورت یک فایل یک تکه است، و بنابراین افزایش سرعت read / write که در راید به دست می آید، اینجا وجود ندارد. (البته افزایش سرعت read / write به خاطر استفاده از دیسک های مختلف در حین عملیات خواندن و نوشتن ممکن است وجود داشته باشد.)

در ضمن در این سیستم با وجود آنکه نیمی از دیسک های کل سیستم به protection اختصاص یافته اند، اما بازهم مقدار حفاظت به ازای هر فایل، فقط یک دیسک است. به عبارت دیگر، باوجود اینکه در طرح داده شده به ما از 504 دیسک، 252 تای آنها به حفاظت اختصاص یافته است، اما در صورت رفتن دیسک اول، هیچ تضمینی برای حفاظت از یک فایل وجود ندارد، چون هیچ تضمینی وجود ندارد که دیسک بعدی که خراب میشود، همان دیسکی نباشد که تنها کپی باقی مانده فایل را در خود دارد! در مقایسه یک سیستم erasure code مثل Xendure، با مثلا مکانیزم حفاظت 32/40 می توان اطمینان داشت که اگر تا 8 عدد دیسک همزمان از سیستم، از هرکجای آن بروند، هنوز اطلاعات قابل برگرداندن است، در حالیکه فقط 20 درصد فضا به protection اختصاص یافته است!

نتیجه گیری

آلتو طراحی ساده ای دارد. طراحی که به قدری ساده است که یک متخصص فنی را به این شک می اندازد که آیا پرداختن این قیمت برای آن صلاح است یا نه؟

به هر حال، فارغ از مسئله قیمت، نکته بعدی این است که در مکانیزم پروتکشن کپی از فایل، عدد رپلیکا 2 چندان تضمین کننده باقی ماندن فایل های ویدئو آرشیو نیست. قبلا با اطلاعاتی که گوگل منتشر کرده بود، مشخص شده بود که از نظر گوگل حداقل ضریب رپلیکا برای نگهداری مطمئن از فایل عدد 3 است، که در اینجا اگر بخواهیم از آن عدد استفاده کنیم، هزینه سیستم بازهم بالاتر می رود. به نظر می رسد انتخاب سیستم های مبتنی بر erasure code مانند Xendure برای آرشیو، با قیمت معادل، منطقی تر از سیستم هایی باشد که فقط با استفاده از replica از داده حفاظت می کنند، مگر اینکه یک کپی سوم از اطلاعات روی یک مدیای دیگر، مانند LTO بصورت offline نگهداری شود.