چرا آپاچی کافکا؟
با توجه به نیاز سازمانها به استفاده از دیتا در کوتاهترین زمان ممکن، دیتابیسهای رابطهای معمول، قادر به پاسخگویی به این مهم نبوده و نیستند. از این رو، آپاچی کافکا (Apache Kafka) متولد گردید تا بعنوان یک صف از دادههای ورودی و در جریان، به اپلیکیشنها و نرمافزارهای ما قدرت و کیفیت بسیار بالاتری ببخشد.
کافکا یکی از ابزارهای اساسی در دنیای مهندسی داده و دیتاساینس و بطور کلی هوش مصنوعی میباشد. نباز به متخصصان این ابزار تخصصی هر روز بیشتر از روز گذشته میگردد. اکثر سازمانها و شرکتهای بزرگ در حال مهاجرت از استکهای تقریبن قدیمی خود به انواع جدیدتر که صد البته کافکا نیز جزو آنهاست، میباشند.
معرفی کتابها
به عقیدهی بنده، برای یادگیری کافکا، تنها کورس و دوره آموزشی نیاز ما را مرتفع نمینماید و باید دست به کتاب نیز بشویم. دو کتاب در این وادی، عناوین زیر هستند:
🔻 Kafka in action
🔻 Kafka Streams in action
هر دو کتاب توسط انتشارات مننینگ (Manning) به ترتیب در سالهای 2022 و 2024 روانهی بازار کتاب شدند. هر دو کتاب توسط زبان جاوا آموزش را پیش میبرند. البته دقت کنید که ما میتوانیم آپاچی کافکا را بدون جاوا نیز بیاموزیم و بکار بگیریم. ولی مطمئن باشید که برای حرفهای شدن در این ابزار فوقالعاده، قطعن ما نیاز به زبان جاوا خواهیم داشت. بعنوان مثال Kafka Streams API کلن با زبان جاوا نوشته شده و هیچ کلاینت پایتونی (رسمی) در بازار وجود ندارد.
برای آغاز به مطالعه کتاب برای یادگیری کافکا ابتدا با Kafka in action کار خود را شروع کنید و سپس به سراغ Kafka Streams in action بروید. بنده بشما قول میدهم که با مطالعهی این دو عنوان و تمرین کدهایی که در آنها آمده، میتوانیم مدعی این شویم که کافکا را میفهمیم و قادر به پیادهسازی آن در محیط عملیاتی یا پروداکشن هستیم.
در کتاب اول (Kafka in action) تمامی مفاهیم کلیدی و بنیادی کافکا، از تعریف تاپیک گرفته با بحث امنیتبخشی به کلاسترف مورد بحث و بررسی قرار میگیرد. کتاب سرشار است از تصاویری که بسیار به فهم ما جهت درک عمیق مفاهیم کمک میکنند. کدها از طریق Maven مدیریت میشوند.
اما در کتاب دوم (Kafka Streams in action) ابتدا برخی از مفاهیم بنیادی کافکا در دو فصل اول بصورت مختصر بررسی میگردد. سپس در بخش سوم کتاب که 9 فصل نیز دارد، تمرکز اصلی روی Kafka Stremas API و مبحث داغ استریم پراسسینگ یا همان پردازش استریم هست. کدها در این کتاب از طریق Gradle مدیریت میگردند.
البته دقت داشته باشید که بهتر است که قبل از دست گرفتن این کتابها، چند ویدیوی آموزشی را مشاهده نمائید تا کلیت این ابزار عجیب را بفهمید. سپس وارد دنیای کتاب شوید. بنده گمان میکنم که نویسندگان و متخصصان بزرگ، حرفهای مگوی خود را از طریق کتابهایشان با ما به اشتراک میگذارند. پس از این گنجینههای کمنظیر غافل نشوید.
لینک دانلود کتابها
جهت دریافت این دو کتاب ارزشمند، از طریق لینکهای زیر اقدام نمائید.
اگر علاقمند هستید که کافکا را بطور تخصصی در یک کورس جامع از مهندسی داده بیاموزید ما بشما چهارمین دوره مهندسی داده را پیشنهاد میکنیم. در این دوره ما 7 جلسه از 32 جلسه را به کافکا اختصاص میدهیم و هم از طریق پایتون و هم از طریق جاوا به کار و انجام چند پروژه کافکایی خواهیم پرداخت. تمرکز روی Kafka Streams API میباشد.