SQL Server Performance Essentials - Full Course

Поделиться
HTML-код
  • Опубликовано: 31 июл 2024
  • In this course, Essentials of SQL Server Performance For Every Developer, you will see how to diagnose what is happening with a slow running SQL statement and what strategies are available to make these statements run faster.
    By the end of this course, you as an application developer will have the tools you need to troubleshoot performance problems you may encounter when using SQL Server.
    💻 Code, links, Dynamic Views(DMVs), and Database Backups: github.com/iCodeMechanic/Esse...
    ✏️ Course from Rajan Arora. Check out his channel: / icodemechanic
    ⭐️ Course Contents ⭐️
    ⌨️ (0:00:00) Introduction
    Getting Started
    ⌨️ (0:00:53) 1.1 Course Introduction
    ⌨️ (0:04:07) 1.2 Why Developers should Understand SQL Performance
    ⌨️ (0:06:20) 1.3 Tools you Need
    ⌨️ (0:09:30) 1.4 Restore the Sample Database
    ⌨️ (0:12:04) 1.5 Table Concept
    ⌨️ (0:17:12) 1.6 Index Concept
    ⌨️ (0:20:32) 1.7 Summary
    Analyzing SQL Statements for Performance
    ⌨️ (0:22:12) 2.1 Introduction
    ⌨️ (0:24:55) 2.2 Understanding How SQL Server Will Execute a SQL Statement
    ⌨️ (0:29:33) 2.3 Reading and Interpreting an Execution Plan for a SQL Statement
    ⌨️ (0:39:44) 2.4 Getting Execution Statistics for a SQL Statement
    ⌨️ (0:45:29) 2.5 Improving Statement Performance by Adding an Index
    ⌨️ (0:52:11) 2.6 Rewriting SQL Statements for Improved Performance
    ⌨️ (0:58:32) 2.7 Common Execution Plan Operations
    ⌨️ (1:03:50) 2.8 Summary
    Building Indexes
    ⌨️ (1:07:30) 3.1 Introduction
    ⌨️ (1:09:09) 3.2 Index Terminology Refresher
    ⌨️ (1:12:11) 3.3 What Should I Index in My Database?
    ⌨️ (1:16:16) 3.4 Why Index Column Order Matters
    ⌨️ (1:23:39) 3.5 Index Selectivity Explained
    ⌨️ (1:36:23) 3.6 LIKE Clauses and Index Selectivity
    ⌨️ (1:40:27) 3.7 How Functions in the WHERE Clause Affect Indexes
    ⌨️ (1:46:10) 3.8 Include Columns and Covering Indexes
    ⌨️ (1:50:40) 3.9 Over-indexing
    ⌨️ (1:54:40) 3.10 Interpreting SQL Server Index Recommendations
    ⌨️ (1:57:38) 3.11 Summary
    Finding Bottlenecks in SQL Server Performance
    ⌨️ (2:03:19) 4.1 Introduction
    ⌨️ (2:08:36) 4.2 Getting Information About SQL Server Sessions and Resource Usage
    ⌨️ (2:12:02) 4.3 Finding What SQL Statements are Currently Executing
    ⌨️ (2:18:47) 4.4 Finding the Slowest, Most Expensive SQL Statements
    ⌨️ (2:24:13) 4.5 Getting SQL Server's Recommendations on Missing Indexes
    ⌨️ (2:29:38) 4.6 Finding Indexes That are Not Being Used
    ⌨️ (2:34:13) 4.7 Summary
    Capturing Trace Logs of Application from SQL Server
    ⌨️ (2:35:55) 5.1 Introduction
    ⌨️ (2:42:03) 5.2 Setting up a SQL Profiler Trace
    ⌨️ (2:49:59) 5.3 Running a SQL Profiler Trace
    ⌨️ (2:55:22) 5.4 Running a Trace as a Server Side Trace
    ⌨️ (3:03:19) 5.5 Introduction to Using Extended Events for SQL Tracing
    ⌨️ (3:06:58) 5.6 Setting up an Extended Events Trace Session
    ⌨️ (3:16:50) 5.7 Running and Configuring the Display Settings for an Extended Events Trace
    ⌨️ (3:20:38) 5.8 Analyzing Extended Events Trace Data
    ⌨️ (3:27:10) 5.9 Using Extended Events in SQL Azure
    ⌨️ (3:31:36) 5.10 Summary
    Apply Common Practices for Better Performance
    ⌨️ (3:35:47) 6.1 Introduction
    ⌨️ (3:37:17) 6.2 Use Parameterized SQL
    ⌨️ (3:42:59) 6.3 Are Stored Procedures Faster Than SQL in Application Code?
    ⌨️ (3:43:04) 6.4 Commit Behavior and Performance
    ⌨️ (3:50:16) 6.5 Object Relational Mappers Just Generate SQL
    ⌨️ (3:53:19) 6.6 Solving the N+1 Selects Problem
    ⌨️ (3:59:56) 6.7 Summary
    🎉 Thanks to our Champion and Sponsor supporters:
    👾 Raymond Odero
    👾 Agustín Kussrow
    👾 aldo ferretti
    👾 Otis Morgan
    👾 DeezMaster
    --
    Learn to code for free and get a developer job: www.freecodecamp.org
    Read hundreds of articles on programming: freecodecamp.org/news

Комментарии • 145

  • @ICodeMechanic
    @ICodeMechanic 2 года назад +76

    Hey! this is Rajan Arora. Thank you so much Beau for posting my tutorial. I hope this will help all the viewers to tune their SQL Statements in MS SQL Server. I hope we have more collaboration like this in the future!

    • @abdulwahab-rw1yq
      @abdulwahab-rw1yq 2 года назад +2

      Thanks Rajan.. this is really one of the best vidoes i have watched on peformance tuning

    • @ICodeMechanic
      @ICodeMechanic 2 года назад

      @@abdulwahab-rw1yq Thanks for the feedback

    • @ahmad-murery
      @ahmad-murery 2 года назад +3

      That was not just a good refresher to me but I also learned some new things,
      it's 4 hours long but definitely worth it,
      Well done Rajan, and thanks Free Code Camp for sharing,

    • @DivakarRaj
      @DivakarRaj 2 года назад +2

      Could you please provide link where the DM queries can be accessed from

    • @dev.maazqureshi
      @dev.maazqureshi 2 года назад +1

      Thanks, Rajan This course is just excellent.. love it!

  • @rajendrawarrier7274
    @rajendrawarrier7274 5 месяцев назад +2

    Very elegant presentation with crisp and clear explanations. Thank you for the amazing effort. This helped me immensely and so would it have been for several others there I bet!

  • @mjKeszely
    @mjKeszely Год назад +4

    Exactly what I need. Thank you, Mr. Rajan and FCC team.

  • @Norman_Fleming
    @Norman_Fleming 2 года назад +17

    As someone that has been writing code for 40 years I totally agree with your initial premise. If you are writing the SQL you need to understand how it operates and the costs/tradeoffs you may be making. Your video content was very well organized and presented.

    • @ICodeMechanic
      @ICodeMechanic 2 года назад +1

      Thank you for the feedback

    • @parthasarathiramachandran8189
      @parthasarathiramachandran8189 Год назад

      Timstamps for various topics covered..
      10:08 Spooling: duplicate aggregation: 18:21 Hashmatch: unsorted data 23:54 KeyLookup: missing data
      ruclips.net/video/t2R0-xcKw44/видео.html

  • @anandvardhan2514
    @anandvardhan2514 2 года назад +3

    This is wonderful course. I have been waiting to learn these techniques. Thank you so much for making it.

  • @TheFunVampire
    @TheFunVampire Год назад +3

    Outstanding video and resource, thank you so much for making this!

  • @universecode1101
    @universecode1101 2 года назад +18

    I am a self-taught developer 😍 who after years of Js and React, and on my RUclips channel 🧑🏻‍💻 I create projects with React and tailwind or Html and Css… right now I’m learning Python and as you well know, SQL is part of his world. This video comes at the right time 😎

  • @chrisgalvez
    @chrisgalvez Год назад

    I'm glad have found this jewel. Thank you very much.

  • @kwizerafrank4978
    @kwizerafrank4978 2 года назад +4

    This was what i was looking for!

  • @ayomidea-s
    @ayomidea-s 2 года назад +6

    You guys are the best!

  • @rogeriocastellano449
    @rogeriocastellano449 Год назад

    Congratulations, very comprehensive course.

  • @shubhamkhinchi2401
    @shubhamkhinchi2401 14 дней назад

    Thank you so much Rajan for what i exactly looking for .
    💯

  • @alekkerm4524
    @alekkerm4524 2 года назад +2

    Great course, exactly what I needed!

  • @SandeepSingh-nn8lu
    @SandeepSingh-nn8lu 2 месяца назад

    Thanks Rajan - great course!

  • @noddychoi
    @noddychoi 2 года назад +7

    This tutorial is absolutely great and helpful !!!!!.
    Hope to see another vid about MySQL and Postgre !!

    • @ICodeMechanic
      @ICodeMechanic 2 года назад

      Thanks for the feedback

    • @alexgeld7173
      @alexgeld7173 Год назад

      @@ICodeMechanic So, can I do it with Azure DataStudio on a Mac?

  • @north-eastblue7326
    @north-eastblue7326 2 года назад +10

    Thank you so much for this course, exactly what I needed.🤩

  • @P5toraskar1986
    @P5toraskar1986 10 месяцев назад

    Thank you so much for very imp this and if you have any more like this then please upload it.

  • @ArunKumar-tx1re
    @ArunKumar-tx1re 2 года назад +1

    Wow great.this is what I was expecting.thank you so much

  • @shivaganga9148
    @shivaganga9148 11 месяцев назад

    Awesome Rajan ji it is a great one very easy explanation

  • @dark_joeha2k3r55
    @dark_joeha2k3r55 2 месяца назад

    great tutorial. Thank you very much!

  • @dhatsy2k
    @dhatsy2k Год назад

    Wonderful.. thank you so much 🙏

  • @zusm
    @zusm 2 года назад +4

    I coincidentally just started my database course yesterday

  • @sujaykha
    @sujaykha 2 года назад +2

    u r channel deserves 500 million subs

  • @ashenupendra
    @ashenupendra 2 года назад +1

    Very useful, Thank you !!!

  • @NK-xw4uu
    @NK-xw4uu 2 года назад

    At 1:59:11, you have shown an index as lastname,firstname,degreeid. Will the 3rd sql query be able to utilize this index for degreeid?

  • @rubeenaparakkal6787
    @rubeenaparakkal6787 Год назад +2

    Hi..very useful video..Is there any training available for SQL performance tuning in dba or architect level?

  • @Santosh-bx2ub
    @Santosh-bx2ub Месяц назад

    Wonderful.

  • @lawb4144
    @lawb4144 2 года назад +4

    Great Course. Thank you so much.

  • @samuelmbah8789
    @samuelmbah8789 2 года назад +1

    I love you guys ❤️❤️❤️

  • @hassanraza6244
    @hassanraza6244 Год назад +3

    Kindly create a full course on SQL Server - DBA

  • @puhgete
    @puhgete Год назад

    I'm running SQL server 2017 and I don't get any results back when I run the query for 2.6. Also, if I compare the estimated execution plans for both queries I don't see an entry for "Top" with the query using "WHERE NOT EXISTS". For the first issue, I would guess that I could delete all records from the CourseEnrollments table where the CourseOfferingId is 56637 or 58317. With the second issue, I can only guess that my version of SQL is coming up with a different execution plan, and I have no control over that? UPDATE: Looking at the video again, I saw that there is an Index Seek on the CourseEnrollments table, so it looks like the database backup is missing that. I added the following index and my execution plan now matches what is shown in the video:
    USE [Students]
    GO
    CREATE NONCLUSTERED INDEX IX_CourseEnrollments_CourseOfferingID
    ON [dbo].[CourseEnrollments] ([CourseOfferingId])
    GO

  • @maheshd11
    @maheshd11 2 года назад +11

    Great job from you people.

  • @parthasarathiramachandran8189
    @parthasarathiramachandran8189 Год назад +1

    Timstamps for various topics covered..
    10:08 Spooling: duplicate aggregation: 18:21 Hashmatch: unsorted data 23:54 KeyLookup: missing data
    ruclips.net/video/t2R0-xcKw44/видео.html

  • @NK-xw4uu
    @NK-xw4uu 2 года назад +1

    Top class quality video

  • @michelchaghoury9629
    @michelchaghoury9629 2 года назад +36

    Great tutorial we need more SQL Server tutorials, please in the future make a SQL Server DBA, SSIS, SSRS tuts thank you

    • @surajkhot7530
      @surajkhot7530 2 года назад +1

      I also want

    • @JimRohn-u8c
      @JimRohn-u8c 2 года назад +1

      Especially SSIS because jobs everywhere still ask for it but I can’t find resources to learn it.

    • @ICodeMechanic
      @ICodeMechanic 2 года назад +1

      Thanks for the feedback and your suggested topics are noted

    • @lillyoko7838
      @lillyoko7838 2 года назад

      פבחבןבפןב

    • @lillyoko7838
      @lillyoko7838 2 года назад

      יי פיב

  • @sicious1
    @sicious1 2 года назад

    Thank you for sharing this good course.Can you share the ppt.

  • @94964yasumo
    @94964yasumo 2 года назад +5

    I executed the same query as the section 2.6 at (0:52:30) and got a different result that was an empty table. I wonder why ce.CourseOfferingId is specified as NULL. It supposes to have a not-null constraints. Would you please teach me?

    • @ebenbrittz535
      @ebenbrittz535 6 месяцев назад

      Yes, I also got this, and the SQL Execution plan is completely different to what is shown in the video.

  • @bezosphere
    @bezosphere 2 года назад +14

    Learning about Databases is so important because almost everything in this world contains a database

  • @amolmestry4255
    @amolmestry4255 2 года назад +1

    Great course, help me a lot👍

  • @riju1956
    @riju1956 2 года назад

    KYA BAAT HAI

  • @Ravi-tq7mv
    @Ravi-tq7mv 2 года назад

    Awesome

  • @soumadip_skyy_banerjee
    @soumadip_skyy_banerjee 2 года назад +2

    ❤️

  • @MayurManjal
    @MayurManjal 2 года назад

    Request you to please make a Video on SOC or SIEM 🙏 please it will help lot of people like me who can't afford Expensive courses #freeeducationforall

  • @saplay3372
    @saplay3372 2 года назад +1

    Great

  • @celestialbeing4767
    @celestialbeing4767 2 года назад +1

    The back bone in either backend and front-end.

  • @juanignaciobrianoquintan7342
    @juanignaciobrianoquintan7342 2 года назад

    Selent!!!!!!

  • @saadhussain4681
    @saadhussain4681 Год назад

    Which version of sql server we will learn in this vide?

  • @metodievmetodiev
    @metodievmetodiev 29 дней назад

    Hello @codeMechanic .. I am using M1 MacBook Air and was wondering whether I can do this course? I currently installed Azure Data Studio on Docker but not able to do the students.bak exercise thus won't be able to run the queries.. where can I find the data so I do an import?

  • @happyvalley8454
    @happyvalley8454 Год назад

    Presentation was great.Can i get that ppt ?

  • @ShirleySinha-ps5lh
    @ShirleySinha-ps5lh 2 месяца назад

    is there any book from where we can study all these?

  • @mohammedabdulsattar125
    @mohammedabdulsattar125 2 года назад

    Hi sir, the tools which u are used in this video we can also use in oracle sql developer or not???

    • @ICodeMechanic
      @ICodeMechanic 2 года назад

      Sorry, but this is only for Microsoft SQL Server. it will not be used for Oracle Database

  • @adwaitchavan6638
    @adwaitchavan6638 2 года назад +2

    Can you please build a program for Postgres Performance essentials

  • @slahomar1497
    @slahomar1497 2 года назад

    What's a great video, are concepts and strategies in this course applicable for PostgresDB ?? or for all SQL languages no matter whether it's SQL server or PostgressDB ????

    • @phenomenon7030
      @phenomenon7030 Год назад

      Did you find an answer for your question ?

  • @naveenchandran3023
    @naveenchandran3023 2 года назад

    Please post pl/sql course it will help many people

    • @freecodecamp
      @freecodecamp  2 года назад +5

      Here are some courses that may help you:
      SQL Course: ruclips.net/video/HXV3zeQKqGY/видео.html
      MySQL Course: ruclips.net/video/ER8oKX5myE0/видео.html
      University Database Systems Course: ruclips.net/video/4cWkVbC2bNE/видео.html

    • @ICodeMechanic
      @ICodeMechanic 2 года назад

      Noted

  • @__________________________6910
    @__________________________6910 2 года назад

    Where are the links ?

  • @aybe8
    @aybe8 2 года назад +2

    SSIS please!

  • @aramj90
    @aramj90 2 года назад +2

    set speed to 1.5x⭐or you will sleep, although very profoundly and well

  • @blueshardstudio705
    @blueshardstudio705 2 года назад

    Hi freeCodeCamp! I'd like to ask you if you can make tutorial for C++ desktop development. Thanks 😀

  • @h1permonth723
    @h1permonth723 Год назад

    I have a query, it works very speed but suddenly it's taking more time, I can optimize but I want to know the root cause why it works before why it's not now ?, can you please tell me what can I do to know the root cause

  • @shawon791
    @shawon791 2 года назад

    Does this work for MySQL database?

    • @Louisianish
      @Louisianish 2 года назад +3

      Probably to an extent, but they are different database management systems. I’m sure a lot of this is applicable to other RDBMS like MySQL and PostgreSQL, though.

    • @ICodeMechanic
      @ICodeMechanic 2 года назад

      No Shawon, it only works with Microsoft SQL Server

    • @michaelcheung6290
      @michaelcheung6290 Год назад

      ​@@ICodeMechanicoh why? Because these are implemented very differently in other RDBMS?

  • @vincentrayalba5936
    @vincentrayalba5936 2 года назад +1

    Can you make solid works video plzzzz.

    • @Louisianish
      @Louisianish 2 года назад +1

      I’m sure they’re working on it. Solid is a fairly new framework, right?

  • @cleanzerg729
    @cleanzerg729 2 года назад

    if youtube allows users to change the accent of the videos based on the scripts, that would be great

  • @adityavikramsinha408
    @adityavikramsinha408 2 года назад

    Olaaa

  • @lucasrocha633
    @lucasrocha633 2 года назад +1

    I don't like SQL Server for example, I need to get a select result and generate script to insert based in values for the query to put in other table or database its impossible without payable tools. In MySQL its easier.

  • @orion_yt
    @orion_yt 2 года назад

    2nd

  • @nishikisan6675
    @nishikisan6675 2 года назад

    hay bruh

  • @oooooPizda
    @oooooPizda 2 года назад +1

    That Indian speaking make me smile)))

    • @ash3rr
      @ash3rr 2 года назад +1

      The Indian makes my ears cry.

  • @matthewlavancher7978
    @matthewlavancher7978 2 года назад

    A+++++

  • @dheeraj0076
    @dheeraj0076 2 года назад

    We have only one like button 😒 Period

  • @thanhpn7188
    @thanhpn7188 9 месяцев назад

    Can't send 100 likes to your course 😂

  • @data_home
    @data_home 2 года назад

    Writing...

  • @princesscrawforddd.6123
    @princesscrawforddd.6123 2 года назад +2

    Your mother

  • @ritasing5858
    @ritasing5858 2 года назад

    I have idea to make mobile application
    Would you like to invest and become a billionaire

  • @waqar_ahmed3168
    @waqar_ahmed3168 Год назад

    You are watching the video 😭

  • @snehilkumar419
    @snehilkumar419 9 месяцев назад

    not working- download database backup files - students.bak is not visible to download. please check