برنامه‌نویسی و مبانی داده

دوره‌ی تحلیل داده با DuckDB

DuckDB for Data Analysis

آموزش تحلیل داده با SQL و DuckDB در محیط محلی؛ از اجرای پرس‌وجو روی فایل‌های CSV تا کار با Join، JSON و داده‌های راه دور، ساخت داشبورد و اجرای پروژه‌ی پایانی. این دوره به زبان فارسی و به‌صورت حضوری یا آنلاین برای تیم‌های سازمانی برگزار می‌شود.

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

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

  • نصب و اجرای DuckDB از خط فرمان و پایتون روی هر سیستم‌عامل
  • اجرای کوئری SQL مستقیماً روی فایل‌های CSV، JSON و Parquet، بدون بارگذاری و بدون سرور پایگاه داده
  • Join، تجمیع و تحلیل کارایی کوئری‌ها با توابع پنجره‌ای و EXPLAIN
  • ساخت اپلیکیشن‌ها و داشبوردهای داده‌ی محلی با Streamlit و Apache Superset

کار عملی: جریان کامل تحلیل داده با DuckDB برای فروشگاه Thistlewood Goods

سرفصل دوره

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

  1. ۱

    آشنایی با DuckDB

    ۶ درس
    • چرا DuckDB؟ تحلیل سریع با SQL جاسازی‌شده
    • مقایسه‌ی DuckDB با Postgres، SQLite و pandas
    • نصب DuckDB (خط فرمان و پایتون) و اتصال
    • اولین کوئری‌ها روی یک فایل واقعی
    • رابط کاربری DuckDB: بررسی بصری داده
    • پروژه‌ی راهنمادار: بررسی کامل یک فایل CSV
  2. ۲

    مبانی SQL به روش DuckDB

    ۶ درس
    • جدول‌ها، سطرها و انواع داده
    • فیلتر و مرتب‌سازی با WHERE و ORDER BY
    • تجمیع با GROUP BY
    • Join کردن جدول‌ها
    • CTE و زیرکوئری
    • پروژه‌ی راهنمادار: پاسخ به پرسش‌های کسب‌وکار با SQL
  3. ۳

    خواندن مستقیم فایل‌ها: CSV، Parquet و چندین فایل

    ۶ درس
    • کوئری روی CSV بدون بارگذاری
    • Parquet: قالب محبوب DuckDB
    • خواندن هم‌زمان چندین فایل با الگوهای Glob
    • تشخیص خودکار Schema و زمان تعیین دستی آن
    • خروجی‌گرفتن از نتایج با COPY
    • پروژه‌ی راهنمادار: اسکریپت دریافت داده از چندین فایل
  4. ۴

    ماندگاری داده: حافظه در برابر فایل پایگاه داده

    ۵ درس
    • پایگاه داده‌ی درون‌حافظه‌ای در برابر ماندگار
    • بارگذاری داده در جدول‌ها
    • View در برابر جدول
    • کار با چند پایگاه داده (ATTACH)
    • پروژه‌ی راهنمادار: ساخت پایگاه داده‌ی تحلیلی محلی
  5. ۵

    کار با JSON و داده‌های تودرتو

    ۵ درس
    • خواندن مستقیم فایل‌های JSON
    • کوئری روی Struct و List در SQL
    • تبدیل JSON تودرتو به جدول
    • ذخیره‌ی نتایج به‌صورت JSON
    • پروژه‌ی راهنمادار: ساختاردهی یک خروجی تودرتو
  6. ۶

    SQL پیشرفته برای تحلیل

    ۵ درس
    • توابع پنجره‌ای: ROW_NUMBER، RANK و سایر توابع
    • جمع تجمعی و میانگین متحرک
    • PIVOT و UNPIVOT
    • توابع تاریخ و زمان
    • پروژه‌ی راهنمادار: گزارش تحلیل فروش
  7. ۷

    DuckDB در اکوسیستم پایتون

    ۵ درس
    • API پایتون: اتصال‌ها و Relationها
    • کوئری مستقیم روی DataFrameهای pandas و Polars
    • دریافت نتایج به‌صورت pandas، Polars یا Arrow
    • اسکریپت یا خط فرمان: کدام و کی؟
    • پروژه‌ی راهنمادار: جریان پردازش پایتونی مبتنی بر DuckDB
  8. ۸

    کوئری روی داده‌های راه دور و بزرگ‌تر از حافظه

    ۵ درس
    • افزونه‌ی httpfs: کوئری روی فایل‌ها از طریق HTTP و S3
    • Parquet پارتیشن‌بندی‌شده و Predicate Pushdown
    • خواندن مستقیم یک مجموعه‌داده‌ی عمومی از URL
    • مدیریت داده‌های بزرگ‌تر از RAM
    • پروژه‌ی راهنمادار: کوئری روی فایل راه دور بدون دانلود
  9. ۹

    کارایی و تحلیل اجرای کوئری

    ۵ درس
    • EXPLAIN و خواندن طرح اجرای کوئری
    • راز سرعت DuckDB: اجرای ستونی و برداری
    • ایندکس و ترتیب: چه زمانی واقعاً کمک می‌کنند
    • تحلیل و رفع یک کوئری کند
    • پروژه‌ی راهنمادار: افزایش سرعت یک گزارش واقعی
  10. ۱۰

    ساخت اپلیکیشن و داشبورد داده‌ی محلی

    ۵ درس
    • از کوئری تا اپلیکیشن: اپلیکیشن داده‌ی محلی چیست
    • داشبورد محلی با Streamlit و DuckDB
    • تبدیل یک کوئری به ابزار خط فرمان قابل استفاده‌ی دوباره
    • نصب Apache Superset با Docker و اتصال به DuckDB
    • پروژه‌ی راهنمادار: ساخت یک داشبورد واقعی در Superset
  11. ۱۱

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

    ۱ درس
    • پروژه‌ی پایانی: جریان تحلیل داده با DuckDB برای Thistlewood Goods

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

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

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

آنلاین و زنده

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

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

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

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

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

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

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