Absolutely Everything That I Know About Database Indexes

System Design Fight Club November 26, 2023
Video Thumbnail
System Design Fight Club Logo

System Design Fight Club

View Channel

About

70+ System design Interview Questions with a FAANG Senior Engineer 📚 "Why do you do so many different approaches to the problems?" My intended audience is senior+ level engineers. Unlike with mid-level rounds where quickly regurgitating a template you had memorized the night before is "acceptable", senior level interviews are typically tailored and personalized by the interviewer, meaning that any "template" that you memorize and regurgitate is just going to lead to failing the interview. "Can you just do some interview style videos?" There's already a wide variety of videos out there in that style that you're welcome to watch instead, but I've never been impressed by what I've seen in them -- even when they're allegedly answered by a "google engineer" or "staff/principal engineer". I'd like to do things like machine count estimates in future videos; however, that seems like a trivial and repetitive process whe n you get the pattern to it.

Video Description

After mentioning LSM-Trees, B-Trees, R-trees, etc. in passing for over a year in my system design videos, I've received enough requests to make an entire video about it that I finally caved and decided to make another system concepts video. NOTES & CORRECTIONS: - excalidraw file: https://excalidraw.com/#json=z6OfXNuA1htMbSEfXeixq,8-DMBtQczaZfr2m-PpCNmQ - screenshots of the excalidraw file: https://imgur.com/a/C37N2hh - text files: - overview.md - https://pastebin.com/HgmV8dRi - indexing.md - https://pastebin.com/KtuELqhJ - the excalidraw link and screenshots above contain the corrected version of the drawing for the "write heavy" scenario 00:00 Intro 00:45 Resources & References 01:26 Key Concepts 01:36 Key Concept: RUM Conjecture 03:08 Key Concept: DB = WAL + Materialized View 03:50 No Index 06:45 Primary Keys 08:56 Partitioning Strategies: Hash Partitioning vs. Range Partitioning 11:52 K-V Stores 14:32 B-Trees vs. LSM-Trees 20:33 Secondary Indexes 24:15 Local Secondary vs. Global Secondary 29:02 Multi-Dimensional Indexes 29:37 Concatenated Indexes 31:52 R-Trees vs. Quad-Trees vs. Geo-Hashes 37:33 Inverted Indexes 42:15 Skip Lists 44:20 Vector Indexes 48:42 Data Cubes & Materialized Views 50:56 Count-Min Sketch #systemdesign #programming

You May Also Like

No Recommendations Found

No products were found for the selected channel.