DataBase

데이터베이스란

Z00_HWAN_99 2024. 7. 22. 13:57
728x90
반응형

데이터, 정보, 지식

  • 데이터 : 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값
  • 정보 : 데이터에 의미를 부여한 것.
  • 지식 : 사물이나 현상에 대한 이해.

일상 생활의 데이터베이스

  • 데이터베이스 : 조직에 필요한 정보를 얻기 위해서 논리적으로 연관된 데이터를 구조적으로 통합해 놓은 것.
  • 간단한 거래에도 많은 데이터가 포함되어 있음(Ex. 영수증)
  • 데이터 베이스 시스템은 데이터의 검색과 변경 작업을 주로 수행함.
  • 변경이란 시간에 따라 변하는 데이터 값을 데이터 베이스에 반영하기 위해 수행하는 삽입, 삭제, 수정 등의 작업.
  • 데이터의 종류
    1. 통합된 데이터(integrated data)
      • 데이터를 통합하는 개념으로, 각자 사용하던 데이터의 중복을 최소화하여 중복으로 인한 데이터 불일치 현상 제거.(중복 완전 제거는 불가능)
    2. 저장된 데이터(stored date)
      • 문서로 보관된 데이터가 아니라 디스크, 테이프 같은 컴퓨터 저장장치에 저장된 데이터를 의미.
    3. 운영 데이터(operational data)
      • 조직의 목적을 위해 사용되는 데이터를 의미. 즉, 업무를 위한 검색을 할 목적으로 저장된 데이터.
    4. 공용 데이터(shared data)
      • 한 사람 또는 한 업무를 위해 사용되는 데이터가 아니라 공동으로 사용되는 데이터를 의미.

데이터베이스의 개념

  • 데이터베이스는 운영 데이터를 통합하여 저장하며 공용으로 사용.

데이터베이스의 특징

  1. 실시간 접근성(real time accessibility)
    • 데이터베이스는 실시간으로 서비스, 사용자가 데이터를 요청하면 몇 시간이나 몇 일 뒤에 결과를 전송하는 것이 아니라 수 초 내에 결과를 서비스.
  2. 계속적인 변화(continuous change)
    • 데이터베이스에 저장된 내용은 어느 한 순간의 상태를 나타내지만, 데이터 값은 시간에 따라 항상 바뀜. 데이터베이스는 삽입(insert), 삭제(delete), 수정(update) 등의 작업을 통하여 바뀐 데이터 값을 저장.
  3. 동시 공유(concurrent sharing)
    • 데이터베이스는 서로 다은 업무 또는 여러 사용자에게 동시에 공유. 동시(concurrent)는 병행이라고도 하며, 데이터베이스에 접근하는 프로그램이 여러 개 있다는 의미.
  4. 내용에 따른 참조(reference by content)
    • 데이터베이스에 저장된 데이트는 데이터의 물리적인 위치가 아니라 데이터 값에 따라 참조.

데이터베이스 시스템의 구성

  1. DBMS : 사용자와 데이터베이스를 연결시켜주는 소프트웨어.
  2. 데이터베이스 : 데이터를 모아 둔 토대.
  3. 데이터 모델 : 데이터가 저장되는 기법에 관한 내용.

DBMS의 장점

  • 데이터 중복 최소화
  • 데이터 일관성 유지
  • 데이터 독립성 유지
  • 관리 기능 제공
  • 프로그램 개발 생산성 향상
  • 데이터 무결성 유지, 데이터 표준 준수 용이

SQL(Structured Query Language) - 구조화된 질의어

  • 데이터 정의어(DDL, Data Definition Language)
    • Create, Alter, Drop(테이블, 인덱스, 뷰, 시퀀스 등등)
  • 데이터 조작어(DML, Data Manipulation Language)
    • Select, Insert, Delete, Update
  • 데이터 제어어(DCL, Data Control Language)
    • Grant, Revoke, Commit(TCL), Rollback(TCL)

데이터 모델의 종류

  • 계층 데이터 모델(hierarchical data model)
  • 네트워크 데이터 모델(network data model)
  • 객체 데이터 모델(object data model)
  • 관계 데이터 모델(relational data model) -> 가장 많이 쓰임!!
    • 1970년대 에드가 코드 박사가 수학의 집합 이론에 근거해서 만들어낸 모델.
    • 관계 데이터 모델 + SQL : 원하는 데이터를 쉽게 표현이 가능하여 사용자가 원하는 정보를 제공.
    • 릴레이션(relation) : 행(row)과 열(column)로 이루어진 테이블(table) -> 가장 중요함!!
    • relation database : 관계 데이터베이스
    • relational algebra : 관계 대수
    • relationship : 관계
  • 객체 - 관계 데이터 모델(object - relational data model)

3단계 데이터베이스 구조(기능 명세 -> 데이터 정의 -> 데이터베이스 구조 설계)

  • 외부 스키마
    • 일반 사용자나 응용프로그래머가 접근하는 계층. 전체 데이터베이스 중에서 하나의 논리적인 부분을 의미.
    • 여러 개의 외부 스키마(external)가 있을 수 있음.
    • 서브 스키마(sub schema)라고도 하며, 뷰(view)의 개념임.
  • 개념 스키마
    • 전체 데이터베이스의 정의를 의미.
    • 통합 조직별로 하나만 존재하며 DBA가 관리함.
    • 하나의 데이터베이스에는 하나의 개념 스키마(conceptual schema)가 있음.
  • 내부 스키마
    • 물리적 저장 장치에 데이터베이스가 실제로 저장되는 방법의 표현.
    • 내부 스키마(internal schema)는 하나.
    • 인덱스, 데이터 레코드의 배치 방법, 데이터 압축 등에 관한 사항이 포함됨.

매핑

  • 외부 / 개념 매핑
    • 사용자의 외부 스키마와 개념 스키마 간의 매핑(사상).
    • 외부 스키마의 데이터가 개념 스키마의 어느 부분에 해당되는지 대응시킴.
  • 개념 / 내부 매핑
    • 개념 스키마의 데이터가 내부 스키마의 물리적 장치 어디에 어떤 방법으로 저장되는지 대응시킴.

https://github.com/bottomsUp-99?tab=repositories

 

bottomsUp-99 - Overview

Backend Developer. bottomsUp-99 has 11 repositories available. Follow their code on GitHub.

github.com

 

728x90
반응형

'DataBase' 카테고리의 다른 글

Stored Procedure(저장 프로시저)  (0) 2024.08.08
정규화  (1) 2024.08.01
데이터 모델링  (2) 2024.08.01
무결성 제약 조건  (2) 2024.07.22
관계 데이터 모델  (0) 2024.07.22