PostgreSQL

PostgreSQL 5

CloudNativePG

CloudNativePG 의 미래, 그리고 나의 미래

데이터 주권의 부상, Crunchy PGO 와의 아키텍처 차이, HSBC 도입 사례를 따라가며 CloudNativePG 와 함께 성장하기로 다짐한 일기장 같은 기록입니다.

튜닝 & 모니터링

random_page_cost 값의 재해석

random_page_cost 기본값 4.0 은 스토리지를 재서 맞추면 된다고들 합니다. Vondra 의 글을 따라가며, 이 값이 사실은 Cost Model 의 빈틈을 메우는 proxy 라는 관점을 정리했습니다.

소스코드 분석

Logical Replication의 전송 메커니즘: 개념 정리와 #6047 패치 리뷰

publisher의 DELETE가 subscriber에서 어느 행을 지우는지부터 REPLICA IDENTITY와 wire 프로토콜, pubviaroot에서 정합성이 깨지는 #6047 사례까지 코드 경로를 따라 정리합니다.

아키텍처

PostgreSQL은 왜 shared_buffers를 25%만 권고하고, Aurora는 왜 75%일까?

PostgreSQL은 25%, Aurora는 75% — 같은 엔진인데 권고치가 정반대인 이유를, OS 페이지 캐시를 2차 캐시로 활용하는 PostgreSQL의 디자인 철학과 OS 캐시를 우회하도록 재설계된 Aurora의 분리 스토리지 구조에서 찾습니다.

소스코드 분석

PostgreSQL 커뮤니티 패치 리뷰 — XLOG_SWITCH 반환값 일관성 (#6680)

DBA로서 PostgreSQL 오픈소스 커뮤니티에 처음 기여하며 마주한 #6680 패치 — WAL 구조의 기본부터 XLOG_SWITCH 반환값 일관성 문제, v1→v2 진화 과정과 메일 토론을 단계별로 따라가며 정리합니다.