This site is powered by
course builder. Create your online course today.
Start now
Create your course
with
Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Fundamentals of Performance Live Streaming
Introduction
What Your Early Access Membership Includes
Live Stream Archives: Building Fundamentals of Query Tuning
Writing query anti-patterns module, starting with string searches and functions (72:46)
Live Stream Archives: Designing Upcoming Classes
Introducing the new Twitch channel, designing the 1-day class (118:36)
Writing the recap slides first for all modules (114:08)
Screw that: turning Fundamentals of Releases and Extensions into a blog post (56:35)
Comparing DBeaver, DataGrip, and VS Code (67:57)
Live Stream Archives: Building Fundamentals of Index Tuning
Designing & setting up the class (76:19)
Learning how to read buffers output of explain (85:46)
R&D: reading RSS feeds, writing SmartPostgres.com newsletters (70:33)
Writing module 1: which columns to index (82:48)
Testing the first module, starting the partial indexes module (89:10)
Writing modules for filtered indexes, indexing timestamp columns with functional indexes (61:44)
Writing modules for indexing for group by, indexing for joins (82:31)
Writing modules for order by (72:13)
Writing lab exercises for attendees (56:09)
Rehearsing current modules to see what we need to add (81:03)
Writing blog posts on check_indexes & drop_indexes, R&D on load testing (83:49)
Rehearsing current modules, recording prep (91:15)
Recording single-table modules (20:19)
Writing indexing for joins (91:49)
Continuing indexing for joins + order by, writing labs (98:51)
Writing module for functional indexes for string searching (53:02)
Live Stream Archives: Building Fundamentals of Selects
Designing Fundamentals of Selects (126:54)
Expanding Fundamentals of Selects (126:03)
Rehearsing Fundamentals of Selects (93:25)
Blogging & recording Fundamentals of Selects (106:51)
Live Stream Archives: Building Fundamentals of Vacuum
Research, picking storytelling method (107:44)
Measuring impact on selects (94:43)
Rehearsing first 4 modules (122:44)
Building load test to cause autovacuum problems (111:34)
Writing modules for problems with autovacuum (92:55)
Recording modules for problems with autovacuum (10:14)
R&D for how to measure when autovacuum isn't keeping up (95:31)
Writing fill factor table module (101:30)
Writing fill factor table module, continued (56:46)
Writing fill factor table module, continued (85:09)
Writing fill factor table module, continued (86:38)
Why I'm taking a mental health day (11:00)
Live Stream Archives: Building check_indexes
Design: sp_BlitzIndex design review, check_indexes proof of concept (92:13)
Creating "bad" schema, debugging (175:01)
Fetching data for base tables and TOAST tables (113:13)
Turning check_indexes into a function (149:22)
Adding partitioned table support, writing our first warning (142:33)
Updating check_indexes (101:43)
Adding drop commands, merging pull requests (117:55)
Handling pull requests, planning for autovacuum warnings (68:02)
Coding autovacuum warnings (91:08)
Coding autovacuum warnings, continued (96:07)
Blogging about materialized views (70:17)
Enhancing & debugging autovacuum warnings (77:32)
Testing check_indexes on Postgres 12-17 (32:38)
Dynamic SQL, adding more info to check_indexes output (77:12)
Writing supporting web pages, Github readme (67:58)
Adding bloat checks (92:51)
Giving up on bloat checks, trying other free database tools (94:47)
Adding transaction ID wraparound warning for check_indexes (84:55)
Live Stream Archives: Building Fundamentals of Python
R&D: explaining new class, writing launch posts, writing SmartPostgres.com newsletters (54:45)
Rehearsing current modules, recording prep
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock