반응형

1. File System

: 컴퓨터에서 File이나 자료를 쉽게 발견 및 접근할 수 있도록 유지, 관리하는 방법

☞ 저장매체에 있는 많은 File을 관리하는 방법이다.

 

1.1. 역할

  • File 관리 : File 저장, 참조, 공유
  • 보조 저장소 관리 : 저장 공간 할당
  • File 무결성 매커니즘 : File이 의도한 정보만 포함
  • 접근 방법 : 저장된 데이터에 접근할 수 있는 방법 제공

 

1.2. 개발 목적

  • HDD와 Main Memory 속도 차이를 줄이기 위해
  • File 관리를 용이하게 하기 위해
  • HDD의 막대한 용량을 효율적으로 이용하기 위해

 

1.3. 문제점

  • Data의 중복(Data Redundancy)
    : File System은 각 File 마다 필요한 Data를 각각 가지고 있어야 하므로 동일한 Data를 서로 다른 File에 유지해 관리한다.
  • Data의 비일관성(Data Inconsistency)
    : 데이터에 변경사항이 조금만 있어도 각 File에서 해당되는 Data를 모두 변경해야 하므로 수정에 문제가 있고, 한꺼번에 수정이 되지 않으면 Data가 서로 달라진다.
  • 정보 접근의 어려움(Difficulty in Accessing Data)
    : 기존 File System은 File의 용도에만 맞춰 제작되어 다른 Program을 만들 때는 기존의 Program을 변경하거나 개조하는 데 시간이 오래걸리며 다시 DataBase 작업을 해야한다.
  • Data의 고립(Data Isolation)
    : 정보가 여러 File에 서로 다른 형식으로 흩어져서 존재해 흩어진 정보를 이용하기 위해서는 재구성 비용이 들어가며 오랜 시간이 소요된다.
  • 무결성 문제(Integrity Problems)
    : Data를 변경하기 위해서는 여러 File에 존재하는 Data에 모두 접근해 여러 번 변경해야 한다.
  • 원자성 문제(Atomicity Problems)
    : Program이 수행 중인 작업은 전부 완료되어 저장되어하며 완료되지 못하면 아예 저장되지 않아야 한다. 즉, 수행중인 작업이 컴퓨터 고장이나 기타 의도하지 않은 이유로 중단되는 경우 작업을 전부 완료하지 못했으므로 저장하지 않고 이전의 Data를 복원한다.
  • 동시 Access 문제
    : 많은 사용자가 동시에 같은 정보에 접속해 갱신한다면 동시에 갱신되도록 해야한다. (= 정보의 일관성을 보장하도록 해야한다.)

 

2. DataBase

: 여러 사람이 공유하고 사용할 목적으로 통합 관리되는 Data들의 모임

 

2.1. 등장 목적

DataBase가 존재하기 전에는 File System을 사용해 Data를 관리했다. Data를 각각의 File 단위(Record)로 저장하며 이러한 일을 처리하기 위한 독립적인 Application과 상호 연동이 되어야 하는데 File System에서는 File에 접근하는 방식이 응용 프로그램 내에 표현되므로 응용 프로그램과 Data 간의 의존관계가 존재하게 되어 Data의 구조, 접근 방법이 변경되면 기존의 프로그램과 Data를 함께 변경해야한다.

 

즉, Data 정의가 응용 프로그램에 내포되어 있고 Program에서 Data를 접근하고 조작하는 것 외의 별도의 제어가 없다.

따라서, File 단위로 저장할 때 데이터 종속성 문제와 중복성, 데이터 무결성 문제 등이 존재해 DataBase로 관리하기 시작했다.

 

3. DBMS(DataBase Management System, 데이터베이스 관리 시스템)

: 다수의 사용자들이 DataBase 내의 Data의 생성, 접근 방법, 관리 유지할 수 있도록 전반적으로 지원하는 System

 

3.1. 기능

  • 정의 기능
    : DataBase를 관리하기 위해서는 저장할 구조를 정의해야하며 정의된 구조에 따라 저장해야한다.
  • 조작 기능
    : 사용자가 DataBase를 검색, 갱신, 삽입, 삭제 등을 할 수 있도록 지원하는 기능이다.
  • 제어 기능
    : DataBase의 정확성과 안정성을 위해 일정한 형식을 필터링해 저장하거나 여러 명이 Data를 동시 공유할 수 있도록 한다.

 

3.2. 특징

DBMS는 File System의 문제를 해결하기 위해 만들어졌기 때문에 DBMS의 특징은 곧 File System의 단점을 의미한다.

  • Data의 독립성
    • 물리적 독립성 : DataBase의 Size를 늘리거나 성능 향상을 위해 Data File을 늘리거나 새롭게 추가하더라도 관련된 응용 프로그램을 수정할 필요가 없다.
    • 논리적 독립성 : DataBase는 논리적인 구조로 다양한 응용 프로그램의 논리적 요구를 만족시킬 수 있다.
  • Data의 무결성
    : 여러 경로를 통해 잘못된 Data가 발생하는 경우의 수를 방지하는 기능으로 Data의 유효성 검사를 통해 Data이 무결성을 구현한다.
  • Data의 보안성
    : 인가된 사용자들만 DataBase나 DataBase 내의 자원에 접근할 수 있도록 계정 관리 및 접근 권한을 설정함으로써 모든 Data에 보안을 구현할 수 있다.
  • Data의 일관성
    : 연관된 정보를 논리적인 구조로 관리함으로써 어떤 하나의 Data만 변경하는 경우 발생할 수 있는 Data의 불일치성을 배제할 수 있다. 또 작업 중 일부 Data만 변경되어 나머지 Data와 일치하지 않는 경우의 수를 배제할 수 있다.
  • Data 중복 최소화
    : DataBase는 Data를 통합해서 관리함으로써 File System의 단점 중 하나인 자료의 중복과 Data의 중복 문제를 해결할 수 있다.

 

[참고]

https://security-nanglam.tistory.com/228

 

[OS] 파일 시스템(File System)이란?

[File System] #2019.07.29 파일 시스템 - 컴퓨터에서 파일이나 자료를 쉽게 발견 할 수 있도록, 유지, 관리하는 방법이다. 즉, 저장매체에는 많은 파일이 있으므로, 이러한 파일을 관리하는 방법을 말

security-nanglam.tistory.com

https://yang1650.tistory.com/28

 

데이터베이스 사용 이유 (DBMS 등장)

데이터베이스 사용 이유 '>데이터베이스 사용 이유 1.파일 처리에서 데이터베이스로의 시스템 전환 '>1.파일 처리에서 데이터베이스로의 시스템 전환 파일처리 시스템 "> 파일처리 시스템 "> 파일

yang1650.tistory.com

https://dar0m.tistory.com/245

 

[DB] 데이터베이스를 사용하는 이유와 성능

DBMS 탄생 배경 파일 시스템 개발자들은 데이터베이스가 존재하기 이전에 파일 시스템을 이용하여 데이터를 관리하였다. 데이터를 각각의 파일 단위(레코드)로 저장하며 이러한 일들을 처리하기

dar0m.tistory.com

 

반응형

+ Recent posts