بایگانی دسته: اپن سورس

بررسی مقدماتی سیستم seagate kinetic و نقاط ضعف و قدرت آن

مقدمه

استورج های دیتا یکی از مهمترین ارکان سیستم های IT که ما روزمره از آنها استفاده می کنیم هستند. از مرورکردن ایمیل های ما در gmail، نگاه کرده به ویدئوهای youtube، یا بررسی حساب های بانکی، ما هرروز با حجم زیادی از اطلاعات که روی انواع data storage نگهداری می شوند سر و کار داریم. طوری که پیش بینی می شود حجم اطلاعات نگهداری شده بشر تا سال 2017 به 138 اگزابایت برسد، تا این چیزی که ما آنرا digital universe می نامیم بتواند در خود نگهداری کند.

اما سیستم های سنتی بر مبنای RAID مدت ها است که نشان داده اند در رسیدن به این هدف ناتوان هستند، و به همین خاطر است که انواع و اقسام استورج های Big Data با مفهوم object storage پا به عرصه وجود نهاده اند. در استورج های object storage به جای آنکه یک کنترلر راید اطلاعات را بین هارد دیسک های مختلف تقسیم کند، این خود کلاینت ها و نودها هستند که اطلاعات را روی تعداد زیادی نود که هرکدام تعداد زیادی دیسک دارند تقسیم کرده و از آنها می خوانند. مفهومی مانند فایل سیستم در این استورج ها دیگر معنای چندانی ندارد و دغدغه های این سیستم ها، در ابعاد پتابایت است، نه ترابایت!

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

اما اگر ما بتوانیم سرور را حذف کنیم و خود هارد دیسک را به شبکه متصل کنیم بهتر نیست؟!

 

معرفی سیستم seagate kinetic

این همان ایده ای است که سیگیت، یکی از سه سازنده اصلی هارد درایو با مفهوم kinetic خود به دنبال آن است. اگرچه این مفهوم خیلی جدید نیست و قبلا هم افراد دیگری روی آن کار کرده اند، اما سیگیت معتقد است که اکنون زمان ارائه راه حل های object based و software defined است و به همین خاطر آستین را بالا زده است و خودش وارد این عرصه شده است.

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

ادامه‌ی خواندن

معرفی فایل سیستم zfs، قابلیت ها و نقاط ضعف آن

مقدمه

فایل سیستم یکی از مهمترین بخش های هر سیستم استورج محسوب می شود، و zfs یکی از فایل سیستم هایی است که در چند سال اخیر سر و صدای بسیار زیادی کرده است. این فایل سیستم بسیار پیشرفته و شاید فراتر از زمان خود طراحی شده است و دارای قابلیت هایی است که بسیاری از سازندگان استورج گران قیمت مانند EMC و NetApp با لیسانس های گران قیمت به مشتریان خود می فروشند. این فایل سیستم به قدری پیشرفته است که بسیاری از متخصصین در StorageMojo و AnandTech پیش بینی کرده اند که تاثیر زیادی در بازار استورج خواهد داشت.

تاریخچه مختصر zfs

zfs به عنوان بخشی از سیستم عامل sun solaris طراحی شد. کسانی که با عرصه سیستمهای *nix آشنا هستند می داند که سه شاخه اصلی از این سیستم ها وجود دارد. سیستم های اپن سورس مبتنی بر لینوکس، سیستم های اپن سورس مبتنی بر یونیکس، مثل freeBSD, NetBSD و سیستم های یونیکس تجاری، مانند SUN Solaris یا HP AIX.

zfs به عنوان بخشی از سیستم عامل سولاریس در سال 2001 طراحی شد و بعد از اینکه سان تصمیم به سورس باز کردن سولاریس گرفت، zfs هم به عنوان بخشی از آن بصورت سورس باز ارائه شد. بعد از اینکه اوراکل سان را خرید تا مدتی به ارائه سولاریس بصورت سورس باز ادامه داد، ولی از سولاریس 11 اوراکل مجددا لیسانس سولاریس و به تبع آن zfs را بست و انحصاری خودش کرد، اما انشعاب های سورس باز سولاریس، در قالب پروژه illumos به کار خود ادامه دادند.

ادامه‌ی خواندن

بررسی فایل سیستم HDFS از Apache Hadoop و امکان سنجی استفاده از آن به عنوان یک ذخیره ساز برودکست – بخش دوم

در بخش قبلی ما ساختار فایل سیستم HDFS و نحوه پیاده سازی High availability در آن را بررسی کرده و به نحوه دسترسی به فایل های داخل آن پرداختیم. در این بخش ما به ما عملیات درونی read / write را بررسی می کنیم و به روش چیده شدن بلوک ها داخل کلاستر می پردازیم. علاوه بر این در این بخش ما بعضی ابزارهای hdfs را بررسی کرده و در مورد اینکه hdfs آیا به عنوان یک ذخیره ساز برودکست قابل استفاده است یا نه تصمیم می گیریم.

شکافتن داخل یک عملیات read

در یک عملیات read در HDFS ، کلاینت ابتدا با NameNode تماس گرفته و متادیتای فایل مورد نظر و آدرس نودهایی که بلوک های اطلاعات در آن ذخیره شده اند می گیرد. سپس کلاینت با دیتانود ها تماس گرفته و به ترتیب بلوک های فایل را از آنها می خواند. در مورد خواندن باید به موارد زیر توجه داشت:
عملیات خواندن بصورت عادی بصورت ترتیبی است. یعنی هر بلوک داده از یک نود خوانده شده و بعد از کامل شدن آن کلاینت به سراغ نود بعدی میرود. به عبارت دیگر با اینکه hdfs بصورت بالقوه امکان خواندن بلوک های مختلف از چندین نود بصورت پارالل برای افزایش سرعت را دارد، اما بصورت پیش فرض از آن استفاده نمی کند. برای استفاده از حالت کپی پارالل باید از distcp استفاده کرد که بعدا در مورد آن توضیح خواهیم داد.

ادامه‌ی خواندن

بررسی فایل سیستم HDFS از Apache Hadoop و امکان سنجی استفاده از آن به عنوان یک ذخیره ساز برودکست – بخش اول

مقدمه

سرویس هادوپ آپاچی یکی از پایه های سیستم های distributed در قرن اخیر است که پایه بسیاری از کسب و کارهای بزرگ، مانند yahoo با ده هزار هسته cpu و facebook با 100 پتابایت اطلاعات بر روی آن قرار دارد. hadoop که اسم فیل اسباب بازی پسر یکی از توسعه دهندگان اصلی این سرویس بود، اکنون یکی از اسم های پر سر و صدای عرصه کامپیوتر امروز است.

یکی از بخش های مهم هادوپ، سیستم فایل آن است که به نام Hadoop Distributed File System یا بصورت خلاصه HDFS نامیده می شود. HDFS قابلیت های جالبی از جمله طراحی برای فایل های بسیار بزرگ، قابلیت replica گرفتن از فایل برای جلوگیری از دست رفتن آن، قابلیت کار روی سخت افزارهای عادی (commodity hardware) بدون نیاز به سخت افزارهای خاص و قابلیت توزیع شدن روی تعداد زیادی کامپیوتر و نمایش آنها بصورت یک سیستم واحد را دارد.

بسیاری از این قابلیت ها، قابلیت هایی هستند که می توانند برای سیستم های ذخیره سازی ویدئو بسیار مهم باشند. سیستم های ذخیره سازی ویدئو مخصوصا برای آرشیو، نیاز به ذخیره سازهای ارزان قیمتی دارند که که اهمیت حفظ فایل ویدئویی در آن بالاست و با فایل های بزرگ سر و کار دارد، و علاوه بر این از نظر اقتصادی استفاده از دیسک های SAN برای آنها مقرون به صرفه نیست.

ادامه‌ی خواندن