1. 본질식별자와 인조식별자의 구분
1️⃣ 본질식별자와 인조식별자의 정의
1) 대체 여부에 따른 분류
본질식별자 | 업무에 의해 만들어지는 식별자
예) 고객번호 |
인조식별자 | 업무적으로 만들어지지는 않지만 원조식별자가 복잡한 구성을 가지고 있기 때문에 인위적으로 만든 식별자
예) 주문엔터티의 주문번호(고객번호+주문번호+순번) |
2️⃣ 본질식별자 예
- 테이블의 본질적인 특성을 기반으로 만들어짐
- 예) 학번 - 학생 데이터의 고유한 특성을 직접 반영하며, 본질식별자로서의 역할 수행
3️⃣ 인조식별자 예
- 데이터베이스 시스템에서 자동으로 생성되고 관리되는 식별자
- 예) 등록ID - 학기 정보를 데이터베이스에 추가할 때마다 순차적으로 부여
2. 인조식별자의 사용 시 주의할 사항 ⭐
인조식별자를 사용할 때 주의할 점(단점, 문제점) 등 출제될 가능성 높음
1️⃣ 인조식별자의 필요성
교재 p.80 - 81 참고
2️⃣ 인조식별자의 장점
1) 고유성 보장
- 주문항목ID는 각 주문 항목에 대해 완전히 고유한 값 제공 → 데이터의 중복 및 혼동 방지
2) 데이터 관리의 용이성
- 새로운 인조식별자 통해 데이터를 더 쉽게 조회, 수정, 삭제 가능
- 대규모 데이터에서 특정 항목을 빠르게 찾는 데 매우 유용
3) 데이터베이스 성능 향상
- 고유한 주문항목ID를 기반으로 인덱싱할 경우, 데이터 검색과 관련된 데이터베이스의 성능이 향상될 수 있음
4) 복잡한 관계의 단순화
- 여러 테이블 간의 관계를 설정할 때 주문항목ID 같은 인조식별자를 사용하면 관계 설정이 더욱 명확해지고 데이터의 일관성 유지하기 쉬움
3️⃣ 인조식별자 사용 시 주의할 사항 및 단점
1) 중복 데이터로 인한 데이터 품질 저하
- 실제 데이터의 내용이 같음에도 불구하고 다른 인조식별자가 부여되어 중복 데이터 발생 가능성 있음
→ 데이터 품질 저하 및 데이터의 일관성과 정확성을 해칠 수 있음
2) 불필요한 인덱스 생성
- 인조식별자 사용 시 각 데이터에 고유한 값을 부여하기 위해 인덱스 생성 → 인조식별자 많아질수록 인덱스도 함께 증가 → 데이터베이스의 성능 저하
3) 인조식별자 사용 시 주의할 사항
- 중복 데이터 생성과 불필요한 인덱스의 생성에 주의 필요
Share article