본문으로 건너뛰기

열 기반 DB와 행 기반 DB

✔️ 행 기반 데이터베이스 (Row-oriented Database)

데이터를 행 단위로 관리하는 DBMS입니다. 행 단위 읽기 맟 쓰기 연산에 최적화돼 있습니다. PostgreSQL, MySQL이 대표적인 행 기반 데이터베이스입니다.

✔️ 열 기반 데이터베이스 (Column-oriented Database)

열 기반으로 데이터를 관리한다는 점에서 행 기반 데이터베이스와 차이가 있습니다. 데이터를 조회할 때 필요한 열만 로드하기 때문에 디스크 I/O를 줄일 수 있으며, 같은 종류의 데이터가 연속적으로 저장되므로 압축 효율이 높습니다. 이러한 특징으로 인해 주로 데이터 분석에 사용됩니다. 대표적인 열 기반 데이터베이스로는 BigQuery, Amazon Redshift, Snowflake가 존재합니다.

예를 들어, 다음과 같은 데이터가 존재한다고 가정하겠습니다.

NameCreatedAt
Atom2024-01-23
Prin2024-02-01
Gosmdochee2024-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]
Loading comments...