STUDY/database

데이터베이스 기본개념

까미이모 2023. 11. 14. 23:11

database(DB)란?

전자적으로 저장되고 사용되는 관련있는 데이터들의 조직화된 집합으로 여기서 관련있는 데이터란 같은 출처나 같은 목적, 같은 서비스 안에서 생성되는 데이터들을 의미한다.

DBMS
  • database management system
  • 사용자에게 DB를 정의하고 만들고 관리하는 기능을 제공하는 소프트웨어 시스템
  • 대표적인 DBMS: PostgreSQL, MySQL, ORACLE, SQL Server
metadata
  • database를 정의하거나 기술하는 data, 데이터를 설명하기 위한 데이터
  • catalog라고도 부름
  • ex) 데이터 유형, 구조, 제약조건, 보안, 저장, 인덱스, 사용자그룹 등
  • metadata또한 DBMS를 통해 저장/관리 된다.
database system
  • database + DBMS + 연관된 application을 통들어서 database(system)라 한다.

data models 란?

  • DB의 구조를 기술하는데 사용될 수 있는 개념들이 모인 집합
  • DB구조를 추상화해서 표현할 수 있는 수단을 제공한다(DB구조: 데이터유형, 데이터 관계, 제약사항 등)
  • data model은 여러 종류가 있으며 추상화 수준과 DB구조화 방식이 조금씩 다름
  • DB에서 읽고 쓰기 위한 기본적인 동작들도 포함
1. conceptual data models
  • 일반 사용자들이 쉽게 이해할 수 있는 개념들로 이뤄진 모델
  • 추상화 수준 가장 높음
  • 비즈니스 요구사항을 추상화하여 기술할 때 사용
  • 대표적으로 ER diagram 이 있다.
2. logical data models
  • 이해하기 어렵지 않으면서도 디테일하게 DB를 구조화 할 수 있는 개념들을 제공
  • 데이터가 컴퓨터에 저장될 때의 구조와 크게 다르지 않게 DB구조화를 가능하게함
  • 특정 DBMS나 storage에 종속되지 않는 수준에서 DB를 구조화할 수 있는 모델
  • 종류
    • relational data model(MySQL, ORACLE, SQL Server)
    • object data model
    • object-relational data model (postgreSQL)

relational data model 예시

 

3. physical data models
  • 컴퓨터에 데이터가 어떻게 파일 형태로 저장되는지를 기술할 수 있는 수단을 제공
  • data format, data orderings, access path 등
  • access path: 데이터 검색을 빠르게 하기 위한 구조체(index)

 

출처: 쉬운코드 https://www.youtube.com/watch?v=aL0XXc1yGPs

'STUDY > database' 카테고리의 다른 글

DB구축 예시  (1) 2023.11.21
SQL의 개념  (2) 2023.11.21
키(key)의 종류, constraints 종류  (0) 2023.11.20
관계형 데이터베이스  (0) 2023.11.20
database schema 정리  (0) 2023.11.14