آشنایی با Debezium و الگوی Change Data Capture
مقدمه و آشنایی با الگوی Change Data Capture در Debezium
Debezium یک پلتفرم توزیع شده متن باز پشتیبانی شده توسط Red Hat به منظور پیاده سازی الگو و مکانیزم Change Data capture است که از آن به اختصار با CDC یاد می شود. CDC در واقع روی یک جدول در دیتابیس فعال می شود که تغییرات ناشی از دستورات ذیل را نگهداری می کند.
- Insert
- Update
- Delete
بدین صورت که جدولی مشابه جدول ما به همراه یکسری فراداده ایجاد می شود و تغییرات داده ای در آن ذخیره می شود. پس بطور خلاصه Change Data Capture الگویی است که امکان کنترل تغییرات پایگاه داده را فراهم می کند. این یک روش موثر برای امکان یکپارچه سازی میکروسرویس ها و حل چالش های معمول نظیر استخراج تدریجی میکروسرویس ها از مونولیت های موجود است. این الگو اجازه دهید تا داده ها بین تیم های مختلف نرم افزاری توزیع شوند بطوری که هر تیم می تواند به صورت مستقل داده های خود را مدیریت کند و در عین حال با منبع اصلی داده ارتباط خود را حفظ کند. البته از الگوهای دیگری نظیر Command Query Responsibility Segregation یا CQRS نیز بدین منظور استفاده می شود.
طریقه کار در Debezium
روش کار پلتفرم Debezium بدین صورت است که شما ابتدا آنرا استارت می کنید، سپس به پایگاه داده مدنظر خود متصلش می کنید. در ادامه، برنامه های نرم افزاری شما می توانند به همه درج ها ، به روزرسانی ها و حذف هایی که سایر برنامه ها در پایگاه داده شما انجام می دهند پاسخ دهند. از جمله ویژگی های کلیدی پلتفرم Debezium می توان به دوام و سرعت بالای آن اشاره داشت. به همین علت هست که برنامه های سیستمی شما می توانند به سرعت پاسخگو باشند و هرگز یک رویداد خاص را از دست ندهند ، حتی وقتی مشکلی رخ می دهد. از آنجایی که تغییر در داده ها امری اجتناب ناپذیر است، Debezium به برنامه های سیستمی شما اجازه می دهد هر زمان داده شما دچار تغییر می شود، واکنش نشان دهد و شما مجبور نیستید برنامه های خود را که عامل تغییر داده ها هستند را دستکاری کنید.
همچنین پلتفرم Debezium به طور مداوم پایگاه داده های شما را رصد می کند و به هر یک از برنامه های شما اجازه می دهد هر تغییر رخ داده در سطح رکورد را به همان ترتیب متناظر به پایگاه داده، بصورت متناظر جریان دهند. شما می توانید Debezium را روی محیط استاندارد مدنظر از جمله OpenShift اجرا کنید.
Debezium و Apache Kafka
این پلتفرم امکان ذخیره سازی تغییرات سطح رکورد در دیتابیس را در قالب Events و سپس ارسال آنها به تاپیک های آپاچی کافکا را ممکن می سازد. کانکتورهای Debezium بر مبنای Apache Kafka Connect API هستند که می توانند در قالب کلاسترهای استریم کافکا از دِپلوی شوند.
مطالب زیر را حتما مطالعه کنید
دوره های آموزشی مرتبط
1 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.
سلام آقای حیدری
تیمورپور هستم لطفا با بنده تماس بگیرید