영상 후기 - 백엔드에서 사용되는 데이터베이스(database) 기본 개념을 설명합니다~

parkkhee·2023년 4월 20일
0

  • DB 전자적으로 저장되고 사용되는 데이터들의 집합

  • DBMS 사용자에게 DB 정의하고 만들고 관리하는 기능을 제공하는 소프트웨어 시스템

  • metadata 데이터를 설명하기 위한 데이터 catalog 라고도 부름
    (데이터 유형, 구조, 제약 조건, 보안, 저장, 인덱스, 사용자 그룹 등등)

  • database system == database + DBMS + 연관된 applications

  • 쿼리 == 요청

  • data models DB의 구조를 기술하는데 사용될 수 있는 개념들이 모인 집합

  • conceptual data models: 일반 사용자들이 쉽게 이해. 비즈니스 요구 사항을 추상화 하여 기술할 때 사용 ex)ER diagram

  • logical data models: 이해하기 어렵지 않으면서도 디테일하게 DB를 구조화 할 수 있는 개념들을 제공. 데이터가 컴퓨터에 저장될 때의 구조와 크게 다르지 않게 DB 구조화를 가능하게 함. ex)relational data model(table화 하는)

  • physical data models: 컴퓨터에 데이터가 어떻게 파일 형태로 저장되는지를 기술할 수 있는 수단을 제공. 인덱스 같은것도 여기서,,

  • database schema: data model을 바탕으로 database의 구조를 기술한 것.

  • three-schema architecture: database system을 구축하는 architecture 중의 하나. 한 레벨에서의 변화가 상위 레벨에 영향을 주어선 X. 스키마 끼리의 사이 맵핑만 있다면! Good 안정적 운용 가능.
    -> internal schema: 물리적으로 데이터가 어떻게 저장되는지. data storage, data structure, access path 등등 실체가 있는 내용 기술.
    -> external schema: 사용자가 바라보는 쪽. user views라고도 불림.
    -> conceptual schema: 전체 database에 대한 구조를 기술. 물리적인 저장 구조에 관한 내용은 숨김. entities, data types, relationships, user operations(활용), constraints(제약 사항)에 집중

  • 오늘날 완벽하게 혹은 명시적으로 나누지는 않음

  • 데이터가 존재하는 곳은 internal level.

  • database language (DDL)
    -> conceptual schema 를 정의하기 위해 대부분 사용되는 언어 어떤 파라미터를 통해서 정의한다.
    -> storage definition language (SDL) 요즘 거의 파라미터 등의 설정으로 대체
    -> view definition language (VDL) external schemas를 정의하기 위해 사용되는 언어

profile
순우리말 백엔드 개발자

0개의 댓글