[정의] DataBase 의 Semantic의 변화없이 Schema의 변경을 통해 관리 편의성이나 속도, 정합성 개선을 확보하는 일련의 작업
[목적] 구조 최적화, 품질 향상, Agile 개발 지원
[DB Smell]
1. 다목적 컬럼 : 단일컬럼이 다양한목적으로 사용
2. 다목적 테이블 : 단일 테이블이 다양목적 사용
3. 중복데이터 : 많은 행과 열을 보유한 테이블
4. 스마트 컬럼 : 하나의 컬럼이 다기능적 목적 수행가능한 컬럼
5. 변화의 두려움
6. 비정상적 참조경로
7. 테이블 관계의 부적절함
8. 조회성능 및 삽입성능의 저하
[유형]
구조 리팩토링(스키마의 구조적 변경)
데이터 품질(테이블 데이터값의 일관성 및 사용성 개선)
참조무결성(제약조건 추가)
아키텍처(외부 프로그램과 상호 작용방법 개선)
기능 변환(저장 프로시저의 품질, 트리거 개선 등)
[고려사항]
1) 기존 의미에 대한 변경을 가하지 않았는지, 정보에 대한 손실은 없는지 반드시 DB Regression Test 를 수행함
2) 복원 가능한 시나리오 및 검증체계 구축
'ITPE > DB' 카테고리의 다른 글
관계 데이터 언어(relational data language) (0) | 2021.03.09 |
---|---|
Sharding (0) | 2021.03.06 |
CRUD Matrix (0) | 2021.03.06 |
함수적 종속성 (0) | 2021.03.06 |
데이터 모델링 (0) | 2021.03.06 |