DB
데이터 저장 방식에 따른 데이터베이스 차이, 행 기반, 열 기반
seaforest
2024. 8. 20. 08:48
※ 데이터 저장 방식에 따른 데이터베이스 차이
1. 행 기반 데이터베이스 (Row Oriented Database)
- Postgres, MySQL, Oracle
- 레코드를 '행 단위'로 추가
- 데이터 검색을 위해 인덱스를 사용항
- 인덱스가 없다면 모든 데이터를 로드해야 하기 때문에 성능 저하 이슈 있음)
- '행' 으로 관리되는 데이터베이스
- 새로운 데이터가 추가되면 기존 데이터의 맨 끝에 추가되는 구조
- 행 단위 데이터를 읽는데 최적화
- 데이터 끝에 행을 추가하면 되는거라 저장 속도가 빠름
- OLTP 에 최적화됨
- OLTP : 데이터 갱신 위주,
- 예시 : 예산 측정, 재무 회계 분석, 판매/수요 예측, 구매 성향 파악, 비즈니스 리포팅
2. 열 기반 데이터베이스 (Column Oriented Database)
- 열 기반으로, 필요한 열만 로드해서 성능이 높음
- 같은 열에는 유사한 데이터가 반복되기 때문에 행 기반 데이터베이스보다 훨씬 작게 압축 가능
- 필드끼리 수평으로 저장됨
- Redshift, BigQuery, Snowflake
- OLAP 스타일 용도에 최적화
- 데이터 쿼리를 할 때 성능이 더 좋음
- 데이터 집합을 만들 때, 추가 메모리 소모 없이 필요한 결과 출력 가능 및 성능 향상)