🔔 با توجه به بهبود نسبی اینترنت، آمادهسازی دورهها آغاز شده است. به دلیل تداوم برخی اختلالات، بارگذاری دورهها ممکن است با کمی تأخیر انجام شود. مدت اشتراکهای تهیهشده محفوظ است.
لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش مقدمهای بر تیونینگ SQL برای عملکرد بالاتر
- آخرین آپدیت
دانلود Introduction to Tuning SQL for Higher Performance
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
بهینهسازی کوئریهای SQL: افزایش سرعت پایگاه داده
آیا اجرای کوئریهای SQL شما زمان زیادی میبرد؟ آیا به دنبال درک چگونگی تصمیمگیری پایگاه داده برای بازیابی و فیلتر کردن دادهها هستید؟ اگر با نوشتن SQL آشنا هستید اما میخواهید کوئریهای کارآمدتری بنویسید، این دوره برای شماست. این دوره اصول اولیه عملکرد SQL و تکنیکهای بهینهسازی را توضیح میدهد.
تحلیل کوئری و بررسی عمیق اجرای کوئری
برای تنظیم کوئریها، درک برنامه کوئری پایگاه داده بسیار مفید است. در این دوره با نحوه کار برنامه سازهای کوئری آشنا میشوید و یاد میگیرید چگونه انواع مختلف گرههای برنامه کوئری عملیات اصلی مانند بازیابی دادهها، پیوستن جداول و فیلتر کردن نتایج را پیادهسازی میکنند. با یادگیری خواندن برنامههای اجرایی، مقایسه محاسبات هزینه و ارزیابی پیادهسازیهای جایگزین برای کوئریهای خود، میتوانید عملکرد آنها را بهبود بخشید.
تکنیکهای پیشرفته بهینهسازی عملکرد
این دوره استراتژیهای مختلف بهینهسازی را بررسی میکند:
تکنیکهای نمایهگذاری (Indexing) شامل نمایههای پوششی، جستجوی تمام متن و نمایههای عبارتی.
بررسی الگوریتمهای پیوستن (Join) با سناریوهای واقعی که نشان میدهد هر نوع در چه مواقعی بهینه است.
بررسی گزینههای بهینهسازی زیرکوئریهای وابسته (Correlated Subqueries) و توابع پنجره پیچیده.
بررسی زمان استفاده از نماهای مواد شده (Materialized Views) و عبارتهای جدول مشترک (CTEs) برای بهبود عملکرد کوئری.
یادگیری تکنیکهای مختلف تطبیق الگو از جمله عبارات منظم و استراتژیهای جستجوی تمام متن.
آشنایی با پیامدهای عملکردی انواع مختلف نمایههای GiST، GIN و SP-GiST.
پیادهسازی راهکارهای SQL در سطح تولید
سناریوهای سطح سازمانی را بررسی کنید، از جمله:
پیادهسازی استراتژیهای پارتیشنبندی (Partitioning) کارآمد برای جداول بزرگ.
درک تکنیکهای بهینهسازی سری زمانی (Time-Series) برای دادههای IoT.
پیادهسازی جستجوی تمام متن در برنامههای در مقیاس بزرگ.
نظارت و تنظیم عملکرد
یاد بگیرید چگونه از ابزارها و تکنیکهای بهینهسازی مداوم عملکرد استفاده کنید:
استفاده پیشرفته از نمایههای pg_stat برای نظارت بر عملکرد.
درک و تنظیم autovacuum برای عملکرد بهینه.
حفظ آمار در جداول.
در طول دوره، با مجموعه دادههایی شامل یک پایگاه داده فروش اولیه و همچنین یک سیستم سنسور خودروی IoT سری زمانی که روزانه میلیونها داده تولید میکند، کار خواهید کرد. تمرینهای عملی فرصتی برای بهکارگیری دانش نظری در سناریوهای کاربردی فراهم میکنند.
در پایان این دوره، مهارتهای لازم برای تحلیل کوئریهای پیچیده SQL و دانش لازم برای تصمیمگیری آگاهانه در مورد بدهبستانهای عملکرد پایگاه داده در سیستمهای تولیدی را کسب خواهید کرد.
پیش نیازها: تجربه کار با دستورات SELECT در SQL.
نکته: این دوره قبلاً با عنوان "Hands-On SQL for Performance Tuning" ارائه میشد.
سرفصل ها و درس ها
مقدمه
Introduction
به SQL با عملکرد بالا عملی خوش آمدید
Welcome to Hands-on High Performance SQL
مواردی که باید برای گذراندن این دوره بدانید
Things You Should Know to Take this Course
ایجاد پایگاه داده PostgreSQL شما برای SQL عملی
Creating Your PostgreSQL Database for Hands-On SQL
نصب PostgreSQL
Installing PostgreSQL
کار با pgAdmin
Working with pgAdmin
ایجاد پایگاه داده و جداول با pgAdmin
Creating a Database and Tables with pgAdmin
تمرین عملی ۱
Hands-On Exercise 1
راه حل تمرین عملی ۱
Hands-On Exercise 1 Solution
نحوه ساخت طرح پرس و جو
How to Build a Query Plan
ساخت طرح پرس و جو پایگاه داده
Building a Database Query Plan
تولید طرح پرس و جو PostgreSQL
PostgreSQL Query Plan Generation
پارامترهای طرح پرس و جو PostgreSQL
PostgreSQL Query Plan Builder Parameters
تجزیه و تحلیل عملکرد پرس و جو
Analyzing Query Performance
مبانی EXPLAIN و EXPLAIN ANALYZE
Basics of EXPLAIN and EXPLAIN ANALYZE
تمرین عملی ۲
Hands-On Exercise 2
راه حل تمرین عملی ۲
Hands-On Exercise 2 Solution
تجزیه و تحلیل بندهای Aggregate، GROUP BY و HAVING
Analyzing Aggregate, GROUP BY, and HAVING clauses
تمرین عملی ۳
Hands-On Exercise 3
راه حل تمرین عملی ۳
Hands-On Exercise 3 Solution
بهبود عملکرد پرس و جو با ایندکسگذاری
Improving Query Performance with Indexing
انواع ایندکس PostgreSQL
PostgreSQL Index Types
ایجاد ایندکس فروش
Creating Sales Indexes
EXPLAIN با ایندکسها روی ستونهای عددی
EXPLAIN with Indexes on Numeric Columns
EXPLAIN با ایندکسها روی ستونهای متنی کوتاه
EXPLAIN with Indexes on Short Text Columns
EXPLAIN با ایندکسها و جوینها
EXPLAIN with Indexes and Joins
تمرین عملی ۴
Hands-on Exercise 4
راه حل تمرین عملی ۴
Hands-on Exercise 4 Solution
جوینها، زیرپرس و جوها و عبارات جدول مشترک (CTE)
Joins, Subqueries, and Common Table Expressions (CTEs)
انواع جوینها
Types of Joins
EXPLAIN جوینهای پایه
EXPLAIN Basic Joins
اجرای جوین پایه
Executing Basic Join
جوینهای Hash، Merge و Nested Loop
Hash, Merge, and Nested Loop Joins
تمرین عملی ۵
Hands-on Exercise 5
راه حل تمرین عملی ۵
Hands-on Exercise 5 Solution
مروری بر زیرپرس و جوها
Overview of Subqueries
زیرپرس برای فیلترینگ پایه
Subquery for Basic Filtering
زیرپرس برای فیلترینگ Aggregate
Subquery for Filtering Aggregate
تمرین عملی ۶
Hands-on Exercise 6
راه حل تمرین عملی ۶
Hands-on Exercise 6 Solution
عبارات جدول مشترک پایه
Basic Common Table Expressions
عبارات جدول مشترک برای تجزیه و تحلیل منطقه فروش
Common Table Expressions for Sales Region Analysis
تمرین عملی ۷
Hands-on Exercise 7
راه حل تمرین عملی ۷
Hands-on Exercise 7 Solution
مقایسه جوینها، زیرپرس و عبارات جدول مشترک
Comparing Joins, Subqueries, and Common Table Exrpessions
پیادهسازیهای متعدد منطق کسب و کار یکسان
Multiple Implementationf of the Same Business Logic
استفاده از AI برای تبدیل پرس و جوها
Using AI to Transform Queries
تطابق و جستجوی الگوهای متنی کارآمد
Efficient Text Pattern Matching and Searching
استفاده کارآمد از عملگر LIKE
Efficient Use of the LIKE Operator
تمرین عملی ۸
Hands-on Exercise 8
راه حل تمرین عملی ۸
Hands-on Exercise 8 Solution
روشهای جستجوی متن در PostgreSQL
PostgreSQL Text Search Methods
مثال جستجوی Full Text با استفاده از TSVector و TSQuery
Example of Full Text Querying using TSVector and TSQuery
مثال جستجوی شباهت با GIN Index
Example GIN Index Similarity Searching
پارتیشنبندی جداول بزرگ
Partitioning Large Tables
مروری بر جداول پارتیشنبندی شده
Overview of Partitioned Tables
ایجاد جداول پارتیشنبندی شده
Creating Partitioned Tables
پرس و جو از جداول پارتیشنبندی شده و غیر پارتیشنبندی شده
Querying a Partitioned and Non-Partitioned Tables
تمرین عملی ۹
Hands-on Exercise 9
راه حل تمرین عملی ۹
Hands-on Exercise 9 Solution
آمار پایگاه داده و عملکرد پرس و جو
Database Statistics and Query Performance
آمار دادهها و اجرای طرح پرس و جو
Data Statistics and Query Plan Execution
آمار و بهینهسازی پرس و جو
Statistics and Query Optimization
تجزیه و تحلیل عملکرد در سطح Schema
Analyzing Schema Level Performance
ANALYZE و VACUUM
ANALYZE and VACUUM
بهروزرسانی آمار و بازیابی Tuples مرده
Updating Statistics and Reclaiming Dead Tuples
تمرین عملی ۱۰
Hands-on Exercise 10
راه حل تمرین عملی ۱۰
Hands-on Exercise 10 Solution
نتیجهگیری
Conclusion
یادگیری بیشتر در مورد SQL با عملکرد بالا
Learning More about High Performance SQL
نمایش نظرات