شرح دوره 2022 SQL Server Performance Tuning and Optimization
این دوره به گونه ای طراحی شده است که میزان مناسبی از دانش و ا تکنیک های تنظیم و بهینه سازی عملی را ارائه دهد که می توانید در تولید از آن استفاده کنید. این دوره پوشش جامعی از معماری SQL Server، استراتژیهای فهرستسازی و آمار، بهینهسازی عملیات ثبت تراکنشها، پیکربندی فایلهای tempdb و داده، سطوح تراکنشها و جداسازی، و قفل و مسدود کردن را ارائه میدهد. این دوره همچنین نحوه ایجاد خطوط پایه و معیار عملکرد SQL Server، نحوه تجزیه و تحلیل حجم کار و کشف مشکلات عملکرد و نحوه رفع آنها را آموزش می دهد. این دوره تمرکز ویژه ای بر SQL Server I/O، استفاده از CPU، استفاده از حافظه، طرح های پرس و جو، اجرای دستورات، شناسایی پارامترها و کد رویه ای، بن بست، کش برنامه، آمار انتظار و لچ، رویدادهای توسعه یافته، DMV و PerfMon دارد.
مخاطبان دوره :
مخاطبان اصلی این دوره افرادی هستند که پایگاههای داده داخلی و Azure SQL Server را توسعه، مدیریت و نگهداری میکنند و مسئول عملکرد بهینه نمونههای SQL Server هستند که توسعه یا مدیریت میکنند. این افراد همچنین درخواست هایی را در برابر داده ها می نویسند و باید از اجرای بهینه بارهای کاری اطمینان حاصل کنند.
این دوره هم SQL Server 2022 در محل (یا قبل از آن) و هم راه حل های مبتنی بر ابر (پایگاه های داده SQL Azure یا نمونه های مدیریت شده Azure) را هدف قرار می دهد. در دوره ای مانند این، موضوعات مختلفی مورد بحث قرار می گیرد، بنابراین ما این آموزش را با بحث مختصر در مورد موضوعات مختلف شروع می کنیم و نشان می دهیم که چگونه آنها با یکدیگر ارتباط دارند.
مدت دوره :
24 ساعت
In a course like this many different topics are discussed, so we start this training by briefly discussing the different topics and show how they relate to each other.
CPU and process scheduling
Sometimes people wonder if their SQL Server needs more CPU power. In this module we see how SQL Server schedules queries to workers for running them on a thread. A very important concept is looking into wait statistics, where we basically learn to ask SQL Server what it’s waiting upon.
- Threads and workers
- Worker thread binding
- Wait statistics analysis
- LAB: Analyzing wait statistics
IO and database structure
SQL Server stores its data on disk. In this module we discuss how data for regular data structures is stored, how the data can be spread over multiple disks and we discuss common performance pitfalls people encounter when they setup a SQL Server database.
- Databases in SQL Server
- Working with Data files
- Using and configuring Filegroups
- Log files
- LAB: Working with databases
Memory use
SQL Server cannot run queries on data stored on disk. It must first be loaded into main memory before it can be used. But how does SQL Server decide how long to cache data in memory, how can we inspect what data is cached right now, and what else besides data is kept in memory? These are the questions we answer in this module.
- Dynamic memory allocation
- Memory consumers
- Monitoring memory consumption
- LAB: Monitoring memory usage
Data types and tables
When developing the tables within a database we have to take care as well. In this module we discuss the impact that data types have on the size of a row, and bigger rows often result in slower queries. Another thing to worry about are the implicit data type conversions, which can cause SQL Server a lot of extra work, or can even result in SQL Server not being able to use some indexes.
- Importance of data type selection
- Storage cost
- Variable versus fixed length
- Implicit and explicit data type conversions
- LAB: Optimizing data types and tables
Indexes and statistics
This is the most important tool to improve SQL Server performance. We first discuss for each of the three basic storage options (heaps, clustered indexes and non-clustered indexes) how the data is stored and the influence of this on SELECT, INSERT, UPDATE and DELETE statements. Then we switch over to how statistics are used by the SQL Server Query Optimizer to decide which index to use when queries are being executed by SQL Server.
- Heaps
- Clustered and non-clustered indexes
- Monitoring allocation units
- Creating filtered indexes
- Indexes and statistics
- Reading statistics
- How the Query Optimizer uses statistics
- Using filtered statistics
- Working with indexed views
- Configuring delayed durability
- LAB: Working with clustered, non-clustered indexes and statistics
Query execution and query plans
Having an index is one thing, using the index is another story: how can we see which indexes SQL Server uses and how it’s using them? Execution plans are the answer to that question. We discuss in this part of the training how to get execution plans and how to analyze them. This is done using the traditional techniques we already have in SQL Server for many years as well as with the Query Store, which is new since SQL Server 2016 and is also available in Azure SQL Databases.
- Execution context
- Execution plans
- Plan cache and plan reuse
- Plan recompilation
- Parameterization
- Query store
- Adaptive Query Processing
- Automatic regressed plan detection
- LAB: Analyzing query plans
Index and query tuning
This module combines the skills we gained in the two previous modules. We see how changing queries, indexes and constraints has an influence on the execution plan ad performance of a query.
- Understanding the query plan operators
- How to measure query cost
- Common query tuning techniques
- LAB: Index and query tuning
Improved cardinality estimator
The SQL Server cardinality estimator uses statistics to make an estimate of the number of rows returned by operations such as joins and filters. These estimates are then used by the query optimizer to build execution plans. Microsoft changed in the 2014 and 2016 version of SQL Server how these estimates are computed. In this module we dive into these changes, discuss the overall benefit of the new estimates, but also discuss how you can keep on using the old ones if they did a better job for certain queries.
- Cardinality estimates
- Improvements in the new cardinality estimator
- Which estimator is used?
- Discovering slower queries with the Query Store
- LAB: Monitoring cardinality estimator changes
Concurrency and transactions
A database must store data in a consistent way. But if everybody can change all the data in parallel, we lose transactional consistency. This module discuss how SQL Server provides us with some options for allowing sessions in parallel to access the same data yet keeping this data transactional consistent.
- Transactions
- Optimistic versus pessimistic concurrency control
- Locking and lock types
- Isolation levels
- Monitoring locks
- Deadlocks
- LAB: Working with transactions and transaction isolation levels
Monitoring SQL Server
To apply performance optimizations in practice we must first monitor the SQL Server to identify the types of performance problems we have. But ideally we start monitor the SQL Server before problems arrive. This way we establish a baseline against which we can compare the monitored values when things start to go wrong. In this module we discuss different types of monitoring tools in SQL Server.
- Performance monitor
- Profiler
- Configuring Extended Event sessions
- LAB: Configuring Extended Events
Working with ColumnStore indexes
The main usage of ColumnStore indexes is to improve query performance for data warehouses and data marts workloads. This chapter describes how ColumnStore indexes store data in a columnar format instead of the row-based storage that is used by ‘classic’ tables and indexes in SQL Server. Then you will learn how to create columnstore indexes and strategies for using them in On-Premise and Azure SQL Databases.
- Introduction to columnar data storage
- Introduction to Rowgroups and segments
- Creating Clustered ColumnStore Indexes
- Creating NonClustered ColumnStore Indexes
- Fragmentation in ColumnStore indexes
- Real-time Operational Analytics
- LAB: Working with columnstore indexes
Working with In-Memory OLTP
In-Memory OLTP can significantly improve the performance of transaction processing, data ingestion and data load, and transient data scenarios in SQL Server on-premise and Azure SQL Databases. In-Memory OLTP improves performance of transaction processing tables by removing lock and latch contention between concurrently executing transactions.
- Planning for In-Memory tables
- Creating In-Memory tables
- In-Memory tables and indexes
- Working with Native Compiled Stored procedure
دوران آکادمی زیر مجموعه گروه دوران، مجری برگزاری دوره T-SQL در قالب آموزش بانک اطلاعاتی به صورت آموزش آنلاین و حضوری با بهره گیری از لابراتور آنلاین اختصاصی بهمراه گواهی معتبر ارائه میشود.
درخواست مشاوره
برای کسب اطلاعات بیشتر درباره این دوره درخواست مشاوره خود را ارسال کنید و یا با ما در تماس باشید.
درخواست مشاورهدوره های مرتبط
دوره Microsoft SQL Server Analysis Services
شرح دوره : هنگام تجزیه و تحلیل داده های کسب و کار، دو چالش به طور مکرر ظاهر می شود:…
دوره آموزش SQL PLSQL Fundamental
شرح دوره SQL PLSQL Fundamental
در دوره SQL PLSQL Fundamental دانشجویان قادر خواهند بود توسط زبان SQL و PL/SQL در پایگاه داده اوراکل را شناخته و از آن استفاده کنند.
دوره آموزش Oracle PLSQL Program Units
شرح دوره Oracle PLSQL Program Units
دانشجویان پس از طی دوره Oracle PLSQL Program Units شما قادر خواهند بود توسط زبان PL/SQL در پایگاه داده اوراکل زیر برناهه هایی از قبیل procedure ، function ، trigger ،package و غیره را ایجاد کنند و با امکانات اوراکل که مربوط به بهبود کارایی پایگاه داده و بهبود عمکرد پرس و جوها میباشد از جمله partitioning، indexing ،and summary datamaterialized views و performance query آشنا خواهند شد.
دوره آموزش Oracle Data Mining Techniques
شرح دوره Oracle Data Mining Techniques
داده کاوی یکی از مطرحترین روشهای تحلیل داده میباشد که امروزه کاربردهای متعددی را در کسب و کارهای مختلف پیدا کرده است. ابزارها و نرم افزارهای متعددی برای داده کاوی وجود دارد. شرکت Oracle امکانات مختلفی را در خود پایگاه داده Oracle برای داده کاوی ارایه میدهد و Feature را با عنوان Oracle Data Miner در پایگاه داده Oracle معرفی نموده است. مفاهیم داده کاوی و معرفی و آموزش Oracle Data Miner موضوع دوره Oracle Data Mining Techniques میباشد.
نظرات
4,000,000 هزار تومان