Data Streaming & Kafka
‫داده‬ ‫جریان‬ ‫یا‬ Data Streaming
‫با‬ ‫مرتبط‬ ‫عمل‬ ‫یا‬ ‫فعالیت‬ ‫هر‬‫جریانی‬ ‫های‬ ‫داده‬
‫جریانی‬ ‫های‬ ‫داده‬:
‫است‬ ‫زمان‬ ‫به‬ ‫وابسته‬ ‫اطالعات‬ ‫برای‬ ‫توصیفی‬
‫کرد‬ ‫ذخیره‬ ‫بعدی‬ ‫های‬‫جو‬ ‫و‬ ‫پرس‬ ‫به‬ ‫پاسخ‬ ‫و‬ ‫پردازش‬ ‫برای‬ ‫را‬ ‫ها‬‫آن‬ ‫توان‬‫نمی‬ ‫و‬ ‫شوند‬ ‫پردازش‬ ‫لحظه‬ ‫در‬ ‫باید‬ ‫که‬ ‫هایی‬‫داده‬
3‫ویژگی‬‫در‬ ‫اصلی‬‫ها‬ ‫داده‬ ‫جریان‬
۱)‫عظیم‬ ‫و‬ ‫کالن‬ ‫حجم‬(‫ها‬ ‫داده‬ ‫عناصر‬ ‫بیشمار‬ ‫تعداد‬)
•‫الگوریتم‬VFDT
۲)‫به‬ ‫ها‬ ‫داده‬ ‫ورود‬ ‫باالی‬ ‫نرخ‬‫سیستم‬
•‫های‬ ‫الگوریتم‬‫آنالین‬
•‫بلوک‬ ‫های‬ ‫الگوریتم‬
۳)‫آن‬ ‫پردازش‬ ‫زمان‬ ‫در‬ ‫ها‬ ‫داده‬ ‫ماهیت‬ ‫و‬ ‫نوع‬ ‫تغییرات‬ ‫باالی‬ ‫نرخ‬‫ها‬(‫رانش‬)
‫ها‬ ‫داده‬ ‫جریان‬ ‫کاوش‬
‫داده‬ ‫جریان‬ ‫استخراج‬ ‫های‬ ‫الگوریتم‬
‫سریع‬ ‫خیلی‬ ‫الگوریتم‬k-Means
‫فاز‬ ‫تک‬ ‫الگوریتم‬C-means
‫الگوریتم‬DENStream
‫الگوریتم‬HPStream
‫سریع‬ ‫خیلی‬ ‫الگوریتم‬k-Means
‫دشتی‬ ‫محدثه‬ ‫از‬ ‫کاری‬
‫راهنما‬ ‫استاد‬:‫دوست‬ ‫عدل‬ ‫استاد‬
‫و‬ ‫پرس‬ ‫نوع‬ ‫و‬ ‫معماری‬‫جوها‬(Queries)‫در‬‫ها‬‫داده‬ ‫جریان‬
‫مستقل‬ ‫جوهای‬ ‫و‬ ‫پرس‬Standalone
‫و‬ ‫پرس‬‫مختار‬ ‫خود‬ ‫جوهای‬ad-hoc
‫سیستم‬‫پیام‬‫رسانی‬
‫در‬ ‫اصلی‬ ‫چالش‬ ‫دو‬ ‫دیتاها‬ ‫زیاد‬ ‫حجم‬ ‫به‬ ‫توجه‬ ‫با‬ ‫کنیم‬ ‫می‬ ‫استفاده‬ ‫را‬ ‫دیتا‬ ‫از‬ ‫زیادی‬ ‫حجم‬ ‫از‬ ‫وقتی‬ ‫ما‬
‫رو‬ ‫پیش‬‫داریم‬:
‫نخست‬ ‫چالش‬:‫کنیم‬ ‫آوری‬ ‫جمع‬ ‫را‬ ‫دیتا‬ ‫از‬ ‫زیادی‬ ‫حجم‬ ‫چگونه‬‫؟‬
‫دوم‬ ‫چالش‬:‫آنالیز‬ ‫را‬ ‫شده‬ ‫آوری‬ ‫جمع‬ ‫دیتاهای‬ ‫چگونه‬‫؟‬ ‫کنیم‬
‫رسانی‬ ‫پیام‬ ‫سیستم‬
Apache Kafka‫یک‬‫انتشار‬ ‫پیام‬ ‫ارسال‬ ‫سیستم‬-‫اشتراک‬‫می‬ ‫که‬ ،‫قویست‬ ‫صف‬ ‫یک‬ ‫و‬‫ب‬ ‫حجم‬ ‫تواند‬‫از‬ ‫االیی‬
‫داده‬‫نقطه‬ ‫به‬ ‫نقطه‬ ‫یک‬ ‫از‬ ‫را‬ ‫ها‬ ‫پیام‬ ‫تا‬ ‫سازد‬ ‫می‬ ‫قادر‬ ‫را‬ ‫شما‬ ‫و‬ ‫باشد‬ ‫داشته‬ ‫اختیار‬ ‫در‬ ‫را‬ ‫ها‬‫منتق‬ ‫دیگر‬ ‫ی‬‫کنید‬ ‫ل‬.
‫به‬ ‫نیاز‬Apache Kafka
Apache Kafka‫یک‬‫پلتفرم‬‫یک‬‫پارچه‬‫برای‬‫پردازش‬‫کلیه‬‫اطالعات‬‫در‬‫لحظ‬‫ه‬
‫می‬‫باشد‬.Apache Kafka‫از‬‫ارسال‬‫پیام‬‫با‬‫تاخیر‬‫کم‬‫پشتیبانی‬‫میکند‬‫و‬‫د‬‫ر‬
‫صورت‬‫بروز‬‫خرابی‬،‫دستگاه‬‫تلرانس‬‫خطا‬‫را‬‫تضمین‬‫می‬‫کند‬.
‫کافکا‬‫توانایی‬‫اداره‬‫ی‬‫تعداد‬‫زیاد‬‫مصرف‬‫کنندگان‬‫متنوع‬‫را‬‫داراست‬‫و‬‫بسیار‬‫س‬‫ریع‬
،‫است‬‫به‬‫طوری‬‫که‬‫در‬‫ثانیه‬۲‫میلیون‬‫انتشار‬‫دیتا‬‫را‬‫انجام‬‫می‬‫دهد‬.‫کافکا‬‫تمام‬‫داده‬
‫ها‬‫را‬‫بر‬‫روی‬‫دیسک‬‫منتشر‬‫می‬،‫کند‬‫که‬‫در‬‫واقع‬‫به‬‫این‬‫معنی‬‫است‬‫که‬‫همه‬‫نوش‬‫ته‬‫ها‬
‫به‬‫حافظه‬‫نهان‬‫صفحه‬OS (RAM)‫منتقل‬‫می‬‫شوند‬.‫این‬‫امر‬‫انتقال‬‫اطالعات‬‫از‬
‫حافظه‬‫نهان‬‫صفحه‬‫به‬‫سوکت‬‫شبکه‬‫را‬‫بسیار‬‫کارآمد‬‫می‬‫کند‬.
‫مزیت‬‫های‬Apache Kafka
‫اطمینان‬ ‫قابلیت‬
‫پذیری‬ ‫مقیاس‬
‫دوام‬
‫عملکرد‬
‫اصول‬Apache Kafka
Apache Kafka – ‫ها‬ ‫برنامه‬
Data streaming & kafka

Data streaming & kafka

  • 1.
  • 2.
    ‫داده‬ ‫جریان‬ ‫یا‬Data Streaming ‫با‬ ‫مرتبط‬ ‫عمل‬ ‫یا‬ ‫فعالیت‬ ‫هر‬‫جریانی‬ ‫های‬ ‫داده‬ ‫جریانی‬ ‫های‬ ‫داده‬: ‫است‬ ‫زمان‬ ‫به‬ ‫وابسته‬ ‫اطالعات‬ ‫برای‬ ‫توصیفی‬ ‫کرد‬ ‫ذخیره‬ ‫بعدی‬ ‫های‬‫جو‬ ‫و‬ ‫پرس‬ ‫به‬ ‫پاسخ‬ ‫و‬ ‫پردازش‬ ‫برای‬ ‫را‬ ‫ها‬‫آن‬ ‫توان‬‫نمی‬ ‫و‬ ‫شوند‬ ‫پردازش‬ ‫لحظه‬ ‫در‬ ‫باید‬ ‫که‬ ‫هایی‬‫داده‬
  • 3.
    3‫ویژگی‬‫در‬ ‫اصلی‬‫ها‬ ‫داده‬‫جریان‬ ۱)‫عظیم‬ ‫و‬ ‫کالن‬ ‫حجم‬(‫ها‬ ‫داده‬ ‫عناصر‬ ‫بیشمار‬ ‫تعداد‬) •‫الگوریتم‬VFDT ۲)‫به‬ ‫ها‬ ‫داده‬ ‫ورود‬ ‫باالی‬ ‫نرخ‬‫سیستم‬ •‫های‬ ‫الگوریتم‬‫آنالین‬ •‫بلوک‬ ‫های‬ ‫الگوریتم‬ ۳)‫آن‬ ‫پردازش‬ ‫زمان‬ ‫در‬ ‫ها‬ ‫داده‬ ‫ماهیت‬ ‫و‬ ‫نوع‬ ‫تغییرات‬ ‫باالی‬ ‫نرخ‬‫ها‬(‫رانش‬)
  • 4.
  • 5.
    ‫داده‬ ‫جریان‬ ‫استخراج‬‫های‬ ‫الگوریتم‬ ‫سریع‬ ‫خیلی‬ ‫الگوریتم‬k-Means ‫فاز‬ ‫تک‬ ‫الگوریتم‬C-means ‫الگوریتم‬DENStream ‫الگوریتم‬HPStream
  • 6.
    ‫سریع‬ ‫خیلی‬ ‫الگوریتم‬k-Means ‫دشتی‬‫محدثه‬ ‫از‬ ‫کاری‬ ‫راهنما‬ ‫استاد‬:‫دوست‬ ‫عدل‬ ‫استاد‬
  • 7.
    ‫و‬ ‫پرس‬ ‫نوع‬‫و‬ ‫معماری‬‫جوها‬(Queries)‫در‬‫ها‬‫داده‬ ‫جریان‬ ‫مستقل‬ ‫جوهای‬ ‫و‬ ‫پرس‬Standalone ‫و‬ ‫پرس‬‫مختار‬ ‫خود‬ ‫جوهای‬ad-hoc
  • 8.
    ‫سیستم‬‫پیام‬‫رسانی‬ ‫در‬ ‫اصلی‬ ‫چالش‬‫دو‬ ‫دیتاها‬ ‫زیاد‬ ‫حجم‬ ‫به‬ ‫توجه‬ ‫با‬ ‫کنیم‬ ‫می‬ ‫استفاده‬ ‫را‬ ‫دیتا‬ ‫از‬ ‫زیادی‬ ‫حجم‬ ‫از‬ ‫وقتی‬ ‫ما‬ ‫رو‬ ‫پیش‬‫داریم‬: ‫نخست‬ ‫چالش‬:‫کنیم‬ ‫آوری‬ ‫جمع‬ ‫را‬ ‫دیتا‬ ‫از‬ ‫زیادی‬ ‫حجم‬ ‫چگونه‬‫؟‬ ‫دوم‬ ‫چالش‬:‫آنالیز‬ ‫را‬ ‫شده‬ ‫آوری‬ ‫جمع‬ ‫دیتاهای‬ ‫چگونه‬‫؟‬ ‫کنیم‬ ‫رسانی‬ ‫پیام‬ ‫سیستم‬
  • 11.
    Apache Kafka‫یک‬‫انتشار‬ ‫پیام‬‫ارسال‬ ‫سیستم‬-‫اشتراک‬‫می‬ ‫که‬ ،‫قویست‬ ‫صف‬ ‫یک‬ ‫و‬‫ب‬ ‫حجم‬ ‫تواند‬‫از‬ ‫االیی‬ ‫داده‬‫نقطه‬ ‫به‬ ‫نقطه‬ ‫یک‬ ‫از‬ ‫را‬ ‫ها‬ ‫پیام‬ ‫تا‬ ‫سازد‬ ‫می‬ ‫قادر‬ ‫را‬ ‫شما‬ ‫و‬ ‫باشد‬ ‫داشته‬ ‫اختیار‬ ‫در‬ ‫را‬ ‫ها‬‫منتق‬ ‫دیگر‬ ‫ی‬‫کنید‬ ‫ل‬.
  • 12.
    ‫به‬ ‫نیاز‬Apache Kafka ApacheKafka‫یک‬‫پلتفرم‬‫یک‬‫پارچه‬‫برای‬‫پردازش‬‫کلیه‬‫اطالعات‬‫در‬‫لحظ‬‫ه‬ ‫می‬‫باشد‬.Apache Kafka‫از‬‫ارسال‬‫پیام‬‫با‬‫تاخیر‬‫کم‬‫پشتیبانی‬‫میکند‬‫و‬‫د‬‫ر‬ ‫صورت‬‫بروز‬‫خرابی‬،‫دستگاه‬‫تلرانس‬‫خطا‬‫را‬‫تضمین‬‫می‬‫کند‬. ‫کافکا‬‫توانایی‬‫اداره‬‫ی‬‫تعداد‬‫زیاد‬‫مصرف‬‫کنندگان‬‫متنوع‬‫را‬‫داراست‬‫و‬‫بسیار‬‫س‬‫ریع‬ ،‫است‬‫به‬‫طوری‬‫که‬‫در‬‫ثانیه‬۲‫میلیون‬‫انتشار‬‫دیتا‬‫را‬‫انجام‬‫می‬‫دهد‬.‫کافکا‬‫تمام‬‫داده‬ ‫ها‬‫را‬‫بر‬‫روی‬‫دیسک‬‫منتشر‬‫می‬،‫کند‬‫که‬‫در‬‫واقع‬‫به‬‫این‬‫معنی‬‫است‬‫که‬‫همه‬‫نوش‬‫ته‬‫ها‬ ‫به‬‫حافظه‬‫نهان‬‫صفحه‬OS (RAM)‫منتقل‬‫می‬‫شوند‬.‫این‬‫امر‬‫انتقال‬‫اطالعات‬‫از‬ ‫حافظه‬‫نهان‬‫صفحه‬‫به‬‫سوکت‬‫شبکه‬‫را‬‫بسیار‬‫کارآمد‬‫می‬‫کند‬.
  • 13.
  • 14.
  • 15.
    Apache Kafka –‫ها‬ ‫برنامه‬