Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
🌟 دبزیوم : Debezium 🔥 (پادشاه محبوب و سنگینوزن CDC)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ یک استاندارد صنعتی برای CDC، طراحیشده برای Kafka
✅ پشتیبانی از PostgreSQL, MySQL, SQL Server, Oracle, MongoDB
✅ قابلیت Snapshot اولیه و تبدیل پایگاه دادههای قدیمی به بلادرنگ
⚠️ چالش: پیچیدگی در تنظیمات و نیازمند منابع بالا
🌟 راهکاری مدرن با پشتیبانی از NATS DBConvert Streams ⚡️
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ سازگار با PostgreSQL و MySQL
✅ دادهها را به Kafka، NATS و سایر سیستمها ارسال میکند
✅ سبکتر از Debezium
⚠️ چالش: تنوع دیتابیسهای پشتیبانیشده کمتر از Debezium است
🌟 مکسول: Maxwell Daemon 🏃 (گزینهای سبک برای MySQL)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ طراحی شده برای MySQL (فقط)
✅ سبکتر و سادهتر از Debezium
✅ خروجی JSON به Kafka، Redis، Kinesis و Google Pub/Sub
⚠️ چالش: پشتیبانی از دیتابیسهای دیگر را ندارد
🌟 یک ابزار مبتنی بر تریگر : Sequin 🛡 (انتقال دادهها به APIها، بدون از دست دادن دادهها!)
📌 مدل CDC: مبتنی بر تریگر (Trigger-based CDC)
🎯 ویژگیها:
✅ برای PostgreSQL طراحی شده است
✅ تحویل دادهها ۱۰۰٪ تضمینشده
✅ دادهها را به REST APIها و Webhooks ارسال میکند
⚠️ چالش: وابستگی به تریگرها که میتواند روی عملکرد دیتابیس تأثیر بگذارد
🌟 دیتالیکهوس : OLake 🌊 (پل CDC به دنیای Data Lakehouse!)
📌 مدل CDC: ترکیبی (Hybrid CDC)
🎯 ویژگیها:
✅ طراحیشده برای Apache Iceberg و Data Lakehouse
✅ دادهها را مستقیم از پایگاه دادههای رابطهای به Lakehouse منتقل میکند
✅ عملکرد بهینه برای تحلیل دادههای حجیم
⚠️ چالش: وابستگی زیاد به معماری Data Lakehouse
🌟ابزاری برای اتصال بلادرنگ Estuary Flow 🔄 (اتصال بلادرنگ دیتابیسها به Data Warehouse!)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ انتقال Real-time دادهها از PostgreSQL, MySQL و SQL Server
✅ قابلیت همگامسازی با BigQuery، Snowflake، و Redshift
✅ دارای رابط کاربری ساده و بدون نیاز به مدیریت Kafka
⚠️ چالش: کمتر شناخته شده در مقایسه با ابزارهای جاافتاده
🌟 پریزما - ابزاری برای توسعه دهندگان Prisma Pulse 💡
📌 مدل CDC: مبتنی بر تریگر (Trigger-based CDC)
🎯 ویژگیها:
✅ یک ابزار جدید از Prisma، مخصوص PostgreSQL
✅ ساده و سبک، بدون نیاز به Kafka
✅ مناسب برای اپلیکیشنهای کوچک و متوسط
⚠️ چالش: برای مقیاسهای بزرگ مناسب نیست
🌟 محصول نتفلیکس DBLog 🎬 (انتقال بلادرنگ دادهها در مقیاس Netflix!)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ توسعهیافته توسط Netflix برای PostgreSQL
✅ طراحیشده برای مقیاسهای بزرگ و استریم داده با کارایی بالا
✅ بهینه برای تحلیل دادههای کلان
⚠️ چالش: ابزار جدیدی است و هنوز بهاندازه Debezium تست نشده است
🌟 ردپاندا کانکت - Redpanda Connect
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ ارائهی کانکتورهای قدرتمند برای پایگاههای داده محبوب مانند PostgreSQL، MySQL و MongoDB
✅ جایگزینی مقیاسپذیر و انعطافپذیر برای Kafka Connect
✅ تسهیل در یکپارچهسازی سیستمهای دادهی مختلف
✅ بسیار سریع و اکوسیستم رو به رشد و افزوده شدن سایر دیتابیس ها در آینده نزدیک
⚠️چالش: وابستگی به کافکا (ردپاندا)
🔥 جمعبندی و انتخاب ابزار مناسب
✅ اگر به Kafka نیاز دارید: Debezium، Maxwell Daemon یا DBConvert Streams
✅ اگر به BigQuery یا Snowflake نیاز دارید: Estuary Flow
✅ اگر به یک راهکار سبک برای PostgreSQL میخواهید: Prisma Pulse یا Sequin
✅ اگر دادهها را به Data Lakehouse ارسال میکنید: OLake
✅ اگر یک ابزار در سطح Netflix میخواهید: DBLog (Netflix) / RedPanda Connect
🔥 جمعبندی
امروزه، ابزارهای CDC به بخش مهمی از معماری داده مدرن تبدیل شدهاند. با ظهور گزینههای جدید، کسبوکارها میتوانند بسته به نیاز خود، بهترین ابزار را برای پردازش تغییرات بلادرنگ در پایگاه دادههایشان انتخاب کنند.
💡 در سالهای اخیر، حرکت از Batch Processing به سمت Real-time Data Processing سرعت گرفته است. هر روز شرکتهای بیشتری CDC را جایگزین روشهای قدیمی برای انتقال داده میکنند.
Reference: https://asrathore08.medium.com/change-data-capture-tools-c0e4ee4434ac
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ یک استاندارد صنعتی برای CDC، طراحیشده برای Kafka
✅ پشتیبانی از PostgreSQL, MySQL, SQL Server, Oracle, MongoDB
✅ قابلیت Snapshot اولیه و تبدیل پایگاه دادههای قدیمی به بلادرنگ
⚠️ چالش: پیچیدگی در تنظیمات و نیازمند منابع بالا
🌟 راهکاری مدرن با پشتیبانی از NATS DBConvert Streams ⚡️
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ سازگار با PostgreSQL و MySQL
✅ دادهها را به Kafka، NATS و سایر سیستمها ارسال میکند
✅ سبکتر از Debezium
⚠️ چالش: تنوع دیتابیسهای پشتیبانیشده کمتر از Debezium است
🌟 مکسول: Maxwell Daemon 🏃 (گزینهای سبک برای MySQL)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ طراحی شده برای MySQL (فقط)
✅ سبکتر و سادهتر از Debezium
✅ خروجی JSON به Kafka، Redis، Kinesis و Google Pub/Sub
⚠️ چالش: پشتیبانی از دیتابیسهای دیگر را ندارد
🌟 یک ابزار مبتنی بر تریگر : Sequin 🛡 (انتقال دادهها به APIها، بدون از دست دادن دادهها!)
📌 مدل CDC: مبتنی بر تریگر (Trigger-based CDC)
🎯 ویژگیها:
✅ برای PostgreSQL طراحی شده است
✅ تحویل دادهها ۱۰۰٪ تضمینشده
✅ دادهها را به REST APIها و Webhooks ارسال میکند
⚠️ چالش: وابستگی به تریگرها که میتواند روی عملکرد دیتابیس تأثیر بگذارد
🌟 دیتالیکهوس : OLake 🌊 (پل CDC به دنیای Data Lakehouse!)
📌 مدل CDC: ترکیبی (Hybrid CDC)
🎯 ویژگیها:
✅ طراحیشده برای Apache Iceberg و Data Lakehouse
✅ دادهها را مستقیم از پایگاه دادههای رابطهای به Lakehouse منتقل میکند
✅ عملکرد بهینه برای تحلیل دادههای حجیم
⚠️ چالش: وابستگی زیاد به معماری Data Lakehouse
🌟ابزاری برای اتصال بلادرنگ Estuary Flow 🔄 (اتصال بلادرنگ دیتابیسها به Data Warehouse!)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ انتقال Real-time دادهها از PostgreSQL, MySQL و SQL Server
✅ قابلیت همگامسازی با BigQuery، Snowflake، و Redshift
✅ دارای رابط کاربری ساده و بدون نیاز به مدیریت Kafka
⚠️ چالش: کمتر شناخته شده در مقایسه با ابزارهای جاافتاده
🌟 پریزما - ابزاری برای توسعه دهندگان Prisma Pulse 💡
📌 مدل CDC: مبتنی بر تریگر (Trigger-based CDC)
🎯 ویژگیها:
✅ یک ابزار جدید از Prisma، مخصوص PostgreSQL
✅ ساده و سبک، بدون نیاز به Kafka
✅ مناسب برای اپلیکیشنهای کوچک و متوسط
⚠️ چالش: برای مقیاسهای بزرگ مناسب نیست
🌟 محصول نتفلیکس DBLog 🎬 (انتقال بلادرنگ دادهها در مقیاس Netflix!)
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ توسعهیافته توسط Netflix برای PostgreSQL
✅ طراحیشده برای مقیاسهای بزرگ و استریم داده با کارایی بالا
✅ بهینه برای تحلیل دادههای کلان
⚠️ چالش: ابزار جدیدی است و هنوز بهاندازه Debezium تست نشده است
🌟 ردپاندا کانکت - Redpanda Connect
📌 مدل CDC: مبتنی بر لاگ (Log-based CDC)
🎯 ویژگیها:
✅ ارائهی کانکتورهای قدرتمند برای پایگاههای داده محبوب مانند PostgreSQL، MySQL و MongoDB
✅ جایگزینی مقیاسپذیر و انعطافپذیر برای Kafka Connect
✅ تسهیل در یکپارچهسازی سیستمهای دادهی مختلف
✅ بسیار سریع و اکوسیستم رو به رشد و افزوده شدن سایر دیتابیس ها در آینده نزدیک
⚠️چالش: وابستگی به کافکا (ردپاندا)
🔥 جمعبندی و انتخاب ابزار مناسب
✅ اگر به Kafka نیاز دارید: Debezium، Maxwell Daemon یا DBConvert Streams
✅ اگر به BigQuery یا Snowflake نیاز دارید: Estuary Flow
✅ اگر به یک راهکار سبک برای PostgreSQL میخواهید: Prisma Pulse یا Sequin
✅ اگر دادهها را به Data Lakehouse ارسال میکنید: OLake
✅ اگر یک ابزار در سطح Netflix میخواهید: DBLog (Netflix) / RedPanda Connect
🔥 جمعبندی
امروزه، ابزارهای CDC به بخش مهمی از معماری داده مدرن تبدیل شدهاند. با ظهور گزینههای جدید، کسبوکارها میتوانند بسته به نیاز خود، بهترین ابزار را برای پردازش تغییرات بلادرنگ در پایگاه دادههایشان انتخاب کنند.
💡 در سالهای اخیر، حرکت از Batch Processing به سمت Real-time Data Processing سرعت گرفته است. هر روز شرکتهای بیشتری CDC را جایگزین روشهای قدیمی برای انتقال داده میکنند.
Reference: https://asrathore08.medium.com/change-data-capture-tools-c0e4ee4434ac
Fundamentals_of_Data_Engineering_Reis,_JoeHousley,_Matt_Z_Library.pdf
8.4 MB
Fundamentals of Data Engineering (Reis, JoeHousley, Matt) (Z-Library).pdf
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
کلیکهوس و خرید PeerDB 🚀: رفع محدودیت کوئریهای سنگین تحلیلی بر روی پستگرس بدون درد و خونریزی
کلیکهوس با خرید PeerDB، گامی بزرگ در حوزه تحلیل دادههای سازمانی برداشته است. PeerDB یک ابزار قدرتمند و ساده برای انتقال خودکار دادهها از PostgreSQL به پایگاههای داده تحلیلی و انبارهای داده است.
این ابزار، کار را برای شرکتها و سازمانهایی که دادههای اصلیشان روی پستگرس ذخیره میشود، بسیار آسانتر کرده است.
اکنون، آنها میتوانند بهراحتی دادههای خود را به کلیکهوس منتقل کرده و گزارشهای سنگین تحلیلی خود را بهجای پستگرس، روی کلیکهوس اجرا کنند.
🔹 ابزار PeerDB چه مزایایی دارد؟
✅ پشتیبانی از سه حالت مختلف استریمینگ دادهها:
Log-based (CDC)
Cursor-based (timestamp یا عدد صحیح)
XMIN-based
✅ ۱۰ برابر سریعتر از ابزارهای مشابه
✅ پشتیبانی از ویژگیهای بومی پستگرس مانند:
انواع دادههای پیچیده (jsonb، آرایهها، دادههای مکانی و...)
استریمینگ بهینهی TOAST columns
پشتیبانی از تغییرات در ساختار جدولها
🔗 آدرس گیتهاب PeerDB:
github.com/PeerDB-io/peerdb
عکس پست میزان رشد استفاده از PeerDB را نشان میدهد.
کلیکهوس با خرید PeerDB، گامی بزرگ در حوزه تحلیل دادههای سازمانی برداشته است. PeerDB یک ابزار قدرتمند و ساده برای انتقال خودکار دادهها از PostgreSQL به پایگاههای داده تحلیلی و انبارهای داده است.
این ابزار، کار را برای شرکتها و سازمانهایی که دادههای اصلیشان روی پستگرس ذخیره میشود، بسیار آسانتر کرده است.
اکنون، آنها میتوانند بهراحتی دادههای خود را به کلیکهوس منتقل کرده و گزارشهای سنگین تحلیلی خود را بهجای پستگرس، روی کلیکهوس اجرا کنند.
🔹 ابزار PeerDB چه مزایایی دارد؟
✅ پشتیبانی از سه حالت مختلف استریمینگ دادهها:
Log-based (CDC)
Cursor-based (timestamp یا عدد صحیح)
XMIN-based
✅ ۱۰ برابر سریعتر از ابزارهای مشابه
✅ پشتیبانی از ویژگیهای بومی پستگرس مانند:
انواع دادههای پیچیده (jsonb، آرایهها، دادههای مکانی و...)
استریمینگ بهینهی TOAST columns
پشتیبانی از تغییرات در ساختار جدولها
🔗 آدرس گیتهاب PeerDB:
github.com/PeerDB-io/peerdb
عکس پست میزان رشد استفاده از PeerDB را نشان میدهد.
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
📌 چرا استک دادههای امروزی ناکارآمد شدهاند؟ و راهحل چیست؟
🔹 امروزه سازمانها با انبوهی از ابزارهای داده (مثل Snowflake، Databricks، Fivetran، dbt، Tableau و ...) مواجه هستند که هرکدام بهتنهایی کارآمد هستند، اما در کنار هم باعث افزایش پیچیدگی، کاهش بهرهوری و اتلاف منابع میشوند.
📉 مشکلات اصلی استک دادههای امروزی:
🔸 هزینههای پنهان 💸
پرداخت لایسنس به ۵+ فروشنده مختلف.
هزینههای زیرساختی (سرورها، پردازش و ذخیرهسازی مجزا).
نیاز به استخدام متخصصان متعدد برای مدیریت هر ابزار.
۴۰٪ از زمان مهندسان داده صرف یکپارچهسازی ابزارها میشود!
🔸 بار شناختی بالا و فرسودگی تیمها 🧠
هر ابزار معماری و زبان خاص خود را دارد (Airflow برای Batch، Flink برای Real-time و …).
متخصصان درگیر حل مشکلات ابزارها هستند، نه تحلیل داده.
وابستگی به افراد خاص که فقط یک بخش از استک را میشناسند.
🔸 بیاعتمادی به دادهها 📉
گزارشهای متناقض در ابزارهای مختلف (مثلاً عدد فروش در Power BI با Tableau متفاوت است).
اختلافات بین تیمها بر سر ابزارهای موردعلاقهشان.
مشکلات حاکمیت داده در معماریهای متمرکز یا غیرمتمرکز.
🔎 راهکار چیست؟
✅ ۱. حرکت به سمت معماری مدولار و مستقل از فروشنده (Vendor-Agnostic)
بهجای ابزارهای یکپارچه و پیچیده، از ماژولهای سبکوزن و ترکیبپذیر برای ETL، ذخیرهسازی و پردازش استفاده کنید.
نتیجه؟ کاهش هزینه، افزایش انعطافپذیری و امکان انتخاب بهترین ابزار برای هر نیاز.
✅ ۲. ایجاد یک لایه یکپارچه (Utility Plane) برای مدیریت دادهها
این لایه وظایف پردازش، ذخیرهسازی و متادیتا را بهصورت استاندارد ارائه میدهد. مثال: Netflix با Utility Plane دادههایش را بین Redshift، Snowflake و Athena هماهنگ نگه میدارد.
✅ ۳. کاهش پیچیدگی بدون تغییرات ناگهانی
بهجای حذف یکباره ابزارهای قدیمی، از Adapterها برای اتصال آنها به Utility Plane استفاده کنید.
بهمرور، ابزارهای سنگین و ناکارآمد را با ماژولهای جدید جایگزین کنید.
✅ ۴. پیادهسازی پلتفرم توسعهدهنده داده (Data Developer Platform)
- مدیریت متمرکز منابع (Central Control Plane):
کنترل دسترسیها، متادیتا و خطمشیها از یک نقطه.
- توسعه ماژولار (Development Plane):
مهندسان داده میتوانند ماژولهای کوچک (مثل یک Transform یا Validator) بنویسند و در کل سازمان استفاده کنند.
- معماری Right-to-Left:
شروع از نیاز کسبوکار (مثلاً "چرا فروش کاهش یافته؟") و سپس انتخاب ماژولهای موردنیاز.
💡 جمعبندی:
📌 مشکل اصلی: پیچیدگی بیشازحد، وابستگی به ابزارهای متعدد و ناکارآمدی عملیات داده.
📌 راهحل: حرکت به سمت معماری ماژولار، Utility Plane یکپارچه، و رویکرد تدریجی در بهینهسازی استک داده.
📖 مقاله کامل را در مدیوم بخوانید: https://lnkd.in/di9w9Hgz
🔹 امروزه سازمانها با انبوهی از ابزارهای داده (مثل Snowflake، Databricks، Fivetran، dbt، Tableau و ...) مواجه هستند که هرکدام بهتنهایی کارآمد هستند، اما در کنار هم باعث افزایش پیچیدگی، کاهش بهرهوری و اتلاف منابع میشوند.
📉 مشکلات اصلی استک دادههای امروزی:
🔸 هزینههای پنهان 💸
پرداخت لایسنس به ۵+ فروشنده مختلف.
هزینههای زیرساختی (سرورها، پردازش و ذخیرهسازی مجزا).
نیاز به استخدام متخصصان متعدد برای مدیریت هر ابزار.
۴۰٪ از زمان مهندسان داده صرف یکپارچهسازی ابزارها میشود!
🔸 بار شناختی بالا و فرسودگی تیمها 🧠
هر ابزار معماری و زبان خاص خود را دارد (Airflow برای Batch، Flink برای Real-time و …).
متخصصان درگیر حل مشکلات ابزارها هستند، نه تحلیل داده.
وابستگی به افراد خاص که فقط یک بخش از استک را میشناسند.
🔸 بیاعتمادی به دادهها 📉
گزارشهای متناقض در ابزارهای مختلف (مثلاً عدد فروش در Power BI با Tableau متفاوت است).
اختلافات بین تیمها بر سر ابزارهای موردعلاقهشان.
مشکلات حاکمیت داده در معماریهای متمرکز یا غیرمتمرکز.
🔎 راهکار چیست؟
✅ ۱. حرکت به سمت معماری مدولار و مستقل از فروشنده (Vendor-Agnostic)
بهجای ابزارهای یکپارچه و پیچیده، از ماژولهای سبکوزن و ترکیبپذیر برای ETL، ذخیرهسازی و پردازش استفاده کنید.
نتیجه؟ کاهش هزینه، افزایش انعطافپذیری و امکان انتخاب بهترین ابزار برای هر نیاز.
✅ ۲. ایجاد یک لایه یکپارچه (Utility Plane) برای مدیریت دادهها
این لایه وظایف پردازش، ذخیرهسازی و متادیتا را بهصورت استاندارد ارائه میدهد. مثال: Netflix با Utility Plane دادههایش را بین Redshift، Snowflake و Athena هماهنگ نگه میدارد.
✅ ۳. کاهش پیچیدگی بدون تغییرات ناگهانی
بهجای حذف یکباره ابزارهای قدیمی، از Adapterها برای اتصال آنها به Utility Plane استفاده کنید.
بهمرور، ابزارهای سنگین و ناکارآمد را با ماژولهای جدید جایگزین کنید.
✅ ۴. پیادهسازی پلتفرم توسعهدهنده داده (Data Developer Platform)
- مدیریت متمرکز منابع (Central Control Plane):
کنترل دسترسیها، متادیتا و خطمشیها از یک نقطه.
- توسعه ماژولار (Development Plane):
مهندسان داده میتوانند ماژولهای کوچک (مثل یک Transform یا Validator) بنویسند و در کل سازمان استفاده کنند.
- معماری Right-to-Left:
شروع از نیاز کسبوکار (مثلاً "چرا فروش کاهش یافته؟") و سپس انتخاب ماژولهای موردنیاز.
💡 جمعبندی:
📌 مشکل اصلی: پیچیدگی بیشازحد، وابستگی به ابزارهای متعدد و ناکارآمدی عملیات داده.
📌 راهحل: حرکت به سمت معماری ماژولار، Utility Plane یکپارچه، و رویکرد تدریجی در بهینهسازی استک داده.
📖 مقاله کامل را در مدیوم بخوانید: https://lnkd.in/di9w9Hgz
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from عکس نگار
تحولی بزرگ در Apache Airflow: نسخه ۳ در راه است! 🚀
بعد از سالها تجربه با نسخههای ۱ و ۲، حالا نسخه ۳ با بازطراحی گسترده و حل چالشهای قدیمی در دسترس توسعهدهندگان قرار گرفته — فعلاً بهصورت نسخه کاندید انتشار (Release Candidate).
در ادامه نگاهی داریم به مهمترین تغییرات:
🔁 نسخهبندی DAGها و تاریخچه اجراها
در گذشته بررسی تغییرات در DAGها کاری زمانبر و دشوار بود.
✅ حالا در نسخه ۳، تاریخچهی کامل DAGها از طریق UI (در Grid و Graph View) در دسترس است — حتی حذف یا اضافه شدن Taskها بین نسخهها قابل ردیابی شده است.
🧠 Backfill هوشمند و یکپارچه
Backfillها قبلاً مشکلاتی در عملکرد و مقیاسپذیری داشتند.
✅ اکنون توسط Scheduler مدیریت میشوند و از طریق UI هم قابل اجرا هستند. مناسب برای ML و ETL.
🌐 اجرای وظایف در هر زبان و محیطی
تا قبل از این، فقط Python در دسترس بود.
✅ با Task Execution API، Airflow به معماری Client/Server رسیده.
میتوانید Taskها را از Python، Go (و بزودی زبانهای دیگر) اجرا کنید — حتی در Edge یا Multi-cloud.
📩 زمانبندی بر اساس رویدادها (Event-Driven Scheduling)
در نسخههای قبلی، اجرای DAGها تنها براساس زمان یا وابستگیهای داخلی ممکن بود.
✅ حالا Airflow 3 با معرفی مفهوم «داراییهای دادهای» (Data Assets) و «ناظران» (Watchers) امکان اجرای DAG بر اساس رویدادهای خارجی را فراهم کرده است.
بهصورت پیشفرض، اتصال به AWS SQS فراهم شده است — مثلاً با رسیدن یک پیام به SQS، یک DAG میتواند اجرا شود.
اما نکته مهمتر:
🔄 این ساختار ماژولار است و میتوانید Apache Kafka یا سایر سیستمهای پیامرسان را نیز جایگزین کنید. کافی است یک Watcher مخصوص Kafka بنویسید که روی Topic مشخصی گوش دهد و پیامهای جدید را به Airflow منتقل کند.
این امکان، Airflow را برای سناریوهای real-time در مقیاس بالا، بسیار انعطافپذیر میکند.
🤖 اجرای بلادرنگ برای هوش مصنوعی
تاکنون وابستگی به execution_date مانع اجرای DAGهای Realtime بود.
✅ اکنون میتوانید DAGهایی بدون وابستگی زمانی اجرا کنید — عالی برای Inference و API-based Workflows.
🖥 رابط کاربری کاملاً جدید
UI قدیمی سنگین و محدود بود.
✅ Airflow 3 با React و FastAPI بازنویسی شده. سریع، سبک و قابل توسعه.
همچنین Flask AppBuilder از Core جدا شده و به یک پکیج مستقل تبدیل شده.
🔐 ایزولاسیون وظایف و امنیت بالا
اجرای Taskها در یک محیط مشترک مشکلساز بود.
✅ حالا هر Task میتواند بهصورت ایزوله اجرا شود. CLI هم با airflowctl برای دسترسی از راه دور مجهز شده.
🗳 این نسخه فعلاً در مرحله آزمایشی و بررسی جامعه توسعهدهندگان است. اگر تجربه Airflow دارید، فرصت خوبیه برای تست و ارسال بازخورد قبل از انتشار نهایی.
#مهندسی_داده #ApacheAirflow3 #DataEngineering #MLOps #Kafka #EventDriven #DataOps #Automation 🚀
منبع : https://www.linkedin.com/pulse/apache-airflow-3-release-candidate-apr-4-2025-vikram-koka-3lhmc/
بعد از سالها تجربه با نسخههای ۱ و ۲، حالا نسخه ۳ با بازطراحی گسترده و حل چالشهای قدیمی در دسترس توسعهدهندگان قرار گرفته — فعلاً بهصورت نسخه کاندید انتشار (Release Candidate).
در ادامه نگاهی داریم به مهمترین تغییرات:
🔁 نسخهبندی DAGها و تاریخچه اجراها
در گذشته بررسی تغییرات در DAGها کاری زمانبر و دشوار بود.
✅ حالا در نسخه ۳، تاریخچهی کامل DAGها از طریق UI (در Grid و Graph View) در دسترس است — حتی حذف یا اضافه شدن Taskها بین نسخهها قابل ردیابی شده است.
🧠 Backfill هوشمند و یکپارچه
Backfillها قبلاً مشکلاتی در عملکرد و مقیاسپذیری داشتند.
✅ اکنون توسط Scheduler مدیریت میشوند و از طریق UI هم قابل اجرا هستند. مناسب برای ML و ETL.
🌐 اجرای وظایف در هر زبان و محیطی
تا قبل از این، فقط Python در دسترس بود.
✅ با Task Execution API، Airflow به معماری Client/Server رسیده.
میتوانید Taskها را از Python، Go (و بزودی زبانهای دیگر) اجرا کنید — حتی در Edge یا Multi-cloud.
📩 زمانبندی بر اساس رویدادها (Event-Driven Scheduling)
در نسخههای قبلی، اجرای DAGها تنها براساس زمان یا وابستگیهای داخلی ممکن بود.
✅ حالا Airflow 3 با معرفی مفهوم «داراییهای دادهای» (Data Assets) و «ناظران» (Watchers) امکان اجرای DAG بر اساس رویدادهای خارجی را فراهم کرده است.
بهصورت پیشفرض، اتصال به AWS SQS فراهم شده است — مثلاً با رسیدن یک پیام به SQS، یک DAG میتواند اجرا شود.
اما نکته مهمتر:
🔄 این ساختار ماژولار است و میتوانید Apache Kafka یا سایر سیستمهای پیامرسان را نیز جایگزین کنید. کافی است یک Watcher مخصوص Kafka بنویسید که روی Topic مشخصی گوش دهد و پیامهای جدید را به Airflow منتقل کند.
این امکان، Airflow را برای سناریوهای real-time در مقیاس بالا، بسیار انعطافپذیر میکند.
🤖 اجرای بلادرنگ برای هوش مصنوعی
تاکنون وابستگی به execution_date مانع اجرای DAGهای Realtime بود.
✅ اکنون میتوانید DAGهایی بدون وابستگی زمانی اجرا کنید — عالی برای Inference و API-based Workflows.
🖥 رابط کاربری کاملاً جدید
UI قدیمی سنگین و محدود بود.
✅ Airflow 3 با React و FastAPI بازنویسی شده. سریع، سبک و قابل توسعه.
همچنین Flask AppBuilder از Core جدا شده و به یک پکیج مستقل تبدیل شده.
🔐 ایزولاسیون وظایف و امنیت بالا
اجرای Taskها در یک محیط مشترک مشکلساز بود.
✅ حالا هر Task میتواند بهصورت ایزوله اجرا شود. CLI هم با airflowctl برای دسترسی از راه دور مجهز شده.
🗳 این نسخه فعلاً در مرحله آزمایشی و بررسی جامعه توسعهدهندگان است. اگر تجربه Airflow دارید، فرصت خوبیه برای تست و ارسال بازخورد قبل از انتشار نهایی.
#مهندسی_داده #ApacheAirflow3 #DataEngineering #MLOps #Kafka #EventDriven #DataOps #Automation 🚀
منبع : https://www.linkedin.com/pulse/apache-airflow-3-release-candidate-apr-4-2025-vikram-koka-3lhmc/