반응형
-
객체-지향 데이터베이스의 정의 및 등장 배경
-
정의
- 객체-지향 패러다임을 사용하는 객체-지향 프로그램 언어에서 영향을 받아 생성된 객체-지향 기술과 데이터베이스 기술의 결합체
- 객체-지향 개념에 기반한 객체=지행 모델을 지원하는 데이터베이스 기술
-
등장 배경
- 컴퓨터 응용 분야의 확대 : CAD/CAM, 멀티미디어,CASE, AI, 문서, 하이퍼텍스트 등
-
관계형 DBMS 등과 같은 기존 DBMS들의 한계 : 비정형 데이터 연산 능력 부족, 공학용 데이터 처리 곤란 등
-
-
객체-지향 데이터베이스의 기능
-
객체의 기본 특성을 지원하기 위해 객체-지향 패러다임 보유복합 객체, 객체 식별자, 타입 및 클래스,캡슐화, 상속성, 다형성, 확장성, 오버로딩, 타입 검증.추론 등
-
기타 기능
-
버전 관리 기능
- 다중 버전을 저장하고 관리하며, 버전들을 비교하여 호환성 여부 결정
- 버전들 간의 관계를 보여주는 버전 그래프 지원 등
- 객체 질의 기능
-
-
기존 관계형 DBMS의 기능데이터의 무결성, 연속성, 데이터 질의어, 데이터 모델과 정의어, 보고서 생성 기능, 분산 기능 등
-
객체-지향 DBMS의 예ObjectSrore, Versant, O2, Gemstone 등
-
-
객체-지향 데이터베이스의 장.다점
-
장점
- 객체-지향 프로그램과의 자연스런 통합 : 객체-지향 프로그램 모델 지원
-
복잡한 객체 구조를 효과적으로 지원
- 객체-지향 프로그램 언어가 지원하는 기본적인 데이터 타입 이외에 사용자가 정의한 데이터 타입을 지원
- 한 객체가 다른 객체에 포함되는 중첩 객체(Nested Object)를 지원
- 오디오, 비디오 등과 같은 비정형 데이터를 지원
- 장시간 트랜잭션 처리 및 버전 관리 기능
- 복잡한 객체의 생성, 조회, 삭제가 기존 관계형 데이터베이스보다 월등히 우수함
-
단점
-
수학적 이론 기반 부족객체-지향 모델의 표준 개념이 미흡하며, 가장 큰 장애 요인으로써 ODMG 활동으로 개선 중
-
데이터 모델의 논리적/물리적 복잡성
- 저장 공간의 낭비 : 객체 자신의 클래스뿐만 아니라 상위 클래스에도 정보가 중복될 수 있기 때문에 저장 공간의 낭비
- 수행 속도 및 성능의 저하 유발
- 기본 데이터베이스 기능 제공 미흡 : 기존 관계형 데이터베이스와의 호환 문제(SQL 지원 못함)가 존재하는데, 이것이 객체-지향 데이터베이스의 성장을 저해하는 요인이 됨
-
질의 최적화의 복잡성 : 질의 최적화가 어렵고 비용이 많이 듬
-
-
-
객체-지향 데이터베이스 언어
-
접근 방법
- SQL과 같은 질의어에 복합 객체 등과 같은 객체-지향 개념을 추가함으로써 확장하는 방법
- 객체-지향 프로그래밍 언어를 데이터베이스를 다루도록 확장 : 지속성 지원 프로그래밍(Persistent Programming) 언어
- 객체-지향 개념을 지원하는 새로운 데이터베이스 언어 : ODMG 2.0의 ODL, OQL 등
-
적합한 객체-지향 질의어가 제안되지 못한 이유
- 데이터 모델의 구조가 복잡하고 이론적인 기반이 결여되어 있어 간단하면서도 강력한 언어를 정의하는 것이 어려움
- 캡슐화의 원리는 데이터의 구조가 사용자에게 감춰져야 하고, 반면에 질의를 위해서는 객체의 속성을 볼 수 있어야 하는 모순점이 존재
- 복잡한 객체-지향 데이터 모델에 대해 단순한 질의어를 설계하기 어려움
-
반응형
'밥벌이 > 데이터베이스' 카테고리의 다른 글
객체-관계형 데이터베이스의 개요 (0) | 2010.10.20 |
---|---|
객체-지향 데이터베이스의 구현 요소 (0) | 2010.09.13 |
내장(Embedded) SQL (0) | 2010.09.10 |
ODBC(Open Database Connectivity) (0) | 2010.09.10 |
ADO(ActiveX Data Object) (0) | 2010.09.10 |