데이터베이스

파일시스템

컴퓨터에서 파일을 관리하고 보관하기 위한 시스템을 말한다

파일시스템의 문제점

  1. 데이터 종속문제 : 응용 프로그램과 데이터파일의 상호 의존관계로 인해 데이터 파일 구조가 변경되면 응용 프로그램도 이에 맞게 변경해야 한다

  2. 데이터 중복문제 : 각 응용 프로그램마다 독립된 데이터 파일을 갖기 때문에 한 시스템 내의 데이터가 중복 저장된다

데이터 중복에 의한 문제점

  1. 일관성 문제 : 특정 데이터가 하나의 사실을 나타내도록 일관성을 유지하기 어렵다 (중복데이터를 변경할경우 나머지 데이터들까지 모두 변경해줘야 함)

  2. 보안 문제 : 중복된 데이터에 동일한 수준의 보안을 유지하기 어렵다

  3. 경제성 문제 : 추가적인 저장공간이 필요하다

  4. 효율성 문제 : 하나의 응용 프로그램이 데이터파일에 접근하는 동안 다른 응용 프로그램이 해당 데이터파일에 접근하지 못한다

데이터베이스

데이터 조직을 여러 응용 프로그램이 공유하기 위해 최소한의 중복으로 통합, 저장된 운영 데이터의 집합이다.

  • 통합된 데이터 : 데이터 중복을 최소화하고 통제하여 의도적인 중복을 파악하기 때문에 관리가 용이함

  • 공유 데이터 : 여러 응용 프로그램이 공동으로 데이터에 접근할 수 있다

파일시스템 vs 데이터베이스

파일 시스템데이터베이스

데이터를 여러 프로그램이 공유하지 못한다

데이터를 여러 프로그램이 공유할 수 있다

데이터의 중복이 발생한다

데이터의 중복을 최소화한다

데이터 무결성 보장이 어렵다

데이터 무결성을 보장한다

특징

  1. 데이터의 독립성

    • 물리적 독립성 : 데이터베이스 구조를 변경하여도 응용 프로그램을 수정할 필요 없다

    • 논리적 독립성 : 데이터베이스의 논리적 구조로 다양한 응용 프로그램의 논리적 요구를 만족시킨다

  2. 데이터의 무결성 : 데이터 유효성 검사를 통해 잘못된 데이터의 발생 가능성을 방지한다. (by Schema)

  3. 데이터의 보안성 : 접근이 허용된 사용자들만 해당 자원에 접근할 수 있도록 계정 관리 및 접근 권한을 설정할 수 있다

  4. 데이터의 일관성 : 연관된 데이터를 논리적 구조로 관리하여 일관성을 유지한다.(by FK) 일부 데이터만 변경되어 나머지 데이터와 일치하지 않는 경우를 배제할 수 있다

  5. 데이터의 중복 최소화 : 데이터를 통합하여 관리하기 때문에 데이어 중복과 이에 파생된 문제를 해결한다

key

  • 슈퍼키 : 유일성을 만족하는 속성들의 부분집합

  • 후보키 : 슈퍼키들 중에서 유일성과 최소성을 만족하는 속성들의 부분집합

  • 기본키 : 후보키들 중에서 특정 레코드를 구분할 수 있는 최소 속성들의 부분집합(null이 될 수 없다)

  • 대체키 : 후보키들 중에서 기본키로 선택된 속성들을 제외한 모든 키

  • 복합키 : 한 개 이상의 속성으로 이루어진 키

  • 외래키 : 다른 테이블의 레코드를 참조하기 위해 사용되는 키

순차 IO/랜덤 IO

순차IO : 물리적으로 인접한 페이지를 차례대로 읽는 방법

랜덤IO : 디스크의 여러 부분에 흩어진 데이터를 읽는 방법

Last updated