행 기반 데이터베이스(Row-oriented Database) 는 데이터를 행 단위로 관리하는 DBMS입니다. 행 단위 읽기 맟 쓰기 연산에 최적화돼 있습니다. PostgreSQL, MySQL이 대표적인 행 기반 데이터베이스입니다.
반면, 열 기반 데이터베이스(Column-oriented Database) 는 열 기반으로 데이터를 관리한다는 점에서 행 기반 데이터베이스와 차이가 있습니다. 데이터를 조회할 때 필요한 열만 로드하기 때문에 디스크 I/O를 줄일 수 있으며, 같은 종류의 데이터가 연속적으로 저장되므로 압축 효율이 높습니다. 이러한 특징으로 인해 주로 데이터 분석에 사용됩니다. 대표적인 열 기반 데이터베이스로는 BigQuery, Redshift, Snowflake가 존재합니다.
예를 들어, 다음과 같은 데이터가 존재한다고 가정하겠습니다.
Name CreatedAt| Atom | 2024-01-23 |
| Prin | 2024-02-01 |
| Gosmdochee | 2024-02-03 |
행 기반 데이터베이스의 경우, 아래와 같이 데이터를 관리합니다.
[Atom, 2024-01-23] [Prin, 2024-02-01] [Gosmdochee, 2024-02-03]
반면, 열 기반 데이터베이스의 경우, 아래와 같이 데이터를 관리합니다.
[Atom, Prin, Gosmdochee] [2024-01-23, 2024-02-01, 2024-02-03]
LIST
'DB' 카테고리의 다른 글
| Qdrant (0) | 2026.03.10 |
|---|---|
| 벡터db로 postgresql을 많이쓰는 이유 (0) | 2026.03.09 |
| 코드에 Git이 있다면, DB에는 Flyway가 있다 (feat. DB Orchestrating) (0) | 2026.02.26 |
| 쿼리가 느린 게 아니라 모델이 거짓말을 하고 있다. (0) | 2026.02.06 |
| 인덱스는 공짜가 아니다. 쓰기 비용을 미래로 넘긴다 (0) | 2026.02.04 |
