본문 바로가기

Programming/DataBase System

Chapter1 - 전문적 데이터베이스

  • 전문적 데이터베이스

데이터베이스 시스템을 위한 몇몇의 응용 프로그램 분야들은 관계형 데이터 모델로 제한되어 있다. 그 결과 연구자들은 객체 기반의 데이터 모델과 반구조형 데이터 모델을 포함하는 응용 프로그램 도메인을 다루기 위해 몇몇의 데이터 모델들을 개발하였다.


  • 객체 기반 데이터 모델

객체 지향 프로그래밍은 점점 중요한 소프트웨어 개발의 방법론이 되어가고 있다. 이는 캡슐화, 메소드(함수), 객체 아이텐티티 개념을 더해 E-R 모델을 확장한 것처럼 보이는 객체 지향 데이터 모델(object-oriented data model)의 개발을 불러 왔다. 객체에 인터페이스를 제공하기 위한 방법들과 함께 상속, 객체 아이텐티티, 캡슐화(정보 은닉)는 객체 지향 프로그래밍의 중요한 개념들이다. 객체 지향 데이터 모델은 구조형과 집단형을 포함하는 풍부한 형 시스템을 지원한다. 1980년대에는 객체 지향 데이터 모델을 기반으로 한 데이터베이스 시스테들이 개발되기도 하였다. 현재 주요한 데이터베이스 전문 회사들은 객체 지향 데이터 모델과 관계형 데이터 모델의 특징을 합친 객체 관계형 데이터 모델(object-relational data model)을 지원하고 있다. 이것은 개체 지향뿐만 아니라 구조형이나 집단형과 같은 다양한 특징들을 더해 전통적인 관계형 모델을 확장한 것이다.



  • 반구조형 데이터 모델

반구조형 데이터 모델은 같은 형을 갖는 개별적인 데이터들이 서로 다른 속성들의 집합을 가질 수 있는 데이터의 명세를 허용한다. 이것은 아서 언급한 특정 형의 모든 데이터들은 같은 속성들의 집합을 가져야 한다는 데이터 모델들과는 대조적이다. 
    XML 언어는 초기에는 텍스트 문서에 마크업 정보를 추가하기 위해 고안되었으나 데이터 교환 분야의 응용 때문에 날로 중요해지고 있다. XML은 중첩 구조를 가진 데이터들을 표현할 수 있도록 하며, 더 나아가 데이터 구조화의 유연성을 부여하는데, 이는 일반적이지 않은 데이터들을 다룰 때 웅요하다.