simDev1234
심플하고 차분하게
simDev1234
전체 방문자
오늘
어제
  • 분류 전체보기
    • Computer Science
      • Basic Math
      • Data Structure
      • Algorithm
      • Database
      • OS
    • Language
      • Java
      • Kotlin
      • SQL
    • Framework
      • Spring
      • Orm&Mapper
      • 프로젝트로 스프링 이해하기
      • 스프링 라이브러리
    • Infra
      • Cloud
      • Docker
      • Redis
      • AWS, Azure
      • Device
    • Etc
      • CleanCoding
    • Git,Github

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 컨트롤러
  • 자바메모리구조
  • 참조변수
  • scanner #next() #nextLine()
  • 자바
  • JVM메모리구조
  • controllerTest
  • 자바프로그래밍
  • 스프링
  • 자바프로그램
  • null
  • 참조타입
  • 404

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
simDev1234

심플하고 차분하게

Language/SQL

파일시스템과 DBMS, RDMBS

2022. 8. 10. 03:02

|  파일 시스템과 데이터베이스 관리시스템

- 영구적인 데이터 저장을 위해서는 보조기억장치에 파일 형식으로 저장을 하는 것이 필요하다.

- 다만, 이런 파일 시스템은 응용 프로그램의 구조와 환경에 의존적이고(데이터 종속성),

  그렇기에 같은 데이터여도 구조가 다르다면 여러 개로 중복되어 저장되는(데이터 중복성) 단점이 있다.

- 데이터베이스는 이러한 파일시스템의 데이터 종속성과 데이터 중복성을 제거하기 위해 만들어졌다.

1. 파일 시스템 vs 데이터베이스 관리 시스템

  파일 시스템 데이터베이스 관리 시스템
정의 컴퓨터에서 자료를 쉽게 찾을 수 있도록 
파일 형식으로 보관 및 관리하는 체계
데이터베이스를 체계적으로 관리하기 위한 시스템
종류 FAT/NTFS(windows), ext(linux), APFS(macOS) 구분1 : RDBMS(정형), NoSql(비정형)
구분2 : 계층형/망형/관계형/객체지향형/객체관계형
장점 처리 속도가 빠르다.
구현이 간편하다.
비용이 저렴
데이터 종속성과 데이터 중복성을 해결
일관성, 무결성, 보안성 유지
데이터 공유 등..
단점 데이터 종속성*
데이터 중복성*
DB전문가의 부족
전산화 비용의 증가
대용량 디스크로의 집중적인 접근으로 과부하 발생
파일의 백업과 회복이 어려움
시스템이 복잡

 

1-1. 파일 시스템의 문제점

데이터의 종속성 응용 프로그램과 데이터간의 상호 의존관계 

* 프로그램 명세에는 보조기억장치에 들어가는 프로그램의 파일 구조 및 접근방식에 대해서 명시되어 있다.
* 프로그램은 이러한 명세에 따라서 동작하기 때문에
* 만약 데이터의 구성 방법 및 접근 방법을 수정해야할 경우, 이에 맞춰 프로그램도 수정되어야 한다.
데이터의 중복성 한 시스템 내에 내용이 같은 데이터가 중복되게 저장 관리되는 것

* 현실 세계에서는 여러 개의 프로그램이 하나의 데이터를 동시에 사용하는 경우가 있다.
* 예를 들어,
   대학교 도서관에서 책을 대여 기록을 담는 프로그램A가 있고,
   대학교 재학생들의 명단을 담고 있는 프로그램 B가 있다고 하면 
   프로그램 A와 프로그램B 모두 학교 재학생들의 이름과 학번을 데이터로 사용할 것이다.
* 이와 같이 여러 개의 프로그램이 같은 데이터를 중복해서 저장/관리할 경우, 
   다수의 프로그램들을 시간차를 두고 수정하는 작업이 필요할 것이다. (동시 수정x)

 

1-2. DBMS의 논리적 독립성 / 물리적 독립성

논리적 독립성 응용 프로그램과 DB를 독립 시킴으로써,
데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 변경되지 않음
물리적 독립성 응용 프로그램과 보조기억장치같은 물리적 장치를 독립시킴으로써,
DBMS의 성능 향상을 위해 물리적 장치를 추가해도 프로그램에는 영향을 주지 않음.

 

|  DB와 DBMS, RDMBS

데이터베이스 데이터의 저장소
DBMS(데이터베이스 관리시스템) 데이터베이스를 운영하고 관리하는 시스템

- DB의 특징

실시간 접근성 실시간으로 사용자의 요청이 있을 때 수 초 내로 결과를 제공한다
계속적인 변화 데이터베이스의 내용은 어느 한 순간의 상태이나, 데이터의 값은 시간에 따라 항상 변화한다.
동시 공유 데이터베이스는 서로 다른 업무 또는 사용자에게 동시 공유된다.

* 동시(= 병행, concurrent) : 데이터베이스에 접근하는 프로그램이 여러 개임을 뜻한다.
내용에 따른 참조 데이터베이스에 저장된 데이터는 데이터의 물리적인 위치가 아니라 데이터 값에 따라 참조한다.
데이터 독립성 데이터의 논리적 구조를 변경시켜도 응용 프로그램은 변경되지 않는다.

* 응용 프로그램과 데이터베이스를 독립시킨 것을 의미한다.(데이터 종속성 해결)

- RDBMS

RDBMS(관계형 데이터베이스) 정형화된 데이터를 관리하는 시스템으로, 가장 많이 사용되는 DBMS이다.

2-1. RDMS의 구성

- 테이블의 행과 열로 구성된다.

  열(columm), 필드(field),속성(attribute) ↓
행(row),
튜플(tuple), ---->
레코드(record)
     
     
     

2-2. RDMS의 종류

- 종류 : 오라클, MySQL, MariaDB, Microsoft SQL Sever, PostgreSQL, IBM DB2....

 

 

[ 참고 및 출처 ]

부트캠프의 강의를 듣고 정리한 내용입니다.

DBMS의 필수 기능 및 장단점 https://floating-library.tistory.com/75

데이터의 종속성과 중복성 https://rain-bow.tistory.com/20

 

'Language > SQL' 카테고리의 다른 글

데이터베이스 - 데이터베이스 생성 및 권한 부여(DDL)  (0) 2022.08.11
데이터베이스 환경 구축(설치)  (0) 2022.08.11
[DATABASE] PL/SQL 프로시져  (0) 2022.04.27
[DATABASE] MVC 모델 구현 _ 성적 관리 프로그램  (0) 2022.04.25
[DATABASE] 자바를 통한 DB 모듈화  (0) 2022.04.23
    'Language/SQL' 카테고리의 다른 글
    • 데이터베이스 - 데이터베이스 생성 및 권한 부여(DDL)
    • 데이터베이스 환경 구축(설치)
    • [DATABASE] PL/SQL 프로시져
    • [DATABASE] MVC 모델 구현 _ 성적 관리 프로그램
    simDev1234
    simDev1234
    TIL용 블로그. * 저작권 이슈가 있는 부분이 있다면 댓글 부탁드립니다.

    티스토리툴바