Event Streaming و کاربرد آن در یکپارچگی داده‌ها (معرفی apache kafka)

فیلمی که در ابتدای معرفی apache kafka بهترین معرفی است که از سوی Tim Burglund  توضیح داده شده است. کافکا به عنوان یک event streamer گزینه خوبی برای تعریف این اصطلاح است.

فرض کنید که یک برنامه بزرگ monolith دارید که بانک اطلاعاتی بسیار بزرگی دارد. چطور می توانید آن را گسترش دهید؟ شاید به هیچ طریق!

برای این منظور از برنامه‌های کوچک تر که هر کدام به بانک اطلاعاتی جدا متصل هستند استفاده می‌کنیم یا با کمک کافکا روند ورود و خروج داده‌ها را بر اساس رویدادها مدیریت می‌کنیم.

 

 

DataOps با Meltano

در ادامه سری آموزش‌هایی که هم برای خدمت به جامعه و هم برای تثبیت دانایی‌های خود در پیش گرفته‌ام، meltanoجدیدترین آن‌هاست که طی چند سری سعی‌ می‌کنم کامل توضیح داده و عملی جلو بروم.

یکپارچگی داده‌ها (Data Integration)

ابزاری وجود دارد به نام singer  که برای تمام منابع اطلاعاتی اعم از بانک‌های اطلاعاتی، گیتلب، گیت هاب و هر سایت یا منبعی که به نوعی داده‌ی خروجی‌ای دارد، مورد استفاده قرار می‌گیرد.

این ابزار اطلاعات را از این منابع گرفته و به هر صورت دلخواهی در می‌آورد.

در واقع meltano ابزار singer که tap و targets و تنظیمات آنها را مدیریت می‌نماید تا به درستی کار نمایند.

ممکن است singer این ابزار با apache kafka تشابهاتی داشته باشد. ولی تخصصی‌تر و جامع‌تر از آن به مسئله data integration پرداخته و منابع متعددی را شامل می‌شود. در صورتی که کافکا بیشتر در داخل برنامه‌ها و با منابع محدودی از داده‌ها می‌تواند به کار آید مگر اینکه رابط کاربری‌ش وجود داشته باشد یا نوشته شود.

در کل ابزار data integration به نوعی جهت data replication نیز به کار می‌روند و از این حیث نمی‌توان کافکا را جزو این ابزار حساب کرد و همان تخصصی که در event streaming دارد بهترین معرفی برایش می‌باشد.

منبع

شروع کار با meltano

وقتی singer را تنظیم کردید و از کامل بودن خط لوله (pipline) خود در انتقال داده‌ها مطمئن شدید meltano وسط آمده و به شما کمک می‌کند singer را مدیریت نمایید.

جهت هم‌نوا یا orchestrate نمودن ملتانو می‌توانید از airflow بهره بگیرید تا در تناوب‌های زمانی متعدد آن را اجرا نمایید.

نصب با docker

طبق منبع این نوشته می‌توانید روال نصب ملتانو رو پیگیری نمایید و برای نصب فقط به ذکر چند دستور برای اجرای آن توسط داکر اکتفا نموده و سراغ تنظیمات آن می‌روم:

docker pull meltano/meltano:latest
docker run -v $(pwd):/project -w /project meltano/meltano <args>

تنظیمات meltano

به زودی…

منبع