Database - Intro

Mason Choi·2023년 11월 9일

Database

목록 보기
1/1
post-thumbnail

📍 Database System

  • Database : 데이터의 모음집
  • Database Management System : 데이터 베이스의 관리 도구

    EX) mySQL

  • Database system : DB + DBMS + Hardware + …

📍 Data VS Information

  • Data : 의미있는 information을 만들기 위한 정돈되어있지 않고 조직화되어있지 않은 것들

    시험 점수, 티켓 가격
    오늘 기온은 영상 8도이고 습도는 75%입니다

  • Information : 의사결정에 중요하고, 지식을 기반으로 하는 것들
    • 맥락, 관련성, 목적을 지닌 데이터를 포함하는 가공된 데이터

      기온이 영상 8도이고 습도가 75%인 기상 조건하에서 눈이 아닌 비가 올 확률은 지난 10년간 68% 였습니다.
      오늘 우산을 반드시 챙겨야 합니다.

📍 Purpose of Database System

  • 데이터베이스는 각 조직에서 사용하던 데이터를 모아서 통합하고 공유할 목적으로 구축

  • 파일 처리 시스템

    • Database가 개발되기 전 데이터 관리를 위해 사용한 시스템

단점

  • 데이터 의존성 ( Data Dependency )
    • 데이터 변경에 따라 프로그램 자체를 수정해야함
  • 데이터 비일관성
    • 각 유저마다 formet이 다름 즉 저장되는 데이터의 형식이 불규칙함
  • 데이터 접근의 어려움 ( Diffculty in accessing data )
    • 각각 작업마다 새로운 프로그램이 필요함
  • 무결성 문제 ( Integrity problems )
    • 새로운 제약 조건을 모든 파일에 복제하기 힘듦
  • 업데이트의 원자성 ( Atomicity of updates )
    • 부분적인 업데이트로 일관성 유지를 못 할 수 있음.
  • 보안문제
  • 데이터베이스는 이러한 단점을 모두 커버할 수 있음.
    • 라이브러리 시스템과 유사하다

데이터베이스의 단점

  • 신뢰성 이슈
    • 기업의 병목현상
    • 일부의 고장이 전체의 고장을 야기함
  • 비용문제
  • 속도문제
    • 모든 데이터 접근이 DBMS를 거치기 때문에 느리다

📍 Levels of Abstraction ( 추상화의 단계 )

  • Physical level ( schema )
    • 물리적인 단계 ( 저장된 데이터들이 시각적으로 묘사되는 것들 )
  • Logical level ( schema )
    • 논리적인 단계 ( 데이터와 데이터들의 관계를 설명하는 것들 )
    • 데이터베이스 문제는 logical level에서 관여
  • View level
    • 민감한 정보들은 감추고 보여지는 디테일들을 조절할 수 있는 것

📍 Instances and Schemas

  • Schema : 데이터베이스의 논리적인 구조
    • 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한다
    • 데이터베이스를 구성하는 데이터 개체(Entity)속성(Attribute)관계(Relationship) 및 데이터 조작 시 데이터 값들이 갖는 제약조건 등에 관한 전반적인 내용을 정의한다
    • 스키마는 사용자의 관점에 따라 외부(External)스키마개념(Conceptual)스키마내부(Internal)스키마 로 나눈다
    • 스키마는 데이터 사전에 저장되며, 다른 이름으로 메타-데이터(Meta-data) 라고도 한다.

📍 Data(Base) Models

  • Data(Base) Models : 논리적 단계를 묘사하기 위한 도구들의 모음
    • Relational model : 관계형 모델 -> Table
      ( 가장 인기있는 데이터베이스 모델 ) [mysql]
    • Object-based data models : 객체 기반 모델 -> Class
     

📍 Data Manipulation Language ( DML )

  • 구성된 데이터에 접근하고 이를 조작하기 위한 언어
    ( Query language )
  • SQL은 관계형 모델에서 가장 널리 사용되는 query language
profile
본립도생

0개의 댓글