[DB] Basics

2024. 9. 15. 14:04·Data Base

 

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

 

'Data Base' 카테고리의 다른 글
  • [DB] ER model
  • [DB] B-Tree
vysryoo
vysryoo
  • vysryoo
    vysryoo
    vysryoo
  • 전체
    오늘
    어제
    • 분류 전체보기 (129)
      • Python (20)
      • Data structure (12)
      • Algorithm (14)
      • Operating system (18)
      • Programming language theory (12)
      • Computer architecture (6)
      • Softeware engineering (8)
      • Multicore (2)
      • Data Base (3)
      • Problem solving (24)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
vysryoo
[DB] Basics
상단으로

티스토리툴바