مهندسی داده

دوره‌ی پردازش داده‌ی جریانی با Kafka

Apache Kafka for Data Engineers

آموزش عملی Apache Kafka برای پردازش جریان رویدادها در محیط محلی؛ از نصب و تولید و مصرف پیام تا Schema Registry، Kafka Connect و پردازش جریانی. این دوره به زبان فارسی و به‌صورت حضوری یا آنلاین برای تیم‌های سازمانی برگزار می‌شود.

سطح
مقدماتی تا پیشرفته
مدت پیشنهادی
۴ روز (۳۲ ساعت)
درس در ۱۲ بخش
۵۶
شیوه‌ی برگزاری
حضوری یا آنلاین

آنچه شرکت‌کنندگان می‌آموزند

  • نصب و اجرای یک خوشه‌ی واقعی Apache Kafka 4.0 با سه Broker در حالت KRaft
  • تولید و مصرف رویدادهای واقعی با گروه‌های مصرف‌کننده و تحویل قابل‌اعتماد
  • اعمال قرارداد داده با Schema Registry و انتقال داده با Kafka Connect
  • پردازش بلادرنگ جریان‌ها با Faust و Spark Structured Streaming

کار عملی: یک خوشه‌ی واقعی Kafka با سه Broker برای جریان رویدادهای سفر شرکت CityFlow

سرفصل دوره

سرفصل شامل ۱۲ بخش و ۵۶ درس است. برنامه‌ی پیشنهادی ۴ روز آموزشی (۳۲ ساعت) است؛ مدت نهایی، تمرین‌ها و شیوه‌ی ارزیابی بر اساس سطح و نیاز تیم پیش از برگزاری تعیین می‌شوند.

  1. ۱

    چرا Kafka؟ جریان رویداد و مسئله‌ی CityFlow

    ۵ درس
    • پیام‌رسان (Message Broker) چه مسئله‌ای را حل می‌کند؟
    • ایده‌ی اصلی Kafka: گزارش ثبت توزیع‌شده
    • نصب Docker و راه‌اندازی یک خوشه‌ی واقعی Kafka
    • KRaft، Kafdrop و اولین پیام‌ها
    • پروژه‌ی راهنمادار: راه‌اندازی بستر Kafka شرکت CityFlow
  2. ۲

    Topic، Partition و پیام

    ۵ درس
    • Topic و Partition
    • ساختار یک پیام
    • ساخت و بررسی Topicها
    • اهمیت کلید پیام: راهبرد پارتیشن‌بندی
    • پروژه‌ی راهنمادار: طراحی ساختار Topicهای CityFlow
  3. ۳

    Producer: نوشتن رویداد در Kafka

    ۵ درس
    • ساخت KafkaProducer و ارسال پیام
    • کلیدها و مسیریابی پارتیشن در عمل
    • تنظیمات مهم Producer
    • مدیریت خطا و Callbackهای تحویل
    • پروژه‌ی راهنمادار: Producer بازپخش رویدادهای سفر CityFlow
  4. ۴

    Consumer و گروه‌های مصرف‌کننده

    ۵ درس
    • ساخت KafkaConsumer و حلقه‌ی Poll
    • گروه‌های مصرف‌کننده
    • Offset و Commit
    • تفاوت assign() و subscribe()
    • پروژه‌ی راهنمادار: گروه مصرف‌کننده برای جریان سفرهای CityFlow
  5. ۵

    ساختار درونی Kafka: تکثیر، Leader و خرابی

    ۵ درس
    • عضویت در خوشه و Controller در KRaft
    • Partition، Leader، Replica و ISR
    • پردازش درخواست‌ها
    • آزمایشگاه عملی: خاموش‌کردن یک Broker و مشاهده‌ی بازیابی
    • پروژه‌ی راهنمادار: مستندسازی یک سناریوی واقعی خرابی
  6. ۶

    تحویل قابل‌اعتماد داده

    ۵ درس
    • تضمین‌های تحویل
    • قابلیت اطمینان در سمت Broker
    • Producerهای Idempotent و تراکنشی
    • Consumerهای قابل‌اعتماد
    • پروژه‌ی راهنمادار: ایجاد کنترل‌شده‌ی خرابی و اطمینان از ازدست‌نرفتن داده
  7. ۷

    Schema Registry و قرارداد داده

    ۵ درس
    • چرا داده‌های رویداد به Schema نیاز دارند
    • Avro و دلیل انتخاب پیش‌فرض آن در Kafka
    • اجرای Schema Registry و ثبت Schema
    • حالت‌های سازگاری و تکامل Schema
    • پروژه‌ی راهنمادار: تعریف و تکامل Schema رویداد سفر در CityFlow
  8. ۸

    Kafka Connect: از پایگاه داده تا موتور جست‌وجو

    ۵ درس
    • معماری Kafka Connect
    • Connector منبع JDBC
    • Connector مقصد Elasticsearch
    • Kafka Connect در برابر Producer و Consumer سفارشی
    • پروژه‌ی راهنمادار: جریان واقعی MySQL به Kafka به Elasticsearch برای CityFlow
  9. ۹

    پردازش جریانی: Faust و Spark Structured Streaming

    ۵ درس
    • مفاهیم پردازش جریانی
    • Faust: تبدیل‌های بدون حالت
    • Faust: تجمیع دارای حالت با Table
    • Kafka و Spark Structured Streaming
    • پروژه‌ی راهنمادار: درآمد بلادرنگ به تفکیک منطقه به دو روش
  10. ۱۰

    مدیریت و پایش جریان‌های Kafka

    ۵ درس
    • چرا جریان داده‌ی بلادرنگ نیاز به مدیریت دارد
    • ارتباط Airflow با Kafka
    • پایش تأخیر مصرف‌کننده و سلامت Brokerها
    • Kafka Connect و مدیریت خوشه
    • پروژه‌ی راهنمادار: DAG در Airflow برای پایش جریان CityFlow
  11. ۱۱

    Kafka در مقیاس بزرگ: تکثیر، معماری و عملیات

    ۵ درس
    • چرا داده را میان خوشه‌ها آینه کنیم
    • MirrorMaker 2: تکثیر واقعی میان خوشه‌ها
    • معماری‌های مرجع Kafka
    • مقایسه‌ی Kafka با سامانه‌های دیگر
    • پروژه‌ی راهنمادار: برنامه‌ی مکتوب توسعه‌ی مقیاس CityFlow
  12. ۱۲

    پروژه‌ی پایانی

    ۱ درس
    • پروژه‌ی پایانی: بستر رویدادهای بلادرنگ شرکت CityFlow

شیوه‌های برگزاری

حضوری در محل سازمان

برگزاری در محل سازمان، همراه با تمرین روی ابزارها و نمونه‌های مرتبط با کار تیم. زمان و مکان با هماهنگی تعیین می‌شود.

آنلاین و زنده

کلاس تعاملی آنلاین همراه با پرسش و پاسخ، تمرین گروهی و بازخورد مستقیم؛ مناسب تیم‌های دورکار یا پراکنده در چند شهر.

کارگاه کوتاه یا دوره‌ی جامع

از کارگاه یک‌روزه برای یک موضوع مشخص تا برنامه‌ی چندماهه برای آماده‌سازی تیم در یک مسیر تخصصی.

دوره‌های مرتبط

همه‌ی دوره‌ها

برگزاری دوره‌ی پردازش داده‌ی جریانی با Kafka برای تیم سازمان

تعداد و سطح شرکت‌کنندگان و زمان‌بندی مدنظر را ارسال کنید تا برنامه‌ی دوره بر همان اساس تنظیم شود.