상세 컨텐츠

본문 제목

[DB기초] DBMS의 역할과 데이터 모델의 종류

IT/Database

by J KIMS 2020. 10. 17. 16:29

본문

반응형

 

 

데이터 모델과 데이터 베이스

실세계를 어떻게 데이터로서 구현할지 결정하는 것이 데이터 모델이고

데이터 모델에 따라 데이터 베이스의 구조도 달라진다.

 

실세계 -> 데이터 모델 -> 데이터베이스

 

이렇게 실세계를 데이터베이스화 하는 과정을 데이터 모델링이라고 함.


데이터 베이스 관리 시스템

 

구축한 데이터베이스를 관리하기 위해서 데이터 베이스 관리 시스템(DBMS)이 존재함.

DBMS에는 대표적으로 오라클(Oracle), DB2, MySQL 이 있다.

 

DBMS의 역할은 크게 세가지로 나뉜다

  • 메타 데이터 관리 기능

  • 질문(query) 처리 기능

  • 트랜잭션(transaction) 관리 기능

💡 트랜잭션이란? DBMS에서 이루어지는 작업의 가장 작은 단위 

-> 트랜잭션 관리 : 통신장애, 미디어 장애 등의 이상들, 데이터 베이스에 동시에 접속하는 유저들의 액세스를 처리하는 것

 

👇트랜잭션에 대한 자세한 정보를 담은 문서 (나중에 읽어보자)

 

DBMS - Transaction - Tutorialspoint

DBMS - Transaction A transaction can be defined as a group of tasks. A single task is the minimum processing unit which cannot be divided further. Let’s take an example of a simple transaction. Suppose a bank employee transfers Rs 500 from A's account to

www.tutorialspoint.com

 

💡 참고 : 세계 첫 DBMS는 미국의 GE사에서 개발한 IDS(Intergrated Data Store)네트워크 모델형 데이터 베이스를 관리했다.

1968년에는 IBM의 IMS(Information Management System)이라는 DBMS와 함께 계층형 데이터 모델이 탄생했다.


데이터 모델의 종류

  • 네트워크 데이터 모델 Network Data Model

  • 계층형 데이터 모델 Hierarchical Data Model

  • 관계형 데이터 모델 Relational Data Model

  • 객체 지향 데이터 모델 Object Oriented Data Model

1. 네트워크 모델 Network Model

데이터 간의 관계를 나타내기 위해 레코드와 부모 집합 개념을 이용함.

데이터는 레코드에 기록되며 각 데이터 간의 관계를 포인터를 사용해서 나타냄.

 

각 이미지 출처 : Wikipedia

2. 계층형 모델 Hierarchical Model

네트워크 모델의 특별한 케이스라고 보면 됨. 네트워크 모델은 망구조로 다소 복잡한 편임.

계층형 모델은 포인터가 부모 레코드에서 자식 레코드로 이어져있는 트리 구조를 하고 있음.

👉 이런 구조 차이 때문에 처리 시간에 큰 차이가 발생함

 

단점 : 부모 레코드를 거치지 않고는 자식 레코드에 접근할 수 없다

 

3. 관계형 모델 Relational Model

데이터를 테이블 형태로 나타내기 때문에 알기 쉬움.

비지니스 데이터를 표현하는 데 적합하여 널리 사용된다.

 

 

4. 객체 지향 모델 Object Oriented Model

오브젝트 개념을 도입한 것. 이건 기존에 객체 지향 개념을 알고 있던 사람이라면 이해가 쉬울 듯

 

반응형

관련글 더보기

댓글 영역