| 인덱스 유형 | 특성 | 적합 용도 |
|---|---|---|
| B-Tree 인덱스 | 균형 이진 트리 구조. 범위 검색·정렬에 최적. 대부분 기본 인덱스 유형 | 등가 검색, 범위 검색, ORDER BY |
| 복합(Composite) 인덱스 | 여러 컬럼을 조합. 첫 번째 컬럼 선택도 중요 (카디널리티 높은 컬럼 앞에 배치) | WHERE 조건이 여러 컬럼일 때 |
| 커버링(Covering) 인덱스 | SELECT 컬럼을 모두 인덱스에 포함. 테이블 액세스 없이 인덱스만으로 쿼리 처리 | 자주 실행되는 SELECT 쿼리 최적화 |
| 파티셔닝 | 테이블을 Range·List·Hash로 분할. 파티션 프루닝으로 전체 스캔 회피 | 대용량 시계열 데이터, 날짜 기반 조회 |
인덱스 설계 원칙: ① 선택도 높은 컬럼 우선 ② WHERE·JOIN·ORDER BY 기준 컬럼 ③ DML 빈도 높은 테이블은 인덱스 최소화 (쓰기 성능 영향)
EXPLAIN ANALYZE (PostgreSQL) 또는 EXPLAIN (MySQL)으로 실행 계획을 확인한다.
| 주요 확인 항목 | 의미·해석 |
|---|---|
| Full Table Scan | 인덱스 미사용. WHERE 조건에 맞는 인덱스 생성 검토 |
| Index Scan vs Index Only Scan | Index Only Scan이 더 효율적. 커버링 인덱스로 전환 |
| Nested Loop vs Hash Join | 소규모 결과셋: Nested Loop, 대규모: Hash Join이 유리 |
| Row 추정치 | 통계 정보 오래됨 시 rows 추정 오류 → ANALYZE/VACUUM 실행 |
| 구분 | OLTP | OLAP |
|---|---|---|
| 목적 | 트랜잭션 처리 (주문·결제·업데이트) | 분석·집계 쿼리 (매출 분석, 트렌드) |
| 데이터 모델 | 3NF (정규화) — 중복 최소화, 쓰기 최적화 | Star Schema / Snowflake Schema — 읽기 최적화 |
| 쿼리 특성 | 단순·짧은 트랜잭션, 수 ms 응답 | 복잡한 GROUP BY·집계, 수 분 이상 |
| 저장소 | Row-Oriented (MySQL, PostgreSQL) | Column-Oriented (Redshift, BigQuery, ClickHouse) |
| Star Schema | — | 중앙 Fact Table + 주변 Dimension Table. JOIN 최소화, 집계 고속 |
RDBMS 성능 최적화는 선택도 높은 인덱스 설계, 커버링 인덱스로 테이블 액세스 최소화, 파티셔닝으로 스캔 범위 축소가 핵심이다. OLTP는 3NF 정규화와 Row-Store, OLAP는 Star Schema와 Column-Store로 각 워크로드에 최적화된 모델링을 선택해야 한다.
코스피 8% 폭락, 서킷브레이커 발동, SK텔레콤 Claude AI 차단까지. 한국의 AI 레버리지 버블이 단 하루…
SNS 사진 1장으로 30초 만에 딥페이크 영상이 완성됩니다. 당신의 얼굴이 이미 범죄에 악용되고 있을 수…
SNS 사진 1장으로 30초 만에 딥페이크 영상이 완성됩니다. 당신의 얼굴이 이미 범죄에 악용되고 있을 수…
달러/원 환율이 급등하는 이유와 실생활 영향을 정리했습니다. 지금 당장 활용할 수 있는 환전·투자 대응 전략까지…
미래에셋·미래에셋벤처투자·미래에셋생명이 동반 급등한 이유는 스페이스X 상장 기대감입니다. 세 회사가 스페이스X와 어떻게 연결되어 있는지 상세히 분석했습니다.
스페이스X 상장이 계속 미뤄지는 진짜 이유를 파헤쳤습니다. 화성 계획, 스타링크 분리, 국방 계약... 머스크가 절대…