본문 바로가기
IT기술노트/데이터베이스

DB Smell

by 비트코기 2021. 3. 7.

I. DB Smell

유형

설명

Multi-Purpose Column

- 단일 컬럼의 의미론적으로 다양한 목적으로 사용하고 있을 경우 다목적 컬럼은 해당 컬럼만으로는 사용자에게 올바른 정보를 주기가 어렵고 부가적인 컬럼 확인

Multi-Purpose Table

- 단일 테이블이 여러 유형의 엔티티를 저장하는데 사용하고 있다면 설계 결함 오류 존재

Redundant Data

- 중복 데이터는 DB Smell의 가장 대표적인 사례로 여러 테이블, 여러 컬럼에 중복된 데이터는 데이터의 동기화, 데이터 품질에 심각한 영향을 주며 DB의 일관성을 저해하며, 사용자에게 잘못된 정보를 줄 수 있음

Tables with Many Columns

- 너무 많은 컬럼을 가지고 있는 테이블은 검색, 삽입, 삭제 속도에 심각한 영향을 미치며 Big Table을 양산할 수 있음

Table with Many Rows

- 대용량 테이블은 보통 수백만, 수천만 건의 데이터를 가지고 있는 테이블

- 대형 테이블은 일반적으로 정보계 테이블에 많이 존재하는데 성능지표에 근거하여 테이블의 수직, 수평 분할을 고려

Smart Columns

- 스마트 컬럼은 하나의 컬럼에 대해 다기능적 목적을 수행 할 수 있으나, DB 구조를 복잡하게 하며 어플리케이션 복잡도를 증가

Fear of Change

- DB를 변화해야 하는 필요성은 이해당사자들이 모두 느끼고 있지만, 변화에 대해 소극적인 태도와 변화에 대한 두려움이 가장 나쁜 냄새

 

 

반응형

'IT기술노트 > 데이터베이스' 카테고리의 다른 글

데이터 무결성 (Data Integrity)  (0) 2022.09.01
다중버전 동시성 제어(MVCC, Multi-Version Concurrency Control)  (1) 2021.09.20
데이터베이스 샤드(Database Shard)  (0) 2021.03.07
In-Memory Database  (0) 2021.03.07
DB Refactoring  (0) 2021.03.07
Streaming DBMS  (0) 2021.03.07
분산 데이터베이스  (0) 2021.03.07
XML DB  (0) 2021.03.07

댓글