현실 세계에서 관찰되거나 측정되어 수집된 사실 또는 값 (공유, 통합, 저장, 운영)
이러한 데이터를 처리하여 의미가 있는 새로운 결과물로 만들어 낸 것
데이터를 파일 형태로 관리하는 시스템. 파일의 생성, 수정, 검색, 삭제 기능 제공. 응용 프로그램별로 필요한 데이터 별로 관리, 데이터베이스 등장 전 데이터 관리를 위해 사용
: DB, DBMS, DM(데이터 모델)로 구성
- 데이터 베이스 : 공유 데이터. 실시간 서비스로 실시간 접근성 보장, 저장된 데이터 값은 지속적 변화 발생, 파일 시스템 문제점 극복(데이터 통합에 따른 데이터 중복 최소화), 동시 공유 가능. 저장된 데이터 값에 따라 참조(사용자에 따라 접근할 수 있는 데이터의 속성을 다르게 관리 가능)
- DBMS: 사용자와 데이터베이스 연결 시스템, 무결성 보장, 장애 발생 시 회복 기능 제공, DB 통합, 데이터 종속성 및 중복성 문제 해결. 데이터 생성, 관리, 운영, 보안 기능 제공. ORACLE, MYSQL 등 다양한 종류 가능.
- 데이터 모델: 추상화 모델, 데이터 저장 기법 관련(데이터 관계, 접근 및 처리 과정), 개념적, 논리적, 물리적 모델로 구분.

구축하려는 데이터베이스가 무엇인지 파악, 도출해내는 과정
: 현실에 존재하는 데이터를 컴퓨터로 표현하기 위해 단순화 및 추상화하여 DB화하는 것을 DB모델이라 함. 데이터 모델링의 결과물을 표현하는 도구로써 물리적, 개념적, 논리적 데이터 모델로 구분할 수 있음.
: 현실 세계에 존재하는 데이터를 컴퓨터 내 DB로 변환하는 과정
- 개념적 모델링 : 현실 세계의 중요 데이터를 추출, 개념 세계로 옮기는 작업. 사용자들이 데이터를 인식하는 방식에 대한 개념을 제공. 개체, 속성, 관계로 구성 => 고수준 데이터 모델
- 엔티티-관계 모델(E-R Model 사용)
- 논리적 모델링 : 개념 세계의 데이터를 DB로 저장하는 구조로 표현하는 작업 => 저수준 데이터 모델
❤️ 관계형 데이터 모델 : 널리 사용되고 있는 논리적 DM. 2차원 테이블 형태로 표현.
- relation : 하나의 개체에 관한 데이터를 2차원 테이블 구조로 저장. FMS 관점에서 파일 대응. 릴레이션 스키마와 릴레이션 인스턴스로 구성.
속성(릴레이션 스키마): 릴레이션 열에 해당. 필드.
DB를 구성하는 가장 작은 논리적 단위
튜플(릴레이션 인스턴스): 릴레이션 행에 해당, 레코드에 해당- Domain: 하나의 속성이 가질 수 있는 값의 집합. 속성 값을 입력 및 삭제 시 적합성 판단 기준
- NULL: 속성 값이 존재하지 않거나 아직 모르는 상태
- Degree: 릴레이션 내 속성의 전체 개수
- Cardinality: 릴레이션 내 튜플의 전체 개수
정규화를 이용한 설계, E-R 모델과 릴레이션 반환 규칙을 이용한 설계
1. 요구사항 분석: DB 용도 파악 -> 요구사항 명세서
2. 개념적 설계 : DBMS에 독립적인 개념 구조 설계 -> 개념적 스키마(E-R 다이어그램)
3. 논리적 설계 : DBMS에 적합한 논리적 구조 설계
-> 모든 개체는 릴레이션으로 변환
-> 다대다 관계는 릴레이션으로 변환
-> 일대다 관계는 외래키로 표현
-> 일대일 관계는 외래키로 표현
-> 다중값 속성은 릴레이션으로 변환
4. 물리적 설계 : DBMS로 구현 가능한 물리적 구조 설계 -> 물리적 스키마
5. 구현 : SQL문 작성, DBMS에서 실행 및 DB 생성