Apache Spark

Apache Spark

Apache Spark ، یک چارچوب محاسباتی برای داده­های عظیم است. Spark از MapReduce به عنوان موتور اجرای خودش، استفاده نمی­کند اما بخوبی با هادوپ یکپارچه است. در واقع Spark می­تواند در Yarn اجرا شود و با فرمت داده­ای هادوپ و HDFS کار کند. Spark بیشتر بخاطر توانایی نگهداشتن مجموعه­های داده­ای بین کارها، در حافظه، شناخته می­شود. این قابلیت Spark سبب می­شود تا سریعتر از جریان کاری MapReduce معادل که مجموعه­های داده­ای همیشه از دیسک بار می­شوند، عمل کند. دو نوع کاربردی که از مدل پردازشی Spark بهره می­برند، الگوریتم­های تکرار شونده (که یک تابع بر روی مجموعه داده­ای بصورت تکراری تا حصول شرط خروج، اعمال می­گردد، و تحلیل تعاملی(که یک کاربر مجموعه ای از پرس و جوهای اکتشافی تک کاره را بر روی مجموعه­ی داده­ای، اعمال می­کنند) است. همچنین اسپارک APIهایی در زبان­های Java، Scala و Python، ارایه می­کند. پروژه Apache Spark شامل ماژول­هایی یادگیری ماشین(MLlib)، پردازش گراف (GraphX)، پردازش جریانی( (Spark Streaming)، و SQL (Spark SQL است.

مزیت های Apache Spark:

  •  استفاده آسان: شما می توانید برنامه خود را در لپ تاپ تان توسعه دهید، استفاده ازAPI سطح بالا، سبب می شود تا بتوانید بر محتوای محاسبه تمرکز داشته باشید.
  • Spark سریع است: استفاده تعاملی و الگوریتم های پیچیده را ممکن می سازد.
  • موتور عمومی: به شما امکان ترکیب چندین نوع محاسبات را می دهد(برای نمونه،پرس و جوهای SQL، پردازش متن، یادگیری ماشین و پردازش گراف) که قبلا توسطموتورهای مختلف، امکان پذیر بود.

یکی از ویژگی های اصلی Spark که برای سرعت ارایه می دهد، اجرای پردازش ها درحافظه است، اما این سیستم همچنین در اجرای برنامه در دیسک هم از MapReduceکاراتر است. Spark می تواند در کلاسترهای هادوپ اجرا شود و به هر منبع داده ایهادوپ مانند Cassandra دسترسی داشته باشد.

پشته اسپارک

spark Core

هسته Spark شامل قابلیت های اساسی Spark از قبیل اجزایی برای زمان بندی وظیفه،مدیریت حافظه، ترمیم خطا، تعامل با سیستم های ذخیره سازی و دیگر اجزا است.همچنین هسته Spark مکان API ای است که مجموعه داده ای توزیع شده ارتجاعی(resilient distributed datasets-RDD) که انتزاع برنامه نویسی اصلی Sparkاست را تعریف می کند. RDD ها مجموعه اقلام توزیع شده در چندین گره پردازشی که می توانند بطور موازی استفاده شوند، را نشان می دهد.

Spark SQL

این بسته برای کار کردن با داده های دارای ساختار است. ما را قادر می سازد تا از دادهها با SQL مانند زبان پرس و جوی Hive، پرس وجو بگیریم. Spark SQL از چندینمنبع داده ای شامل جداول Hive، Parquet، و JSON پشتیبانی می کند. همچنین توسعهدهندگان می توانند پرس و جوهای SQL را با عملیات دیگری که توسط RDD ها درپایتون، جاوا و اسکالا انجام می شود، در یک برنامه واحد انجام دهند که منجر به ترکیبSQL با تحلیل های پیچیده می شود.

Shark نسخه قدیمی Spark SQL بود که اکنون توسط Spark SQL جازگزین شدهاست.

Spark Streaming

جزء جریانی Spark، به ما امکان پردازش زنده جریان هایی از داده را می دهد. مثالهایی از داده های جریانی شامل فایل های نگاره تولید شده توسط سرویس دهنده های وبیا صف های پیام هایی شامل بروزرسانی وضع و حالت که توسط کاربران یک سرویسوب ارسال می شوند است.

Mllib

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

GraphX

GraphX کتابخانه ای برای پردازش گراف ها(گراف دوست شبکه اجتماعی) است.مانند جریان و SQL، این کتابخانه نیز Spark RDD API را توسعه می دهد و ما راقادر می سازد تا یک گراف جهت دار با مشخصه های دلخواه ضمیمه شده به هر لبه وراس را ایجاد کنیم. GraphX همچنین عملگرهایی برای دستکاری گراف (مانندsubgraph و mapVertices) و کتابخانه ای از الگوریتم های متداول گراف (مانندPageRank و شمارش مثلث) را ارایه می دهد.

Cluster Mangers

Spark طراحی شده است تا بصورت کارا از یک تا چند هزار گره پردازشی مقیاس یابد.برای حصول این قابلیت در حالی که قابلیت انعطاف پذیری نیز به حداکثر برسد، Sparkمی تواند بر روی انواعی از مدیران خوشه از قبیل Hadoop YARN، Apache Mesos و مدیر خوشه ساده ای که در خود Spark به نام زمان بند مستقل است.

جهت دانلود دوره های آموزشی تصویری با موضوع آموزش هادوپ روی موضوعات زیر کلیک نمایید.

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

محسن صفابخش

محسن صفابخش

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

More Posts - Website

Follow Me:
LinkedInGoogle PlusYouTube

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *