관계 데이터베이스는 기능적 제약 조건과 SQL의 표현 능력 한계로 여러 응용 분야에 부적합하다는 문제가 제기되었다
- CAD computeraided design
- CAM computer aided manufacturing
- CAE conputer aided engineering
등등
이런 이유로 관계형이 아닌 다른 데이터 모델이 연구되었고 그 중하나가 객체지향 데이터 모델이다
1. 객체지향 데이터 모델
객체지향 개념에 기반을 둔 데이터 모델이다
다양한 응용 분야의 데이터 모델링을 위한 새로운 요구 사항을 지원할 뿐만 아니라, 의미상 관계가 있는 데이터베이스 구조를 표현하려고 할때 강력한 설계 기능을 제공한다
객체와 객체 식별자
객체 object
현실 세계에 존재하는 개체를 추상적으로 표현한 것
각 객체는 시스템 전체에서 유일하게 식별될 수 있는 객체 식별자를 가지고, 객체 식별자를 특정 객체에 접근하기 위한 유일한 수단으로 사용한다
객체 간의 관계는 객체 식별자를 사용해 참조할 수 있다
속성과 메서드
객체는 해당 객체의 상태를 나타내는 하나 이상의 속성과 객체의 상태를 조작할 수 있는 하나 이상의 메서드로 구성된다
속성
관계 데이터 모델의 속성과 같은 의미로 볼 수 있음
다만, 값을 여러개 가질 수 있다
사용자 정의 클래스의 하위 클래스도 도메인으로 지정할 수 있다
특정 객체의 속성과 해당 속성에 대한 메서드에 접근하려면 메시지를 사용하애 한다
한 객체의 속성 값을 수정하려면 이 역할을 담당하는 메서드를 실행시키는 메시지를 해당 객체에 보내야 한다
메시지는 객체제 접근하기 위한 공용 인터페이스 역할을 담당한다
클래스
속성과 메서드를 공유하는 유사한 성질의 객체들을 하나의 그룹화 한 것
객체는 클래스의 구성원으로 클래스 인스턴스, 객체 인스턴스라고 한다
클래스 내부에는 해당 클래스의 객체를 위한 데이터 구조와 메서드 구현에 관한 세부 사항을 기술한다
클래스 계층과 상속
클래스를 단계적으로 세분화시 클래스간 계층 관계가 발생하여 결과적으로 클래스 계층이 생긴다
클래스 계층 개념은 상속 ingeritance라는 객체지향 개념을 지원한다
복합 객체
시스템에서 기본으로 제공하지 않는 사용자 정의 클래스를 도메인으로 하는 속성을 가진 객체를 복합 객체라고 한다
복합 객체에서 사용자 정의 클래스를 도메인으로 하는 속성은 해당 클래스에 속하는 객체 인스턴스의 객체 식별자를 값으로 가지게 된다
2. 객체지향 질의 모델
객체지향 데이터베이스에서 클래스 하나 또는 클래스 하나와 해당 클래스의 하위 클래스 전체를 대상으로 하는 질의를 단일 오퍼랜드 질의라고 한다
여러 클래스를 대상으로 하는 질의를 다중 오퍼랜드 질의라고 한다
관계 데이터베이스와 달리 객체지향 데이터베이스의 데이터 모델과 질의어는 표준화되지 못했다
특히 객체지향의 개념을 완벽하게 표현하면서도 쉽게 사용할 수 있는 질의어가 아직 개발되지 않았다
'공부 > 데이터베이스' 카테고리의 다른 글
| 12. 데이터베이스 응용 기술 / 총 정리 (0) | 2025.09.16 |
|---|---|
| 12. 데이터베이스 응용 기술 / 02 객체관계 데이터베이스 / 03 분산 데이터베이스 시스템 (0) | 2025.09.16 |
| 11. 보안과 권한 관리 / 총 정리 (0) | 2025.09.15 |
| 11. 보안과 권한 관리 / 01 보안 / 02 권한 관리 (0) | 2025.09.15 |
| 10. 회복과 병행 제어 / 총 정리 (0) | 2025.09.15 |