در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش کافکا (Kafka) در آپاچی قسمت 1 : Kafka چیست ؟

جریان‌پردازی، تاریخچه‌اش بیشتر برمی‌گردد به سیستم‌ها یا فریم‌ورک‌هایی که قابلیت پردازش یک یا چند دنباله از رخدادهای نامتناهی را فراهم می‌کنند. این سیستم‌ها برای پردازش این رخدادها، عموماً امکاناتی از قبیل جازدنِ (Plugin) منطق‌های شخصی‌شده (Customized Logic) فراهم می‌کردند، می‌توانید کارهایی از قبیل فیلتر کردن، تجمیع‌سازی‌ مبتنی بر پنجره‌های زمانی و یا الحاق‌ کردن جریان‌ها را انجام دهید.

برخی فریم‌ورک‌هایی هم وجود دارند که کارهایی مانند موازی‌سازی را برایتان انجام می‌دهند و دیگر نیاز نیست که خیلی نگران موازی‌سازی‌ها باشید. این فریم‌ورک‌ها اغلب امکانات تحمل‌پذیری خطا هم فراهم می‌کنند. زیرا فریم‌ورک می‌تواند بر روی یک ماشین دیگر دوباره یک پراسس برایتان اجرا کنند.آپاچی کافکا توسط LinkedIn تولید شد و در سال 2011 به بنیاد Open source آپاچی پیوست.Kafka با Scala و Java نوشته شده است.

آپاچی Kafka مبتنی بر publish-subscribe که سیستم پیام رسانی است که بر اساس سرعت، مقیاس پذیری طراحی شده است.در Big Data ما حجم زیادی از دیتا را استفاده می کنیم با توجه به حجم زیاد دیتاها دو چالش اصلی در پیش رو داریم.چالش نخست: چگونه حجم زیادی از دیتا را جمع آوری کنیم و چالش دوم: چگونه دیتاهای جمع آوری شده را آنالیز کنیم. برای غلبه بر این چالش ها باید یک سیستم پیام رسانی داشته باشیم.

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

Kafka به عنوان یک جایگزین مناسب برای broker messageهای سنتی استفاده می شود در مقایسه با دیگر سیستم های پیام، Kafka دارای قابلیت های fault tolerant, replication, built-inpartitioning بهتری است که آن را مناسب برای پردازش پیام هایی با مقیاس بزرگ می کند.

یک سیستم پیام رسان چیست؟

یک سیستم پیام رسان وظیفه انتقال دیتا ازبرنامه ای به برنامه دیگر را دارد بنابراین این برنامه ها تمرکزشان را روی دیتا می گذارند ولی نکته اینجاست که چگونه این دیتاها را به اشتراک می گذارند؟!پیام های توزیع شده بر مبنای مفهومی به نام reliable message queuying یا صف های پیام های قابل اعتماد است پیام به صورت یکنواخت در صف هایی بین برنامه های کلانیت و سیستم پیام رسان قرار می گیرند.دو نوع الگوی پیام رسان در دسترس است point-to-point و دیگری publish-subscribe(pub-sub) سیستم پیام.

Point-to-point message system

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

point-to-point

Publish-subscribe message system

در این سیستم پیام ها بر اساس topic یا موضوعات هستند، برخلاف point-to-point system زمانی که مصرف کنندگان از پیام ها استفاده می کنند پیام ها باقی می مانند پیام ها در یک یا چند topic هستند و مصرف کنندگان به همه ی پیام هایی که به topicهای مختلف است دسترسی دارند.

در publish-subscribe system تولیدکنندگان پیام ها را publish و مصرف کنندگان که پیام ها را دریافت می کنند را subscriber می گویند.برای مثال در زندگی ما از این متدودها در دیش ها استفاده می شود که کانال های مختلفی مانند ورزشی، فیلم ها و موسیقی را منتشر می کنند و هر کس می تواند به مجموعه ای از کانال های خود دسترسی داشته باشد و هر زمان که کانال های مشترکی از آن ها در دسترس باشد آن ها را دریافت کند.

pub-sub

نویسنده: علیرضا قنبری پور

منبع: جزیره لینوکس و سیستم های متن باز وب سایت توسینسو

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.

#پیام_رسان #kafka #آپاچی #کلان_داده #کافکا #zookeeper #علم_داده #جریان_پردازی #مهندسی_داده
عنوان
1 آموزش کافکا (Kafka) در آپاچی قسمت 1 : Kafka چیست ؟ رایگان
2 آموزش کافکا (Kafka) در آپاچی قسمت 2 : مقایسه Kafka با سایر IM ها رایگان
3 آموزش کافکا (Kafka) در آپاچی قسمت 3 : آشنایی با اصطلاحات Kafka رایگان
4 آموزش کافکا (Kafka) در آپاچی قسمت 4 : ZooKeeper چیست؟ رایگان
5 آموزش کافکا (Kafka) در آپاچی قسمت 5 : نصب و تنظیمات Kafka قسمت 1 رایگان
6 آموزش کافکا (Kafka) در آپاچی قسمت 6 : نصب و تنظیمات Kafka قسمت 2 رایگان
7 آموزش کافکا (Kafka) در آپاچی قسمت 7 : نصب و تنظیمات Kafka قسمت 3 رایگان
زمان و قیمت کل 0″ 0
0 نظر

هیچ نظری ارسال نشده است! اولین نظر برای این مطلب را شما ارسال کنید...

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....