بهینه‌سازی کوئری‌های SQL - آزمون‌های عملی - آخرین آپدیت

دانلود SQL Query Optimisation - Practice Tests

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد. این دوره صرفا آزمون یا تمرین می باشد و ویدیو ندارد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره: کوئری‌های کند را اصلاح کنید و با ۳۰۰ سوال تمرینی سناریو-محور، در مصاحبه‌های تخصصی عملکرد (Performance) بدرخشید. تشخیص کوئری‌های کند با استفاده از EXPLAIN ANALYZE: خواندن گره‌های برنامه (Plan Nodes)، شناسایی خطاهای تعداد ردیف‌ها (Cardinality)، یافتن گره‌های کند و تفسیر داده‌های بافر و زمان‌بندی. شناسایی و رفع رایج‌ترین ضد-الگوهای (Anti-patterns) SQL: استفاده از Wildcard در ابتدای عبارت، تبدیل‌های نوع داده ضمنی (Implicit Type Casts)، استفاده از توابع روی ستون‌های ایندکس شده و صفحه‌بندی با OFFSET. انتخاب استراتژی مناسب برای Join، متدهای تجمیع (Aggregation) و نوع ایندکس برای هر کوئری و درک دلیل انتخاب یک پلن خاص توسط Planner. بازنویسی کوئری‌های ناکارآمد با استفاده از Window Functions، CTEها، صفحه‌بندی مبتنی بر Cursor، تجمیع شرطی و الگوهای Semi-join برای مقیاس‌پذیری در صدها میلیون رکورد. پیش نیازها: شما باید بتوانید کوئری‌های پایه SELECT را با استفاده از WHERE، JOIN، GROUP BY و ORDER BY بنویسید. هیچ تجربه قبلی در بهینه‌سازی کوئری یا EXPLAIN نیاز نیست.

کوئری‌های کند باعث ضرر مالی، شکست در مصاحبه‌های شغلی و رد شدن در بررسی‌های کد (Code Review) می‌شوند. این دوره ۳۰۰ سوال تمرینی را ارائه می‌دهد که بر اساس مهارت‌های عملکرد SQL طراحی شده‌اند؛ مهارت‌هایی که در نقش‌های مهندسی ارشد و حوادث محیط Production بسیار حیاتی هستند.

شش آزمون این دوره، تمام لایه‌های بهینه‌سازی را از مفاهیم پایه تا تحلیل تخصصی پلن‌ها پوشش می‌دهند:

آزمون ۱ نحوه اجرای واقعی کوئری‌ها توسط دیتابیس را بررسی می‌کند: Parser، Planner و موتور اجرا. شما مدل هزینه (Cost Model)، تاثیر آمارها در انتخاب پلن و دلیل تغییر زمان اجرای یک کوئری از ۲ میلی‌ثانیه به ۲ دقیقه را درک خواهید کرد.

آزمون ۲ به بررسی ایندکس‌ها می‌پردازد: B-tree، GIN، Partial، Composite، Expression و Covering Indexes. یاد می‌گیرید کدام نوع ایندکس برای هر الگوی کوئری مناسب است و چه اشتباهاتی باعث نادیده گرفته شدن ایندکس‌ها توسط Planner می‌شود.

آزمون ۳ بهینه‌سازی Joinها را پوشش می‌دهد: Nested loop، Hash join، Merge join، Semi-joins، Anti-joins، LATERAL و ترتیب اتصال جداول متعدد. شما خواهید آموخت هر استراتژی چه زمانی برنده است و چگونه مواردی که باعث فاجعه Fan-out در محیط عملیاتی می‌شوند را شناسایی کنید.

آزمون ۴ تجمیع‌ها، Window Functions و الگوهای Subquery را بررسی می‌کند: مقایسه HashAggregate در مقابل GroupAggregate، شمارش DISTINCT در مقیاس بالا، ROW_NUMBER در مقابل DISTINCT ON، بازنویسی Subqueryهای مرتبط و رفتار CTE Inlining در PostgreSQL 12 و نسخه‌های جدیدتر.

آزمون ۵ ضد-الگوها و بازنویسی‌ها را پوشش می‌دهد: LIKE با Wildcard ابتدایی، تبدیل‌های نوع داده ضمنی، توابع روی ستون‌های ایندکس شده، صفحه‌بندی OFFSET، اشتباهات مقایسه NULL، عملکرد DELETEهای حجیم و کوئری‌های N+1. هر سوال یک کوئری کند واقعی را ارائه داده و از شما می‌خواهد علت و راه حل را بیابید.

آزمون ۶ خواندن و تفسیر خروجی EXPLAIN ANALYZE است. یاد می‌گیرید گره‌های پلن را از پایین به بالا بخوانید، حجم کار کل گره را از حلقه‌ها و زمان واقعی محاسبه کنید، نشت داده‌ها به دیسک (Spills to disk) را تشخیص دهید، خطاهای تعداد ردیف‌ها را شناسایی کرده و تفاوت انتظار برای Lock را از گلوگاه‌های I/O تشخیص دهید.

تمامی سوالات سناریو-محور هستند: یک موقعیت واقعی در محیط Production، چهار پاسخ احتمالی و یک توضیح مفصل که فراتر از پاسخ صحیح است تا دلیل نادرست بودن سایر گزینه‌ها را شرح دهد.


تمرین ها و آزمونها

آزمون‌های عملی Practice Tests

  • پارسر، پلنر و موتور اجرا Parser, Planner & Execution Engine

  • ایندکس‌ها: انواع، انتخاب و اشتباهات رایج Indexes: Types, Selection & Common Mistakes

  • بهینه‌سازی Join و استراتژی‌های اجرا Join Optimisation & Execution Strategies

  • تجمیع‌ها، Window Functions و الگوهای Subquery Aggregations, Window Functions & Subquery Patterns

  • ضد-الگوها و بازنویسی کوئری‌ها Anti-patterns & Rewrites

  • خواندن و تفسیر پلن‌های اجرای کوئری Reading & Interpreting Query Execution Plans

نمایش نظرات

بهینه‌سازی کوئری‌های SQL - آزمون‌های عملی
جزییات دوره
آزمون یا تمرین
300
(آخرین آپدیت)
7
از 5
ندارد
ندارد
ندارد
Tech Coach
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Tech Coach Tech Coach

مهندس و مربی