database 설계 시 주의사항

1. pk 순서를 where clause에서 사용하는대로 잡자.
...작업을 한다면 where clause 맞추는게 나을것 같다.
2. 어떤 조건으로 결과 셋을 줄여 나갈지 확인하자.
큰 범위의 결과는 되도록 뒤에 두자.
3. 식별자 관계 - 부모 pk를 자식의 pk 속성이 되는 관계
비식별자 관계는 부모 pk가 자식 pk의 속성이 아닌경우
식별자 관계시 자식 테이블을 대상으로 하는 query식이 점점 늘어난다.
비 식별자 관계일 경우 join문이 복잡하게 쓰일 수 있다.
이력테이블 관리. 이력테이블은 시간의 따라 레코드가 증가하는 테이블. 레코드가 많을 경우 처리시간이 오래 걸리는 특징이 있다. 관리 방법은 기본이 되는 그냥 한 테이블로 관리하는 방법과 마지막 상태를 저장하는 테이블과 이력테이블을 한쌍으로 관리 하는 방법이 있다. 주의 할점은...역시나 인덱스를 타느냐 마느냐. 적은 범위의 인덱스를 태울수 있는가에 대한 방법이다. 테이블 분리와 통합 통합된다면 너무 많음 트랜젝션이 몰릴 수 있는가? 없는가? 제약사항 조건을 거는데 문제가 있는가 고려할 것 분리된다면 조인에 의한 개발 및 성능에 영향과 테이블 관계의 복잡도을 고려 가장 명확한 구분 방법은 논리적 구조 판단 ㅡㅡ;;;; pk를 잡는이유는 테이블의 특성과 fk로 활용할 경우 무결성이 보장 되기 때문이다.

댓글

이 블로그의 인기 게시물

Spring Batch - JobParameters Default Value 만들기

Hsqldb Server 재기동 시 오류