분석가 황규진 2024. 7. 11. 09:21

1-1. 데이터베이스의 정의와 특징

  • 데이터베이스
    • 여러 명의 사용자나 응용프로그램이 공유하는 데이터들의 집합
    • 데이터의 저장 ‘공간’
  • DBMS
    • 데이터베이스를 관리, 운영하는 시스템
    • 동시 접속 및 데이터 공유할 때 사용
    • ex)MySQL, 오라클 …
  • 데이터 무결성
    • 데이터베이스 안의 데이터는 오류가 없어야 함
    • 제약조건 이라는 특성
  • 데이터 독립성
    • 데이터베이스 크기를 변경하거나 데이터 파일 저장소를 변경하더라도 기존 응용프로그램은 영향 없음
  • 보안
    • 데이터 소유자 또는 접근 허가자만 데이터에 접근 가능
  • 데이터 중복의 최소화
    • 동일한 데이터가 여러 개 중복 저장되는 것을 방지
  • 응용프로그램 제작 및 수정이 용이
    • 통일된 방식으로 응용프로그램 작성, 유지 보수 용이
  • 데이터 안전성 향상
    • 백업, 복원 기능 사용으로 데이터 오류 문제 발생 시 복원, 복구 가능

 

1-2. 데이터베이스의 발전

  • 오프라인 관리 (ex. 종이 장부)
  • 파일 시스템 이용(ex. 메모장, 엑셀)
    • 데이터를 컴퓨터에 파일의 형태로 저장
    • 읽고, 쓰기가 편한 약속된 형태의 구조를 사용
    • 데이터의 양이 많아지면 데이터 중복으로 인한 불일치 위험
  • DBMS(데이터베이스 관리 시스템)
    • 파일 시스템의 단점 보완
    • 대량의 데이터를 효율적으로 관리, 운영

1-3. DBMS 분류

계층형 DBMS

  • 처음으로 나온 DBMS개념 - 1960년대에 시작
  •  
  • 각 계층은 트리Tree 형태, 1:N 관계

  • 문제점
    • 처음 구축한 이후 그 구조를 변경하기가 상당히 까다로움
    • 주어진 상태에서의 검색은 상당히 빠름
    • 접근 유연성 부족해서 임의의 검색에는 어려움

 

망형 DBMS

  • 계층형 DBMS의 문제점을 개선하기 위해 1970년대에 시작
  • 1:1, 1:N, N:M(다대다) 관계지원 - 효과적이고 빠른 데이터 추출

  • 문제점
    • 복잡한 내부 포인터 사용
    • 프로그래머가 이 모든 구조를 이해해야만 프로그램의 작성 가능

 

관계형 DBMS 

  • 1969년 E.F.Codd라는 학자가 수학 모델에 근거해 고안
  • 데이터베이스는 테이블이라 불리는 최소 단위로 구성
  • 이 테이블은 하나 이상의 열로 구성

  • 장점
    • 다른 DBMS에 비해 변화에 수정이 비교적 쉬움
    • 유지보수 측면에서도 편리
    • 대용량 데이터의 관리와 데이터 무결성 보장
  • 단점
    • 시스템 자원을 많이 차지해 시스템이 전반적으로 느림
    • 하드웨어 발전으로 단점이 작아짐

 

1-4 SQL 개요

SQL (Structured Query Language)

  • 관계형 데이터베이스에서 사용되는 언어
  • ‘에스큐엘’ 또는 ‘시퀄’
  • DBMS 제작 회사와 독립적
  • 다른 시스템으로 이식성이 좋음
  • 표준이 계속 발전 중
  • 대화식 언어
  • 분산형 클라이언트/서버 구조