Database는 관련 데이터 모음을 나타내고 record는 데이터베이스 내의 단일 정보를 나타냅니다
Characteristics of Databases
데이터베이스의 특성
1) Self-describing nature of a database system
데이터베이스 시스템의 자체-설명적 특성
- 데이터베이스 시스템은 데이터베이스 자체 뿐만 아니라 메타데이터도 포함
- 메타데이터 : DB를 유지 관리하는 데 필요한 구조, 제약 조건등을 정의한 것으로 DBMS 카탈로그에 저장됨
2) Insulation between programs and data, and data abstraction
프로그램과 데이터간의 분리 및 데이터 추상화
3) Support of multiple views of the data
다양한 데이터 뷰 제공
4) Sharing of data and multiuser transaction processing
데이터 공유 및 다중 사용자 트랜젝션 처리

DBMS Features
❑ Controlling Redundancy
중복성 제어
■ 중복성 : 동일한 데이터를 여러 번 다른 위치에 저장
■ 문제점 저장공간 낭비 (예: 하드디스크, SSD), 동일한 데이터가 일관성이 없을 수 있습니다.
■ 따라서 DBMS는 중복성을 제어 할 수 있는 기능을 가져야 합니다 : 데이터 간 불일치를 금지합니다
❑ Restricting Unauthorized Access
무단 접근 제한
❑ Providing Multiple User Interfaces
다양한 사용자 인터페이스 제공
❑ Enforcing Integrity Constraints
무결성 제약조건 적용
- 무결성(Integrity) : 데이터가 주어진 제약조건을 만족하는 속성
- DBMS는 이러한 제약조건을 정의하고 적용하기 위한 기능을 제공해야 합니다

❑ Providing Backup and Recovery
백업 및 복구 제공
Data Model
■ 데이터베이스의 구조를 기술 하는 개념의 집합
■ 데이터 추상화를 달성하는 데 필요한 수단 제공
■ DB 구조를 기술하는 데 사용하는 개념의 종류에 따라 분류
❑ Conceptual data models (high-level)
- Entity: a real-world object or concept (e.g., student or course)
- Attribute: a property of interest that describes an entity (e.g., student’s name or major)
- Relationship among two or more entities: an association among them (e.g., ‘take_course’)
- 특정 데이터베이스가 생성되기 전 요구 사항 수집 단계에서 사용됨
- 엔터티 -관계(ER) 모델 은 일반적인 모델임
❑ Physical data models (low-level)
- 데이터가 컴퓨터에 저장되는 방식 설명(예: 디스크)
- 최종 사용자들이 아닌, 컴퓨터 전문가들을 위한 개념
❑ Representational data models (between these two extremes)
- It hides many details of data storage on disk but can be implemented directly
- Used in most commercial DBMSs : Relational data model, Network model, Hierarchical model
■ It is important to distinguish between the description of the database (database schema) and the database itself(instances = database state = snapshot)
* database schema
- Defined when designing a database
- Rarely changed during the database life cycle
- Schema evolution: update a database schema
Three-Schema Architecture

❑Internal Level : physical storage sturcture
■ It uses a physical data model to describe the complete details of data storage and access paths for the database
❑Conceptual Level : logical structure
■ It uses a representational data model to describe the conceptual schema
❑External or View Level
■ It has a number of external schemas or user views
- describes the part of the database structure that a particular user group is interested in
■ Each external schema is typically implemented using a high-level data model (Representational data model, Conceptual data model)
매핑 : 3단계 간의 요청 및 결과 변환 과정
❑DataIndependence
■ Logical data independence: the capacity to change the conceptual schema
■ Physical data independence: the capacity to change the internal schema
DBMS languages
❑ Data definition language (DDL)
- Defining external and conceptual schemas
- Used by the DBA and database designers
❑ Storage definition language (SDL)
- Specifying the internal schema
- DBA can control indexing choices and mapping of data to storage
❑ View definition language (VDL)
- Specifying user views and their mappings to conceptual schema
❑ Data manipulation language (DML)
- tools to manipulate the data
- Non-procedural (high-level) DML
- e.g., SQL
- Focus on which data to retrieve, rather than how to retrieve it (thus, it is called declarative)
- Procedural (low-level) DML
- It typically retrieves individual records from the database and processes each separately
- Focus on how to retrieve data
DBMS Interfaces
■ Menu-based interfaces
■ Graphical user interfaces (GUI)
■ Form-based interfaces
■ Natural language interfaces
■ Interfaces for the DBA
* 트랜잭션(Transaction)
- 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다.
- 쿼리문을 이용하여 데이터베이스를 접근 하는 것을 의미
DBMS Component Modules
■ Stored data manager
■ DDLCompiler
■ Interactive query, compiler, optimizer
■ Precompiler, DML compiler
■ Runtime database processor
■ Concurrency control and backup/recovery subsystems



