filmov
tv
A Deep Dive in How Slow SELECT * is
Показать описание
Fundamentals of Database Engineering udemy course (link redirects to udemy with coupon)
In a row-store database engine, rows are stored in units called pages. Each page has a fixed header and contains multiple rows, with each row having a record header followed by its respective columns. When the database fetches a page and places it in the shared buffer pool, we gain access to all rows and columns within that page. So, the question arises: if we have all the columns readily available in memory, why would SELECT * be slow and costly? Is it really as slow as people claim it to be? And if so why is it so? In this post, we will explore these questions and more.
0:00 Intro
1:49 Database Page Layout
5:00 How SELECT Works
10:49 No Index-Only Scans
18:00 Deserialization Cost
21:00 Not All Columns are Inline
28:00 Network Cost
36:00 Client Deserialization
Fundamentals of Backend Engineering Design patterns udemy course (link redirects to udemy with coupon)
Fundamentals of Networking for Effective Backends udemy course (link redirects to udemy with coupon)
Follow me on Medium
Introduction to NGINX (link redirects to udemy with coupon)
Python on the Backend (link redirects to udemy with coupon)
Become a Member on YouTube
Buy me a coffee if you liked this
Arabic Software Engineering Channel
🔥 Members Only Content
🏭 Backend Engineering Videos in Order
💾 Database Engineering Videos
🎙️Listen to the Backend Engineering Podcast
Gears and tools used on the Channel (affiliates)
🖼️ Slides and Thumbnail Design
Canva
Stay Awesome,
Hussein
In a row-store database engine, rows are stored in units called pages. Each page has a fixed header and contains multiple rows, with each row having a record header followed by its respective columns. When the database fetches a page and places it in the shared buffer pool, we gain access to all rows and columns within that page. So, the question arises: if we have all the columns readily available in memory, why would SELECT * be slow and costly? Is it really as slow as people claim it to be? And if so why is it so? In this post, we will explore these questions and more.
0:00 Intro
1:49 Database Page Layout
5:00 How SELECT Works
10:49 No Index-Only Scans
18:00 Deserialization Cost
21:00 Not All Columns are Inline
28:00 Network Cost
36:00 Client Deserialization
Fundamentals of Backend Engineering Design patterns udemy course (link redirects to udemy with coupon)
Fundamentals of Networking for Effective Backends udemy course (link redirects to udemy with coupon)
Follow me on Medium
Introduction to NGINX (link redirects to udemy with coupon)
Python on the Backend (link redirects to udemy with coupon)
Become a Member on YouTube
Buy me a coffee if you liked this
Arabic Software Engineering Channel
🔥 Members Only Content
🏭 Backend Engineering Videos in Order
💾 Database Engineering Videos
🎙️Listen to the Backend Engineering Podcast
Gears and tools used on the Channel (affiliates)
🖼️ Slides and Thumbnail Design
Canva
Stay Awesome,
Hussein
Комментарии