مهندسی داده

دوره‌ی مدل‌سازی داده با dbt

dbt for Data Engineers

آموزش مهندسی تحلیل با dbt در محیط محلی؛ شامل نصب dbt Core، راه‌اندازی انبار داده‌ی Postgres در Docker و تبدیل داده از لایه‌ی Staging تا آزمون و ساخت Mart. این دوره به زبان فارسی و به‌صورت حضوری یا آنلاین برای تیم‌های سازمانی برگزار می‌شود.

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

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

  • نصب و اجرای dbt Core روی یک انبار داده‌ی واقعی Postgres در Docker
  • ساخت مدل‌های Staging، میانی و Mart که با ref() و source() به هم پیوند خورده‌اند
  • آزمون و مستندسازی داده با آزمون‌های عمومی، اختصاصی و واحد dbt
  • ساخت مدل‌های افزایشی و Snapshot و زمان‌بندی dbt با Airflow

کار عملی: یک DAG کامل، آزموده و مستند در dbt برای تبدیل داده‌های سفر CityFlow روی Postgres و DuckDB، با استقرار و زمان‌بندی در Airflow

سرفصل دوره

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

  1. ۱

    آشنایی با مهندسی تحلیل

    ۵ درس
    • مهندسی تحلیل در واقع چیست
    • dbt Core، dbt Cloud و گذار به Fusion
    • راه‌اندازی انبار داده
    • اولین مدل
    • پروژه‌ی راهنمادار: بارگذاری داده‌های سفر CityFlow در انبار داده
  2. ۲

    مدل‌ها، DAG و Materialization

    ۵ درس
    • ref() و source(): ساخت گراف وابستگی
    • انواع Materialization: View، Table و Ephemeral
    • DAG، فرمان dbt build و اجرای انتخابی
    • انبار داده‌ی دوم با همان SQL
    • پروژه‌ی راهنمادار: بازسازی اولین مدل CityFlow به‌صورت یک DAG واقعی
  3. ۳

    منابع داده و مدل‌های Staging

    ۵ درس
    • تعریف منابع داده
    • تازگی داده‌های منبع
    • لایه‌ی Staging در عمل
    • Staging داده‌های سفر CityFlow
    • پروژه‌ی راهنمادار: یک لایه‌ی Staging کامل
  4. ۴

    آزمون داده

    ۵ درس
    • چرا یک کوئری SQL را آزمون کنیم؟
    • چهار آزمون عمومی داخلی
    • آزمون‌های اختصاصی
    • dbt_utils و مدیریت بسته‌ها
    • پروژه‌ی راهنمادار: لایه‌ی Staging آزموده
  5. ۵

    مدل‌های میانی و Martها

    ۵ درس
    • لایه‌ی میانی
    • مدل‌سازی جدول‌های واقعیت و بُعد در dbt
    • ساخت بُعد منطقه‌ی CityFlow
    • ساخت جدول واقعیت سفرهای CityFlow
    • پروژه‌ی راهنمادار: گزارش منطقه–ساعت در dbt
  6. ۶

    Jinja و ماکروها

    ۵ درس
    • Jinja در SQL
    • کنترل جریان با For و If
    • نوشتن ماکروی اختصاصی
    • ماکروهای dbt_utils
    • پروژه‌ی راهنمادار: حذف تکرار از مدل‌های CityFlow
  7. ۷

    مدل‌های افزایشی

    ۵ درس
    • چرا بازسازی کامل در مقیاس بزرگ جواب نمی‌دهد
    • Materialization افزایشی
    • راهبردهای افزایشی
    • unique_key و داده‌های دیررس
    • پروژه‌ی راهنمادار: جدول واقعیت سفرهای CityFlow به‌صورت افزایشی
  8. ۸

    Snapshot و ابعاد با تغییر کند

    ۵ درس
    • مسئله‌ای که Snapshot حل می‌کند
    • Snapshot در dbt با نگارش جدید
    • راهبرد زمان‌محور در برابر بررسی‌محور
    • کوئری روی وضعیت تاریخی
    • پروژه‌ی راهنمادار: Snapshot از بُعد منطقه‌ی CityFlow
  9. ۹

    مستندسازی و سایت مستندات dbt

    ۵ درس
    • مستندسازی مدل‌ها و ستون‌ها
    • فرمان‌های dbt docs generate و dbt docs serve
    • خواندن گراف تبارنامه‌ی داده
    • Exposureها
    • پروژه‌ی راهنمادار: پوشش کامل مستندات
  10. ۱۰

    آزمون واحد و آزمون پیشرفته

    ۵ درس
    • آزمون داده در برابر آزمون واحد
    • نوشتن آزمون واحد در dbt
    • آزمون حالت‌های مرزی بدون داده‌ی واقعی
    • ترتیب کامل اجرای dbt build
    • پروژه‌ی راهنمادار: آزمون واحد یک ماکروی واقعی CityFlow
  11. ۱۱

    استقرار، CI و الگوهای عملیاتی

    ۵ درس
    • محیط‌ها و Targetها
    • انتخاب مبتنی بر وضعیت
    • dbt در CI
    • زمان‌بندی dbt با Airflow
    • پروژه‌ی راهنمادار: به‌روزرسانی زمان‌بندی‌شده‌ی CityFlow
  12. ۱۲

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

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

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

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

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

آنلاین و زنده

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

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

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

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

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

برگزاری دوره‌ی مدل‌سازی داده با dbt برای تیم سازمان

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