계층형 데이터베이스 모델
Hierarchical database model계층형 데이터베이스 모델은 데이터가 나무와 같은 구조로 구성된 데이터 모델입니다.데이터는 링크를 통해 서로 연결된 레코드로 저장됩니다.레코드는 필드의 집합이며 각 필드에는 값이 1개만 포함됩니다.레코드의 유형에 따라 레코드에 포함되는 필드가 정의됩니다.
계층형 데이터베이스 모델에서는 각 자녀 레코드에 부모 레코드가 1개만 있는 반면 각 부모 레코드는 1개 이상의 자녀 레코드를 가질 수 있습니다.계층 데이터베이스에서 데이터를 검색하려면 루트 노드부터 트리 전체를 통과해야 합니다.이 모델은 1960년대에 [citation needed]IBM이 만든 최초의 데이터베이스 모델로 인정받고 있습니다.
역사
이 계층 구조는 1960년대에 IBM에 의해 개발되어 초기 메인프레임 DBMS에 사용되었습니다. Records의 관계는 나무와 같은 모델을 형성합니다.이 구조는 단순하지만 1대 다의 관계에 한정되어 있기 때문에 유연하지 않습니다.IBM Information Management System(IMS) 및 RDM Mobile은 동일한 데이터에 대해 여러 계층이 있는 계층형 데이터베이스 시스템의 예입니다.RDM Mobile은 모바일 컴퓨터 [citation needed]시스템용으로 새롭게 설계된 임베디드 데이터베이스입니다.
Codd의 관계형 모델이 사실상 모든 주류 데이터베이스 관리 시스템에서 사용되는 사실상의 표준이 되면서 계층형 데이터 모델은 설득력을 잃었습니다.계층적 모델의 관계형 데이터베이스 구현은 1992년에 처음[1] 출판된 형태로 논의되었다. (내포된 집합 모델 참조)계층형 데이터 구성 방식은 1990년대[2] 후반 XML의 등장으로 다시 등장했습니다(XML 데이터베이스도 참조).계층 구조는 오늘날 주로 지리적 정보와 파일 [citation needed]시스템을 저장하는 데 사용됩니다.
현재, 계층적 데이터베이스 여전히는 은행, 의료,, 통신 등 매우 높은 성능 및 가용성을 요구하는 애플리케이션 특히 사용된다.계층적 데이터베이스가 Windows레지스트리의 MicrosoftWindows운영 체제의 사용의 가장 널리 쓰이는 상업적 계층적 데이터베이스의 IMS.[3]또 다른 예다.[4]
관계형 표로 표시되는 계층 데이터의 예제
조직이란 직원들 번호, 이름, 성과 백화 수와 같은 attributes/columns가 포함된 테이블에서 직원 정보를 저장할 수 있다.필요에 따라 이 단체는 컴퓨터 하드웨어에 하지만 컴퓨터 장비는 차량에 할당되는 직원에 의해 사용될 수 있는 각각의 종업원들을 제공한다.그 기구는 각 부분의 일련 번호, 형식과 사용하는 근로자가 포함된 별도 표의 컴퓨터 하드웨어 정보를 저장할 수 있다.표는 다음과 같게 나타날 수 있습니다.
|
|
이 모델에서는employee
데이터 테이블은 계층의 "상위" 부분을 나타내지만,computer
table은 계층의 "자녀" 부분을 나타냅니다.보통 컴퓨터 소프트웨어 알고리즘에서 발견되는 나무 구조와 달리, 이 모델에서 아이들은 부모를 가리킵니다.그림과 같이 종업원 1명당 여러 대의 컴퓨터 기기를 보유할 수 있지만, 각 컴퓨터 기기의 소유자는 1명뿐일 수 있습니다.
다음 구조를 고려합니다.
엠프 번호 | 지정 | 리포트 대상 |
---|---|---|
10 | 감독. | |
20 | 시니어 매니저 | 10 |
30 | 타이피스트 | 20 |
40 | 프로그래머 | 20 |
여기서 "자녀"는 "부모"와 같은 유형입니다.EmpNo 10은 20의 보스이며, 20에 대한 각 보고서 30과 40은 "ReportsTo" 열로 표시됩니다.관계형 데이터베이스 용어에서 ReportsTo 열은 EmpNo 열을 참조하는 외부 키입니다."자녀" 데이터 유형이 다른 경우 다른 테이블에 있지만 직원 테이블의 EmpNo 열을 참조하는 외부 키는 여전히 존재합니다.
이 간단한 모델은 일반적으로 인접 목록 모델로 알려져 있으며 Edgar F 박사가 도입했습니다. 관계형 모델이 계층적 [citation needed]데이터를 모델링할 수 없다는 초기 비판이 표면화된 후 코드화했다.단, 이 모델은 그래프에 대한 일반적인 인접 목록의 특수한 경우에 불과합니다.
「 」를 참조해 주세요.
레퍼런스
- ^ Michael J. Kamfonas/재귀 계층: 관계적 금기!2008-11-08 Wayback Machine 아카이브 - The Relation Journal, 1992년 10월/11월
- ^ "Web Application Development". IBM.
- ^ IBM 정보 관리 시스템
- ^ "Structure of the Registry - Win32 apps".
외부 링크

- RDBMS 계층 데이터에 대한 Troel 링크
- MySQL에서의 계층 데이터 관리(이 페이지는 MySQL.com에서 삭제되었기 때문에 archive.org에서 가져옵니다)
- MySQL 계층형 데이터: 상위 및 하위 데이터를 하나의 쿼리에 포함
- 계층 데이터베이스에서 계층 차트 작성