실세계를 어떻게 데이터로서 구현할지 결정하는 것이 데이터 모델이고
데이터 모델에 따라 데이터 베이스의 구조도 달라진다.
실세계 -> 데이터 모델 -> 데이터베이스
이렇게 실세계를 데이터베이스화 하는 과정을 데이터 모델링이라고 함.
구축한 데이터베이스를 관리하기 위해서 데이터 베이스 관리 시스템(DBMS)이 존재함.
DBMS에는 대표적으로 오라클(Oracle), DB2, MySQL 이 있다.
DBMS의 역할은 크게 세가지로 나뉜다
메타 데이터 관리 기능
질문(query) 처리 기능
트랜잭션(transaction) 관리 기능
💡 트랜잭션이란? DBMS에서 이루어지는 작업의 가장 작은 단위
-> 트랜잭션 관리 : 통신장애, 미디어 장애 등의 이상들, 데이터 베이스에 동시에 접속하는 유저들의 액세스를 처리하는 것
👇트랜잭션에 대한 자세한 정보를 담은 문서 (나중에 읽어보자)
💡 참고 : 세계 첫 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
데이터 간의 관계를 나타내기 위해 레코드와 부모 집합 개념을 이용함.
데이터는 레코드에 기록되며 각 데이터 간의 관계를 포인터를 사용해서 나타냄.
네트워크 모델의 특별한 케이스라고 보면 됨. 네트워크 모델은 망구조로 다소 복잡한 편임.
계층형 모델은 포인터가 부모 레코드에서 자식 레코드로 이어져있는 트리 구조를 하고 있음.
👉 이런 구조 차이 때문에 처리 시간에 큰 차이가 발생함
단점 : 부모 레코드를 거치지 않고는 자식 레코드에 접근할 수 없다
데이터를 테이블 형태로 나타내기 때문에 알기 쉬움.
비지니스 데이터를 표현하는 데 적합하여 널리 사용된다.
오브젝트 개념을 도입한 것. 이건 기존에 객체 지향 개념을 알고 있던 사람이라면 이해가 쉬울 듯
[DB기초] ER모델과 개체, 관계 개념 설명 (0) | 2020.11.28 |
---|---|
[DB기초] SQL의 기본 개념 (0) | 2020.11.24 |
[DB기초] 관계형 데이터베이스의 관계 대수 연산 (0) | 2020.11.18 |
[DB기초] 관계형 데이터 베이스 주 키와 후보키, 키 제약이란? (0) | 2020.11.16 |
[DB기초] 관계형 데이터베이스 용어, 릴레이션의 정의 (0) | 2020.11.11 |
댓글 영역