از Pista Academy حمایت کنید
خلاصه آموزشی
مرور سریع مفاهیم اصلی پیش از تماشای کامل یا برای جمعبندی بعد از آموزش.
در جلسه 17 آموزش Pista Academy، مدرس با استفاده از دیتاستی با حجم ۶۷ گیگابایت از نیویورک سیتی تکسی تریپ، عملکرد پولار را در مقایسه با پاندا بررسی میکند. با استفاده از پولار، میتوان به سرعت دیتاست بزرگی را خواند و عملیاتی مانند محاسبه ماکسیموم، مینیموم و جمعسازی را انجام داد. همچنین، مدرس به اهمیت استفاده از استریمینگ و جی پی یو برای پردازش دادههای حجیم اشاره میکند. در این جلسه، به مدیریت دادههای حجیم با پولارس و استفاده از دستوراتی مانند یونیکا برای تحلیل دادهها نیز پرداخته شده است.
نکات کلیدی
استفاده از پولار برای خواندن دیتاستهای بزرگ با سرعت بالا
مقایسه عملکرد پولار با پاندا در پردازش دادههای حجیم
پولارس قادر به پردازش فایلهای بزرگتر از حافظه رم است و از استریمینگ برای انجام محاسبات استفاده میکند
دستوراتی مانند یونیکا برای تحلیل دادهها در پولارس وجود دارد
متن ویدیو
متن زمانبندیشده این جلسه برای مرور، جستجو و دسترسی سریعتر.
سلام عرض میکنم خدمت دوستان عزیز. بریم سراغ
ادامه بحثمون راجع به پولار و این جلسه
میخوام بریم سراغ یه دیتاست واقعی و یه
تست بکنیم پلارسو ببینیم که آیا واقعاً رو
دیتاستهای سنگین میتونه کارشو درست انجام
بده یا نه. یه دیتاستی توی کگل هست سرچش
کنید میاد. خب
بذارید من سرچ کنم
نیویورک
سیتی
[صدای سرفه] عذرخواهی بکنم تکسی نیویورک سیتی تکسی تریپ
بچه اینجا اومد بذار ثبت توی دیتا ستاش برید
اینجا سرچ
نیو نیور
سیتی
تکسی
اینا اینو می [گلویش را صاف میکند] این د تا دتاس بچهها حدود یک میلیون ردیف
داره و حجمشم ۶۷ گیگه اگه تمایل داشتید
اینو دانلود بکنید خب دانلودشم کنید کار
همین دانلودو ب لاگین کنید بعد دانلودو
بزنید فایل دانلود میشه براتون ۶۰ گیگه
میخوایم با این کار بکنیم با پلارس
پانداز خیلی بعیده بتونه با این کار بکنه
اما ببینیم آیا پلارس میتونه از پسش
بربیاد یا نه خب بیایم اینجا
من ۶۰ گیگو دانلود کردم منتظم این اکسترکتش طول میکشه یه مقدار ویدیو رو
فعلاً پاز کنم
خب بعد از اینکه فایل اکسترکت بشه براتون بچهها یه همچین
مجموعه فایلی بهتون میده که پر از دیتای
داخلش ما قراره بریم الان با یکیش به صورت
تستی کار کنیم
مثلاً من سال ۲۰ ۲۲ رو انتخاب میکنم
قسمت تاکسی زردا و مثلاً یکی از اینا رو
انتخاب میکنم مثلاً این یکو انتخاب کنید
فرض کن اول بذار این مسیرو کپی کنم میگم
برو توی دیتا ست
از اینجا رو کپی میکنم. خب ما چیزایی که لازم داریم یکی
از پی ال و فایل پتو مساوی میذارم با
[گلویش را صاف میکند]
این
اسلش دیتا ست
اسلش این اسلش این
و
اسلش
مثلاً این فال شون یک
کلش کپی
خب بریم سراغ اینکه اینو بخونیم فایله رو من اصلا خوندنشو یادم رفت یه ذرهم دیف
مساوی [صدای سرفه][گلویش را صاف میکند]
پیدا
[ __ ]
پارکت
فایل پد کد دیفهم م ۵ تا ردیف اولشو نشون بده حالا
مثلاً بگیم ۳ تا نشون بده شلوغم نشه چی شد
میگه فایلا رو نمیتونم پیدا کنم خب یه نقطه اولش بذاریم ببینیم میفهمه الان
درست شده
یه سری دیتا داره حالا باید بشینیم دونه
دونه راجع بهش صحبت بکنیم که اینا چیه ولی
اگه خواستید اینجا توضیحاتش هست
اینجا اینجا
توضیحاتش کامل گفته شده که چیه
اشتباه نکنم نگفته
نه ستونا رو اینجا نگفته چیه معمولاً میگنا ولی حالا اینجا نگفته که چیه اینجا
هم نگفته بالاتر از چی خب اوکی ایراد
نداره یه سری حالا فیچر ما داریم اینم
دیتاونه و سرعتو دیدید دیگه توی ۲۹۹
میلی ثانیه
در حقیقت این به قول گفتن این فایله رو
خوند خب فایله چقده به نظرتون ببینیم با
هم
۲۴۶ نه ۲ میلیون و۴۶۳ هزار تا ردیفه بچهها خیلیه خب یعنی ما
اگه میخواستیم همینو با ببریم تو پانداس
قشنگ اذیت میشد
حالا
حالا من میخوام کل فایلا رو یه جا بگم به
خونه بچهها خب
این دفعه اینو کپی میکنم میام اینجا
به جاش میگم برو تمام فایلا این تو رو
بخون یه استار میذارم اینجا
و
سه تا فایل سه تا ردیف اولش ببینیم این
دفعه چقدر طول میشه کلشو بخونه
یه ذره بیشتر زمان برد آخ تایمو ندادم بهش
حالا مهم نیست تایمم نمیخواد شیپ بزنیم
بیم این دفعه دیف شیپمون چیه چقده
چقده
این سه تا این سه تا ۴۰ میلیون ردیفه بچهها ولی باز خیلی زمان نبرد یعنی شما
اگه اینو ببری تو پانداز قشنگ اذیت میشه
خب و
این از این پس ما خوندن فایلمونو دیدیم که خیلی در حقیقت زمان نبردش.
خب حالا میخوام یه ذره بیشتر به چالش بکشمش. میخوام بگم بره تمام فایلا رو
بخونه. یعنی تمام تو تمام اینا بره این
یلو تکسیا رو بخونه. خب یه ذره میخوام
بیشتر اذیتش کنم.
اینو دوباره کپی کنم بیارم اینجا. اینو
دیگه نمیخواد. فقط همون تایمشو بدید.
میگم که برو اینجا اینو میذارم استار
یعنی همه دایرکتیها رو برو بچرخ داخلش خب
بعد
اینم میذارم استار همه فایلا همه فایلهای یلو تکسی رو میخوام
حالا برای اینکه چیز نکنیم اینو کپی کنم
میگم که به جای [ __ ] پارکت این دفعه برو اسکن کن پارکتو میخوام اسکن کم بکنه دیگه
یه تعدادی رو قراره بخونه خب یه اسم دیگه
هم برای این میذارم دی فلیزی اسمشو عوض
میکنم
اینم اینجوری میدم
خب بعد دا سلکت همه ستوناشم نمیخوام بعضی
ستوناشو میخوام
د تا ستونشو مثلاً بگیم برامون بیاره کدوم
ستونو بگیم بیاره مثلاً ستون
تریپ دیستن هست مثلاً مسافتی که سفر اتفاق
افتاده و
این د تا رو میخواد همین د تا ستونشو فقط
انتخاب بکنه بعد میگم که ریزالت
مساویست با دیف
لیزی
مساوی تو رو و ریزالتو در نهایت میگم پرینت بگیر اصلاً
برامون
پرینت
ریز خب ببینیم این چقدر زمان میبره یه
چیزی دارش دیپلیکیت شده انجین استفاده
کنید چشم
انجینست تو بازم نه انجینش میگه آها آها
[گلویش را صاف میکند] خب بذار من اینو
برای اینکه درگیر داکیومنتش نشیم
میبرم توی جمنای
نخوایم بریم داکومنتشو پیدا کنیم جمنای
داکومنتو بهمون میده دیگه چی مشکل داره تو
این کدی که من نوشتم
انجین ترو ایراد داره میگه خب به جاش باید
چی بذاریم باید بذاریم اینکه دیپلیکیت شده
نه خب این خود جمینای هم سوتی داد
و
بذار من یه بار اینو ران کنم
بذار جمنای بفهمونیم که آقا جان این خطا داره میده خب استریمینگ دیپلیکیت شده بعد
از انجن انجین یه سری پارامتر داره میخوام
پارامتراشو بیارم
ش میرفتیم خود داکومنتشو باز میکردیم
خب عذرخواهی کرد قبول خب [خنده] میگه که
انجینو باید بذاریم استریمینگ خب همین
پارامتر دیگهش چیه این دیپلیکیت شده اینم
که اشتباهه این درستشه
استریمینگ داره جی پی یو داره این مموری داره خب حالا میتونیم مثلا ازش گفتیم
فرقشون چیه
وات از فرنس
بتیمینگ
جی پی یو ان این مموری
حالا تا این جوابو میاره ما بیایم اینور
اینو درستش کنیم این
ب اینو باید بذاریم اینجیم
است
تریپ دیستنس ولید کالم وند آها میگه تریپ دیستنس نداره
احتمالاً بعضیاشون اینو ندارن
حالا جالبه که این داره بعضیاشون ندارن
اینو چیکار کنین
بگیم همه رو بخون خونه ولش کن اصلاً همه رو بخون
سلکت نکن
کلشو
بیایم حالا ببینیم این فرق چیه این مموری دیفالتشم رو اینه بچهها خب
هدف اصلی اینکه اسپید خیلی بالایی داره خب تو استریمینگ ولی میتونه دیتاهایی که
بزرگتر از رمه رو هم پردازش بکنه ما حالا
اینجا مثلاً اگه ۱۰۰ گیگ باشه فایلمون
رممون مثلاً ۸ گیگ باشه باید حتماً میریم
سراغ استریمینگ
اینم میریم سراغ بحث موازی بازی و اینا خب
بعد
میاد کل این دق دیتاونو میبره تو رم این
میاد چانک چانک بررسی میکنه
اینم ولش کن بحث جی پی یو اصلا نکنیم این
بحث سی پی یو و رمه سیم پی یو و به اضافه
لیمیتد رم اینم که جی پی یو هیچی
دتاستهای مدیوم و کوچیک تا مدیومو از این
روش استفاده میکنیم دسلایی که خیلی
بزرگتر هستندو میریم سراغ استریمینگ و
اینم که اصلاً کلاً داستانش فرق میکنه خب
پس این تفاوتش رو هم با همدیگه دیدیم خب
این فکر کنم ترکید دیگه
یعنی تریپ دیستنس نداشت یعنی بعضیاشون
عجیبه
احتمالاً یکی از فایلاش مشکل داره خب بذارید یه کار کنم من
شیفت دیلیتش کنم فقط اینا رو بخونه احتمالاً اینا درست
باشه خب یعنی تو اینا مشکلی نداشته باشه
دات بیا کنترول زد بذار برمیگرده آره حالا
برو چک کن ببینم چی میگه نه بازم همون
میگه تریپ دیستنسو من نمیتونم پیدا بکنم
کوچیک بزرگیشو گیر داده الان چی
اینم نمیتونه پیدا کنه خب چشم بیا اینو بذاریم
فرق نمیکنه مثل که کلاً اینا با همدیگه متفاوتن یعنی ستوناشون با
هم فرق داره تو دیتاهای مختلفش بهخاطر این
داره یه ارور میده بذار ببینم میشه این یه
جوری حل و فصلش کرد یا نه
فقط تریپ دیستنس اونو میتونه بیاره یه ستونو
نه کلاً اسما مثل اینکه با هم متفاوت بود ایراد
نداره ولش کن من میخواستم نشون بدم که
چهجوری میشه همه فایلا رو یه جا خوند اینو
میخواستم بهتون نشون بدم
بعد شما میتونستید مثلاً یه کاریست یه
کارای دیگه هم بکنید بچهها مثلاً اینجا
که سلکت میکنید مثلاً بگید بعدش
ماکسیمومشو حساب کن
مثلاً فرض کن من الان مثلاً تو ۲۰۲۲
میگم همه فایلا رو بخون
این دیگه تریپ دیستنس بود دیگه مطمئنم این
بود دیگه ۲۲ ۲ ماکسیمومش بگو چقدر بوده
نگاه کن چقدر سریع حساب کرد ۲۰۰ میلی
ثانیه طول کشید ماکسیمومشو حساب کرد
مینیمومشم میتونیم بهش بگیم که حساب کنه
به این سرعت و صفره مثلاً مینیموم دیستنسی
که داشتیم صفر بوده
این از این حالا اگریگیتی هم میتونید انجام بدید روش
بعد دیگه بذار چی داره می کانتم مثلاً
همون شیپو بهمون میده در اصل دیگه که
تعدادو بهمون میده
مینو و ماکس و کانتو دیدیم دیگه چی داره
سامم میتونیم بگیم مجموعه مسافتی که تو
اون سال تاکسی زردا رفتن انقدر میشه مثلاً
۲.۳۶ ضرب ۱۰ ب توان ۸
و ۱۶۰ میلی طول کشی سامو حساب بکنه.
اینم اگریگیت فانکشنی که شما میتونید روی
مجموعه فایل خیلی بزرگی بزنید و ک خیلیهم
به سرعت این کارو میکنه و نکته مهمش اینه
که بچهها من رمم انقدر نیستا یعنی خیلی
مسئله مهمیه یعنی یه چیزی فراتر از رم من
داره این کارو انجام میده من رممم ۳۲ گیگه
نصفشم احتمالاً داره مصرف میشه
[صدای خرناس]
خب
دیگه چی داریم اینجا اینجا
[گلویش را صاف میکند]
پس من الان داره یه چیزی فراتر از رم من کار میکنه
با قابلیت استریمینگ اینو میاد تیکه تیکه
میگیره و کار میکنه روش و شما میتونید
روی فایلهای خیلی بزرگتر در حد مثلاً ۶۰
گیگ و به بالا
محاسبات انجام بدید و کارتونو انجام بدید
بدونید که سیستمتون دچار مشکلی مشکلی بشه
دست که اگه شما میخواستید مثلاً میگم
پانداس انجام بدید قطعاً دچار مشکل میشدید
خب
دیگه چی داریم ا یه دستور دیگه هم داریم باحاله مثلاً من
رو این میخوام یونیکاشو ببینم چیه
این یونیکاشه ان و وا کل یونیکاشه
دیگه چی داریم مثلاً یونیک بتونیم روش بزنیم نداریم دیگه
خیلی خب بریم بیایم ادامهشو جلسه بعدی صحبت کنیم فعلاً خداحافظ ‏S
پرسشهای رایج
پاسخ کوتاه و مستقیم به پرسشهایی که معمولاً هنگام یادگیری این موضوع مطرح میشوند.
پولار به دلیل عملکرد بالا در خواندن دیتاستهای بزرگ و انجام محاسبات سریع، در مقایسه با پاندا، به عنوان یک گزینه بهتر برای پردازش دادههای حجیم معرفی میشود.
استریمینگ به پولارس امکان میدهد تا فایلهای بزرگتر از حافظه رم را پردازش کند و به صورت پیوسته محاسبات انجام دهد، که این امر به بهبود عملکرد و کاهش مصرف حافظه کمک میکند.
دستوراتی مانند یونیکا در پولارس برای تحلیل دادهها استفاده میشوند و به کاربران امکان میدهند تا دادهها را به صورت کارآمد و سریع تحلیل کنند.
آخرین بهروزرسانی محتوای متنی:
آیا با کندی سرعت Pandas در پردازش فایلهای سنگین مشکل دارید؟ در این دوره جامع، به سراغ کتابخانه قدرتمند Polars میرویم؛ ابزاری که بازی تحلیل داده در پایتون را تغییر داده است! 🔥 در این دوره آموزشی، ما از مفاهیم اولیه شروع میکنیم و تا مباحث پیشرفته مثل استفاده از GPU، کار با دیتابیس و پردازش بیش از یک میلیارد رکورد داده پیش میرویم. اگر دیتا ساینتیست، تحلیلگر داده یا برنامهنویس پایتون هستید، یادگیری Polars برای شما ضروری است. آنچه در این دوره یاد خواهید گرفت: آشنایی کامل با DataFrames و توابع Polars مقایسه عملی سرعت Polars و Pandas (تست ۱ میلیارد رکورد) نحوه استفاده از GPU برای افزایش سرعت پردازش اتصال به دیتابیس و مصورسازی دادهها (Visualization) انجام ۲ پروژه کامل و کاربردی 📌 سرفصلها : کار با دیتا فریمها خواندن و کار با فایلها انتخاب و تغییر ستونها توابع تجمیعی فیلتر کردن دادهها گروهبندی و مرتبسازی مدیریت دادههای گمشده ادغام و اتصال دادهها اتصال به پایگاه داده مصورسازی دادهها توابع پنجرهای استفاده از GPU در Polars تست پردازش ۱+ میلیارد رکورد! مقایسه Pandas و Polars در دادههای حجیم Polars و یادگیری ماشین پروژه اول پروژه دوم 🔔 فراموش نکنید که کانال را سابسکرایب کنید و نظرات خودتون رو درباره سرعت Polars برامون بنویسید! #python #polars #datascience #pandas #bigdata #پایتون #تحلیل_داده #دیتا_ساینس #برنامه_نویسی