태그: #query-planner
GPU·LLM·MLOps·쿠버네티스, 그리고 마음가짐에 관한 글 · 5 편
Postgres 19의 pg_plan_advice — 힌트를 거절해 온 프로젝트가 내놓은 타협안
PostgreSQL 프로젝트는 오랫동안 옵티마이저 힌트를 거절해 왔습니다. 그런데 2026년 6월 4일 나온 PostgreSQL 19 Beta 1에 Robert Haas가 만든 pgplanadvice와 pgstashadvice가 contrib 모듈로 들어갔습니다. 이건 오라클식 힌트가 아닙니다 — 조언은 SQL 밖에 살고, 플래너를 대체하는 게 아니라 탐색 공간을 좁히기만 하며, 문서의 표현
2026-07-16 · 26 분 읽기 #postgresql#query-planner#query-optimization#database#performancePostgreSQL 내부 구조 완벽 가이드 — MVCC, WAL, Vacuum, Heap, B-tree, Query Planner 모든 것 (2025)
PostgreSQL 내부의 모든 것 — 프로세스 아키텍처 (postmaster, backend, autovacuum, checkpointer, walwriter), 페이지와 heap tuple의 바이트 레이아웃, MVCC와 xmin/xmax/ctid, WAL과 checkpoint의 상호작용, Vacuum과 Visibility Map과 HOT update, B-tree와 GIN/GiST/BRI
2026-04-15 · 43 분 읽기 #postgresql#database#mvcc#wal#vacuum데이터베이스 엔진 내부 완전 정복 — B-Tree부터 WAL, MVCC, 쿼리 플래너, 격리 수준까지 (2025)
SELECT 한 줄이 디스크에 닿을 때까지 무슨 일이 벌어지는가. B-Tree 인덱스가 왜 로그 시간인지, WAL이 왜 쓰기 성능의 비밀인지, MVCC가 어떻게 잠금 없이 읽기를 가능하게 하는지, 쿼리 플래너는 어떻게 실행 계획을 고르는지, 그리고 격리 수준의 미묘한 함정까지 — 40년 RDBMS 진화사와 함께 엔진의 속살을 파헤친다.
2026-04-15 · 32 분 읽기 #database#sql#postgresql#mysql#btree데이터베이스 내부 구조 완전 해부 — B-Tree, LSM, WAL, MVCC, Vacuum, Index, Query Planner, Replication 심층 가이드 (2025)
왜 PostgreSQL과 RocksDB는 다른 자료구조를 택했나. WAL이 없는 DB가 없는 이유. MVCC의 xmin/xmax, Vacuum이 느려지는 진짜 원인, BRIN/GIN/GiST/HNSW 인덱스, Query Planner가 같은 쿼리를 달리 실행하는 논리, Replication의 논리 vs 물리. '왜 DB는 느려지는가'에 대한 완전한 답.
2026-04-15 · 23 분 읽기 #database#btree#lsm-tree#wal#mvccDB 완전 가이드 — 내부 구조·인덱스·쿼리 플래너·파티셔닝·Vector DB (Season 2 Ep 13, 2025)
데이터베이스를 "SQL 쓰는 곳"으로만 쓰면 평생 주니어다. B-Tree·LSM-Tree·Hash Index의 내부 구조, 쿼리 플래너가 쿼리를 어떻게 실행으로 바꾸는지, 트랜잭션 격리 수준 4단계, 샤딩·파티셔닝 전략, PostgreSQL의 2025년 독주 현상, 그리고 Vector DB(pgvector·Qdrant·Weaviate)까지 — DB의 내부를 회로도 수준으로 뜯는 한 편. Se
2026-04-15 · 17 분 읽기 #database#postgresql#b-tree#lsm-tree#indexing