آشنایی با Hadoop

10

Click here to load reader

Transcript of آشنایی با Hadoop

Page 1: آشنایی با Hadoop

Hadoopآشنایی با ناصر رضایی

[email protected]

Page 2: آشنایی با Hadoop

مقدمه

.ما در عصر اطالعات زندگی می کنیم•

هر زتابایت )زتابایت 44میزان اطالعات ذخیره شده به صورت الکترونیکی به 2020پیش بینی می شود تا سال •.برسد( بایت یا یک میلیارد ترابایت1027

•Facebook افزایش پیدا می کند( هزار ترابایت7)پتابایت 7میلیارد تصویر است که هر ماه 240میزبان.

آرشیو اینترنت•1

.پتابایت اطالعات را ذخیره سازی کرده است18.5حدود

•Hadoop که توسطApacheپیاده سازی شده است سیستمی مبتنی بر پردازش توزیع شده است.

1www.archive.org

Page 3: آشنایی با Hadoop

ذخیره سازی و تحلیل داده ها

متری افزایش سرعت خواندن هارددیسک ها نسبت به افزایش فضای ذخیره سازی هارددیسک ها نرخ رشد ک•.داشته است

ساعت برای 2.5تا 1990دقیقه در سال 5از حدود . امروزه زمان مورد نیاز برای خواندن تمام اطالعات دیسک به نسبت گذشته بسیار بیشتر شده است•

.هاردیسک های معمولی امروزی

.راهکار ارائه شده استفاده از چند دیسک به صورت همزمان برای افزایش سرعت خواندن و نوشتن است•

Page 4: آشنایی با Hadoop

دو چالش خواندن همزمان

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

.استRAIDراه حل ارائه شده استفاده از چند کپی از داده ها یا همان افزونگی تعمدی، چیزی شبیه به دیسک های •

•Hadoop ازHDFS1

.استفاده می کند

اغلب پردازش های تحلیلی نیازمند آنند که داده ها به طریقی با یکدیگر ادغام شوند-2••MapReduceه از مدل انتزاعی استفاده می کند که این مساله را از عملیات های خواندن و نوشتن روی دیسک به محاسب

از دو عملیات که در اکثر موارد به دنبال هم اجرا می شوند تشکیلMapReduce.مقدار ها تبدیل می کند-مجموعه ای از کلید.Reduceو Map: شده است

1Hadoop Distributed FileSystem

Page 5: آشنایی با Hadoop

پردازش دسته ای

•MapReduceیک پرس و جو را روی تمام . از مدل پردازش دسته ای استفاده می کندdataset انجام می دهد و.در زمان قابل قبولی به نتیجه می رسد

.، برای کاربرد های محاوره ای مناسب نیستMapReduceبه دلیل ذات دسته ای پردازش •

Page 6: آشنایی با Hadoop

Hadoopتوسعه

و سایر سازمان ها روی آن Apache، توسعه های زیادی توسط Hadoopبودن ( غیر محاوره ای)به دلیل آفالین •.انجام شده است

ده ها از مقدار استفاده می کند که برای ذخیره سازی دا -از مدل کلید. که دستیابی آنالین را فراهم می کندHBaseدیتابیس •HDFSاستفاده می کند .HBaseهم از دستیابی آنالین به رکورد ها و هم از پردازش دسته ای بهره می برد.

•YARN1

.را می دهدHadoopسیستم مدیریت کالستر است که به نرم افزار های توزیع شده امکان اجرا روی کالستر :

1Yet Another Resource Negotiator

Page 7: آشنایی با Hadoop

Hadoopالگوهای پردازشی سازگار شده با

•SQLمحاوره ای.Tezروی Hiveیا استفاده از ( Implaمثل )و استفاده از موتور جست و جوی اختصاصی فعال MapReduceبا توزیع •

پردازش محاوره ای•رتی که هر دسته بنابراین کارایی آن ها در صو . خیلی از الگوریتم ها مانند الگوریتم های یادگیری ماشینی ذاتا تکرار شونده اند•

.این قابلیت را فراهم می کندSpark. داده مورد نیاز در حافظه قرار بگیرد، افزایش چشم گیری پیدا می کند

پردازش جریانی•1

.، امکان محاسبات توزیع شده بالدرنگ را فراهم می کنندSamzaو Spark Streamingو Stormسیستم های جریانی مثل

جست و جو•.اجرا شودHadoopمی تواند روی یک کالسترSolrپلتفرم جست و جوی •

1Stream Processing

Page 8: آشنایی با Hadoop

MapReduceپایگاه داده رابطه ای و

1Atomicity, Consistency, Isolation, Durability

MapReduce داده رابطه ایپایگاه

چند پتابایت چند گیگابایت دادهاندازه

ایدسته ای و دسته ایمحاوره دستیابی

د زیادخواندن به تعدا نوشتن یک بار، خواندن و نوشتن به تعداد زیاد بروز رسانی

بدون محدودیت ACID1

تراکنش ها

بندی هنگام خواندنقالب هنگام نوشتنقالب بندی ساختار

کم زیاد جامعیت

خطی خطیغیر تغییر اندازه

.دبا افزودن ایندکس و تراکنش ها بیشتر به سمت محاوره ای شدن پیش رفته انHiveمثل Hadoopسیستم های

Page 9: آشنایی با Hadoop

ساختار یافتگی و افزونگی

قرار می RDBMSکه دارای قالب از پیش تعیین شده ای هستند در حوزه XMLمثل داده های ساخت یافته •.گیرند

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

.مثل فایل های متنی ساده یا تصاویرداده های بدون ساختار ••Hadoop به خوبی داده های نیم ساخت یافته و بدون ساختار را مدیریت می کند و برخالفRDBMS بارگذاری سنگینی روی

.داده ها ندارد

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

غیر خطی SQLدر صورتی که برای . داده ها و پردازش آن ها به صورت خطی افزایش پیدا می کندHadoopدر •. است

Page 10: آشنایی با Hadoop

منابع

• White, Tom. Hadoop: The definitive guide, 4th edition. " O'Reilly Media, Inc.", 2015.