خبر فوریامروز

پردازش شتاب‌یافته داده با GPU و موتورهای Polars و cuDF

دوران کلاسترهای پرمصرف اسپارک به سر آمد؛ چگونه موتورهای دیتافریم Polars و cuDF با شتاب‌دهی GPU و استاندارد Apache Arrow سرعت تحلیل تریلیون‌ها ردیف داده را ۵۰ برابر کردند.

پردازش شتاب‌یافته داده با GPU
پردازش شتاب‌یافته داده با GPU و موتورهای Polars و cuDF — عکس: آرشیو ماگ بیت
خلاصه در یک نگاه
  • تحلیل فنی عمیق دگرگونی بنیادین در پشته مهندسی کلان‌داده و خطوط لوله هوش مصنوعی امروزه شکستن بن‌بست پردازنده‌های مرکزی و کتابخانه‌های کند سنتی نظیر Pandas با ادغام پولارس (Polars)، ساختار حافظه ستونی Apache Arrow و موتور شتاب‌یافته cuDF بر بستر کارت‌های گرافیک مدرن. در این مقاله، نحوه دستیابی به شتاب ۵۰ برابری در پردازش داده، کاهش ۸۰ درصدی هزینه‌های کلاسترهای ابری، اجرای کوئری‌های میلیاردی در کسری از ثانیه و گذار به معماری‌های محلی-اول دیتاساینس تشریح شده است.
  • بررسی جامع ابعاد فنی و کاربردی توسط تحریریه ماگ بیت.
  • پیش‌بینی اثرات کوتاه‌مدت و بلندمدت بر اکوسیستم فناوری.

بن‌بست پردازنده‌های مرکزی در عصر کلان‌داده؛ چرا معماری ردیفی و پایتون سنتی به پایان راه رسیدند؟

برای بیش از یک دهه، پایتون پادشاه بی‌رقیب علم داده بود؛ اما این پادشاهی بر دوش کتابخانه‌ای تک‌رشته‌ای و سنگین به نام Pandas بنا شده بود. در زمانی که مجموعه داده‌ها به صدها گیگابایت و تریلیون‌ها ردیف رسیده است، ساختار ذخیره‌سازی ردیفی پایتون، سربار تبدیل اشیاء (Boxing Overhead) و قفل مفسر سراسری (GIL) باعث اتلاف ۹۰ درصدی پتانسیل سیلیکون مدرن می‌شدند.

شرکت‌ها برای غلبه بر این کندی، به کلاسترهای غول‌پیکر Apache Spark در محیط‌های ابری پناه بردند. اما این رویکرد به معنای هزینه‌های نجومی سرورها، تاخیر بالای همگام‌سازی شبکه و زمان طولانی سریالایزیشن میان نودها بود. مهندسان داده اغلب ساعت‌ها منتظر اتمام یک دستور ساده `groupby` یا `join` بر روی چند ده میلیون ردیف می‌ماندند، در حالی که کارت‌های گرافیک نصب‌شده روی همان سرورها در بیکاری مطلق به سر می‌بردند.

امروزه جامعه مهندسی داده دریافت که مسیر کارآمدی نه در افزودن صدها نود پردازنده مرکزی کند، بلکه در سپردن عملیات ریاضی ماتریسی و فیلترینگ ستونی به هزاران هسته موازی پردازنده‌های گرافیکی مدرن (GPU) نهفته است.

کالبدشکافی زبان Rust و ستون‌بندی Apache Arrow؛ پولارس (Polars) چگونه قواعد بازی را تغییر داد؟

پیشگام این انقلاب نوین، موتور دیتافریم Polars است که به صورت بومی با زبان فوق‌سریع و ایمن راست (Rust) بازنویسی شده است. هسته پولارس برخلاف پانداس، کاملاً بر پایه استاندارد حافظه ستونی بدون کپی Apache Arrow توسعه یافته است. در فرمت ستونی، داده‌های مربوط به یک ستون مشترک (مثلاً قیمت یا سن) پشت سر هم در بلاک‌های فیزیکی حافظه ذخیره می‌شوند که منجر به استفاده حداکثری از کش L1/L2 پردازنده و فعال‌سازی دستورات برداری سخت‌افزاری SIMD می‌گردد.

علاوه بر این، پولارس یک بهینه‌ساز کوئری تنبل (Lazy Query Engine) بسیار هوشمند دارد. هنگامی که تحلیل‌گر خطوط لوله داده را تعریف می‌کند، موتور ابتدا یک گراف غیرمدور جهت‌دار (DAG) از عملیات می‌سازد و پیش از اجرا، عملیات زائد را حذف، فیلترها را به ابتدای خط لوله هدایت (Predicate Pushdown) و ستون‌های غیرضروری را پیش از خواندن فایل مسدود می‌کند (Projection Pushdown).

این معماری نوین در ترکیب با پروتکل‌های زیرساخت‌های بازتولیدپذیر و خودکار NixOS در دوآپس، محیط‌هایی کاملاً قطعی، سبک و با کارایی سرسام‌آور خلق کرده که حتی بر روی لپ‌تاپ‌های شخصی مهندسان عملکردی سریع‌تر از کلاسترهای سنتی اسپارک ارائه می‌دهد.

مقایسه بنچمارک زمان اجرای کوئری‌های تحلیلی سنگین میان موتورهای CPU سنتی (Pandas/Spark) و موتورهای برداری مدرن شتاب‌یافته با GPU (Polars/cuDF)
کالبدشکافی حافظه مشترک ستونی در استاندارد Apache Arrow و مهاجرت پردازش خط لوله دیتافریم به هسته‌های تنسور و حافظه پرسرعت HBM3e در پردازنده‌های گرافیکی

جهش cuDF و ادغام با هسته‌های تانسوری؛ تحلیل تریلیون‌ها سطر داده در کسری از ثانیه

نقطه اوج این دگرگونی امروزه ادغام مستقیم پولارس با اکوسیستم cuDF (کتابخانه دیتافریم شتاب‌یافته با GPU از پلتفرم RAPIDS) است. با یک پرچم ساده در کد، خط لوله اجرایی به جای هسته‌های CPU به حافظه فوق‌پهن باند HBM3e و هزاران هسته CUDA منتقل می‌شود. پهنای باند حافظه پردازنده‌های گرافیکی مدرن که از ۳ ترابایت در ثانیه فراتر می‌رود، گلوگاه سنتی خواندن رم را به کلی در هم می‌شکند.

عملیات سنگینی نظیر ادغام جداول بزرگ (Hash Join) و مرتب‌سازی‌های چندستونی که بر روی کلاسترهای ابری ساعت‌ها زمان می‌برد، با cuDF در کمتر از ۳۰۰ میلی‌ثانیه به پایان می‌رسد. بنچمارک‌های صنعتی مستقل امروزه نشان می‌دهند که خطوط لوله داده شتاب‌یافته روی یک سرور تک‌کارت گرافیک، ۵۰ برابر سریع‌تر و با یک‌دهم هزینه انرژی نسبت به یک کلاستر ۶۴ نودی سنتی پردازش می‌شوند.

همچنین، همگرایی این موتورها با محیط‌های ایزوله سخت‌افزاری همچون رایانش محرمانه و انکلاوهای امن سخت‌افزاری در مراکز ابری این اطمینان را ایجاد کرده است که کلان‌داده‌های محرمانه مشتریان در تمام طول انتقال به VRAM به صورت رمزنگاری‌شده پردازش می‌شوند.

پایان دوران دیتابیس‌های میانی حجیم و گذار به معماری دریاچه داده محلی (Local-First Lakehouse)

شتاب‌دهی GPU مرزهای میان دیتابیس‌های تحلیلی (OLAP) و دیتافریم‌های درون‌حافظه‌ای را مخدوش کرده است. در پشته‌های مدرن، مهندسان داده دیگر نیازی به راه‌اندازی پایگاه‌های داده فوق‌پیچیده و بارگذاری خسته‌کننده داده‌ها ندارند. ترکیب فرمت فایل فشرده Parquet بر بستر لیک‌هاوس مدرن با آپاچی آیس‌برگ و موتور درون‌حافظه‌ای DuckDB به همراه Polars و cuDF، امکان اجرای مستقیم کوئری‌های SQL و دیتافریم بر روی باکت‌های ذخیره‌سازی ابری S3 را با سرعت درجا فراهم ساخته است.

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

علاوه بر این، برنامه‌نویسان زبان‌های نوین سیستم با تکیه بر زبان‌های برنامه‌نویسی سیستم مدرن و امن Rust و Mojo کتابخانه‌های اختصاصی خود را مستقیماً به حافظه کالیبره‌شده Arrow متصل کرده و از هرگونه کپی‌برداری غیرضروری بایت‌ها در سراسر اپلیکیشن جلوگیری می‌کنند.

پیامدهای اقتصادی برای شرکت‌های ابری و آینده مهندسی داده در سال‌های پیش رو

کاهش ۸۰ درصدی هزینه‌های زیرساخت ابری، هیجان‌انگیزترین جنبه این تحول برای مدیران ارشد فناوری (CTO) امروزه است. شرکت‌هایی که پیش از این ماهانه صدها هزار دلار بابت حفظ کلاسترهای فعال و گران‌قیمت اسپارک پرداخت می‌کردند، اکنون با چند ماشین مجازی مجهز به شتاب‌دهنده گرافیکی اختصاصی همان حجم کار را با سرعتی بالاتر و پایداری بیشتر مدیریت می‌کنند.

این تحول باعث شده است که حتی استارتاپ‌های کوچک و پژوهشگران مستقل بتوانند به تحلیل داده‌های حجیم در مقیاس پتابایت بپردازند؛ حوزه‌ای که پیش از این در انحصار غول‌های انحصاری فناوری بود. سواد مهندسی داده نیز دگرگون شده و تسلط بر پردازش برداری، ساختارهای بدون کپی و بهینه‌سازی جریان داده بر پایه GPU به مهارت‌های حیاتی بدل شده است.

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

این مطلب را با دوستانتان به اشتراک بگذارید
ر
نوشته‌ی
ریحانه روستا

روزنامه‌نگار حوزه‌ی فناوری؛ علاقه‌مند به روایت آدم‌ها و تغییراتی که فناوری در زندگی روزمره ایجاد می‌کند.

همه‌ی مطالب
مطالب پیشنهادی ماگ بیت

بیشتر از فناوری

مشاهده همه