~/tech-blog/category/database — zsh
/ 주제

Database 13 posts

인덱스, 락, MVCC, 캐시 등 데이터베이스의 원리와 실무 최적화 경험을 담은 글들입니다.

DATABASE

데이터베이스 인덱스와 페이지네이션 최적화

클러스터/세컨더리/커버링 인덱스의 구조를 정리하고, OFFSET 방식의 느린 페이지네이션을 커버링 인덱스, No Offset, 파티셔닝으로 최적화하는 방법을 비교합니다.

efa5056 · Database — 4 min
DATABASE

MySQL 인덱스 정리

MySQL이 인덱스로 B-Tree를 사용하는 이유와 카디널리티·선택도 개념을 바탕으로, 인덱스를 효율적으로 설계하는 방법을 정리합니다.

c31d7cd · Database — 5 min
DATABASE

슬로우 쿼리 개선

응답에 6초 이상 걸리던 페이지의 원인을 실행계획으로 분석하고, MySQL 옵티마이저의 드라이빙 테이블 선택 문제를 STRAIGHT_JOIN으로 해결한 경험을 정리합니다.

2025.02.21 · efa5056 · Database — 5 min
DATABASE

Cache Stampede(캐시 스템피드)

if(kakao)에서 소개된 캐시 스템피드 현상의 원인과 해결책(락, 캐시 웜업, 하이브리드 캐시), 그리고 Spring Boot Cold Start와 JIT 컴파일러의 동작 원리를 정리합니다.

c915a20 · Database — 8 min
DATABASE

DB 인덱스

MySQL이 인덱스로 B-Tree를 사용하는 이유와 인덱스의 동작 방식을 살펴보고, 복합 인덱스를 활용해 불필요한 단일 인덱스로 인한 자원 낭비를 줄이는 실무 설계 방법을 정리합니다.

2024.10.12 · efa5056 · Database — 6 min
DATABASE

DB 분산락

비관적 락의 한계를 짚고, Redisson 기반 분산락이 등장한 이유와 락 획득 방식의 차이, 상황별 트레이드오프를 정리합니다.

2024.09.20 · c31d7cd · Database — 4 min
DATABASE

MVCC (multiversion concurrency control)

락 기반 동시성 제어의 한계를 살펴보고, MVCC가 커밋된 데이터만 읽는 방식과 트랜잭션 격리 수준에 따라 읽는 데이터가 달라지는 원리를 정리합니다.

2024.09.13 · efa5056 · Database — 3 min
DATABASE

DBCP

TCP 연결 과정의 비효율을 DBCP가 어떻게 해결하는지 설명하고, HikariCP의 minimumIdle, maximumPoolSize 등 주요 설정을 정리합니다.

2024.09.13 · c915a20 · Database — 6 min
DATABASE

DB 비관적 락

비관적 락의 개념과 S-Lock/X-Lock, 갭 락(Next-Key Lock)의 동작을 살펴보고, JPA 동시성 테스트로 재고 차감 문제를 해결하는 과정을 정리한 글입니다.

2024.09.13 · c31d7cd · Database — 5 min
DATABASE

DB 낙관적 락

재고 차감 동시성 테스트로 문제를 재현하고, JPA @Version 기반 낙관적 락의 동작 원리와 사용 시점, 주의할 점을 정리합니다.

2024.09.13 · c31d7cd · Database — 4 min
DATABASE

B-tree

B 트리의 정렬·균형 특성을 설명하고, 예시 트리를 통해 삽입·검색·삭제 동작 방식을 정리합니다.

2023.08.23 · efa5056 · Database — 3 min
DATABASE

커넥션 풀과 데이터소스 이해하기

DB 커넥션을 매번 새로 맺을 때의 문제와 커넥션 풀, DataSource 추상화가 이를 어떻게 해결하는지 정리합니다.

2023.08.12 · ea0f709 · Database — 1 min
DATABASE

데이터 적재 및 문제 해결방법

1억 건 규모 테이블의 슬로우 쿼리와 DB 메모리 적재 문제를 실무에서 겪은 과정과, 샤딩·파티셔닝을 통한 해결 방법을 정리합니다.

2023.05.06 · c31d7cd · Database — 5 min
● main 214 posts UTF-8 LF © 2026 코징 RSS · GitHub