01. 데이터베이스
01-2. 데이터 모델
[데이터 모델이란?]
- 컴퓨터에 데이터를 저장하는 방식을 정의해 놓은 개념 모형
- 대표 데이터 모델: 계층형, 네트워크형, 관계형, 객체 지향형 등
[데이터 모델의 종류]
계층형 데이터 모델
- 1960년대 말부터 1980년대 말까지 상업용 데이터베이스 시장에서 많이 사용함
- 나뭇가지 형태를 트리 구조를 활용
- 데이터 관련성을 계층별로 나누어 부모 자식 같은 관계를 정의하고 데이터를 관리
- 일대다 관계의 데이터 구조
- 부모가 여러 자식을 가질 수 있지만 자식이 여러 부모를 가질 수 없음
네트워크형 데이터 모델
- 망형 데이터 모델
- 그래프 구조를 기반
- 개체 간 관계를 그래프 구조로 연결하여 자식이 여러 부모를 가질 수 있음
객체 지향형 데이터 모델
- 1980년대 후반에 등장한 모델
- 객체 지향 프로그래밍에서 사용하는 객체 기념을 기반으로 한 데이터 모델
- 데이터를 독립된 객체로 구성, 관리, 상속, 오버라이드 등의 기능 활용
- 데이터베이스에 적용하는 것은 쉽지 않지만, 오라클 객체 관계형 DBMS 영역을 확장하고 있음
관계형 데이터 모델
- 1970년 에드거 프랭크 커드가 제안한 모델
- 현대에 가장 많이 사용하는 관계형 데이터베이스의 바탕이 되는 모델
- 다른 모델과 달리 데이터 간 관계에 초점을 둠 ( ex. 회사의 사원 정보와 소속된 부서 정보를 함께 관리하면 같은 부서의 사원들의 부서 정보는 중복됨. 부서 이름이 바뀌면 모두 찾아서 변경해줘야 함)
- 데이터와 관계형 데이터 모델의 핵심 구성 요소
데이터 | 관계형 데이터 모델 |
개체(entity) | 테이블(table) |
속성(attribute) | 열(column) |
관계(relationship) | 외래키(foreign key) |
01-3. 관계형 데이터베이스와 SQL
[관계형 데이터베이스]
- 관계형 데이터 모델 개념을 바탕으로 데이터를 저장 및 관리하는 데이터베이스
- 관계형 데이터베이스 관리 시스템(Realational DBMS, RDBMS)
- 1980년 후반부터 지금까지 가장 많이 사용하는 데이터베이스
- MS-SQL, MySQL, MariaDB, PostreSQL, DB2, Oracle 등
[SQL]
- SQL: Structured Query Language
- 에스큐엘, 시퀄이라고 부름
- 데이터베이스를 다루고 관리하는데 사용하는 데이터베이스 질의 언어
- 데이터에 대해 물어보고 결과를 얻는다
종류 | 설명 |
DQL (Data Query Language) | 데이터 조회 |
DML (Data Manipulation Language) | 데이터 저장, 수정, 삭제 |
DDL (Data Definition Language) | 객체 생성, 수정, 삭제 |
TCL (Transaction Control Language) | 트랜잭션 데이터 |
DCL (Data Control Language) | 데이터 사용 권한 |
'빅데이터 > Oracle SQL | Do it! 오라클로 배우는 데이터베이스 입문' 카테고리의 다른 글
SELECT문의 기본 형식 | 중복 데이터 삭제: DISINCT / 별칭 설정: AS / 순서 정렬: ORDER BY (0) | 2023.02.07 |
---|---|
데이터를 조회하는 방법 | SQL의 기본 문법: SELECT ~ FROM ~ (0) | 2023.02.06 |
오라클 데이터베이스 | 자료형 / 객체 / PL/SQL (2) | 2023.02.05 |
관계형 데이터베이스의 구성 요소 | 테이블 / 키(기본키, 보조키, 외래키, 복합키) (0) | 2023.02.04 |
데이터베이스란? | 데이터와 데이터베이스, DBMS (0) | 2023.02.02 |