<

عصر هدوپ

آشنایی با Big Data و کار با Hadoop

عصر هدوپ

آشنایی با Big Data و کار با Hadoop

عصر هدوپ
بایگانی

مطلب ۲ : نگهداری داده و تحلیل

دوشنبه, ۵ آبان ۱۳۹۳، ۰۳:۴۰ ب.ظ

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

یک هارد دیسک معمولی سال 1990 توانایی ذخیره سازی داده تا حدود 1,370 MB با سرعت دسترسی در حدود 4.4 MB/s را داشت. بنابراین تمامی داده آن در حدود پنج دقیقه واکشی می شد. با گذشت بیست سال، هاردیسک ها در حدود یک ترا بایت داده را با سرعت دسترسی در حدود 100 MB/s نگهداری می نمایند، که در این حالت کل داده در حدود دو ساعت و نیم واکشی می شود.

برای واکشی نمودن کل داده، این زمان بسیار زیادی می باشد که البته نوشتن همان حجم داده به مراتب زمان زیاد تری خواهد برد. یک راهکار ساده به منظور به حداقل رساندن زمان واکشی، استفاده از چند هاردیسک بصورت همزمان می باشد. برای مثال، اگر ما یک ترابایت داده را بین یک صد هاردیسک تقسیم کنیم، در کمتر از دو دقیقه می توانیم کل آن را واکشی نماییم.

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

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

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

این شبیه کاری است که RAID انجام می دهد، برای مثال، فایل سیستم توزیع شده هدوپ (HDFS)، همین مکانیزم را با کمی تفاوت پیاده سازی می کند، که در قسمت های بعدی به آن می پردازیم.

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

MapReduce مدل برنامه نویسی را ارائه می نماید که ذهن ما را از مسئله مدیریت یک یا چند هاردیسک رها می سازد و همچنین داده را بصورت مجموعه های"Key & Value" برای انجام محاسبات آماده می نماید. ما در قسمت های بعدی با جزئیات بیشتری به آن خواهیم پرداخت، اما نکته مهم برای بحث جاری این است که محاسبات دو جزء دارد، map & reduce و رابطی به منظور "عملیات تلفیق" که بین map & reduce قرار می گیرد.   

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

Hadoop: The Definitive Guide by Tom White

استفاده از این مطلب با ذکر منبع بلامانع می باشد.
موافقین ۱ مخالفین ۰ ۹۳/۰۸/۰۵
مهدی شهیدی صادقی

HDFS

MapReduce

hadoop

هادوپ

هدوپ

نظرات  (۱)

سلام
بسیار بسیار عالی. ادامه بده برادر.
با آرزوی بهترین ها برای شما؛ موفق باشید.
پاسخ:
سلام. از شما تشکر می کنم.
موفق باشید.

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی