상세 컨텐츠

본문 제목

Database, DBMS

기록 - 프로그래밍/Data

by wjjun 2020. 3. 11. 13:45

본문

파일 기반 시스템

컴퓨터에 정보를 유지하기 위해 파일에 저장하는 파일 기반 시스템이 있습니다.

파일 기반 시스템 단점

  • 중복성 : 동일한 파일을 여려 명이 사용하는 경우 파일이 중복되어 존재하게 됩니다.
  • 데이터 불일치 : 동일한 파일을 여러 명이 갖고 있는 경우 데이터가 서로 일치하지 않는다면 데이터의 일관성이 없어집니다.
  • 데이터 접근성 : 사용자는 데이터가 존재하는 파일의 위치를 정확히 알고 있어야 합니다.
  • 보안 : 누구나 데이터에 쉽게 접근할 수 있습니다.
  • 동시접속 : 파일 기반 시스템에서 파일이 사용되고 있는 경우 다른 사용자는 파일에 접근할 수 없습니다.

Database 필요성

기존 파일 기반 시스템의 단점을 보완하며 데이터 관리에 대한 비용이 낮아지게 되었습니다.

Database 속성

의미가 있는 논리적인 데이터 모음을 의미합니다.
(임의의 데이터 분류를 데이터베이스라고 하는 것은 올바른 의미는 아니라고 생각됩니다.)
고객의 구매상품과 구매시간을 기록하면 구매내역이라는 의미를 갖게 됩니다.
특정한 목적을 위해 데이터베이스는 설계되고 값이 채워지게 됩니다.
특정한 목적에 관심있는 사용자와 상호작용 합니다.

Database 이점

  • 중복 데이터 제어 : 데이터는 한 곳에만 저장 됩니다. 데이터 정규화로 일관성을 유지합니다. 중복을 방지하여 저장공간을 줄일 수 있습니다.
    (시스템 성능 향상을 위해 중복이 최소한으로 존재하기도 합니다.)
  • 데이터 공유 : 다수의 접근에도 동일한 데이터를 공유 가능합니다.
  • 무결성 제약 : 데이터의 무결성을 유지할 수 있도록 제약조건을 사용할 수 있습니다.
  • 접근 제한 : 사용자를 구분하여 접근 권한을 제한하는 것이 가능합니다.
  • 복구 : 처리하는 중간에 문제가 발생되어 실패하는 경우 데이터베이스는 이전 상태로 복원할 수 있습니다.

DBMS 필요성

데이터베이스를 관리하고 접근하기 위한 목적으로 DBMS를 사용하고 있습니다.

DBMS 역할

사용자는 애플리케이션을 통해 원하는 정보를 DBMS로 요청합니다.
DBMS는 데이터베이스에서 정보를 조회한 결과를 애플리케이션에 전달합니다.


*DBMS : MySQL, Oracle, etc

DBMS 기능

  • Defining : 데이터 타입과 구조, 제약사항을 정의합니다.
  • Constructing : DBMS에 의해 저장 장치(Database)에 데이터를 저장할 수 있습니다.
  • Manipulating : 쿼리를 이용하여 데이터의 조회, 변경, 삭제, 생성 등이 가능합니다.
  • Sharing : 다수의 사용자와 프로그램에서 데이터베이스에 동시 접근이 가능하도록 합니다.

Database 특징

  • Database catalog : DBMS는 Catalog에 데이터베이스, 테이블, 컬럼 간의 관계와 정의를 메타 데이터 형태로 저장해서 사용합니다.
    (카탈로그를 참조하여 테이블 간의 관계를 확인하고 필요한 정보를 찾습니다.)

  • 프로그램과 데이터 간 절연 : 파일 기반 시스템은 데이터 파일의 구조가 응용 프로그램에서 정의되지만 데이터베이스는 데이터 구조가 시스템 카탈로그에 저장되어 데이터는 독립성을 가질 수 있습니다.
    (카테고리 테이블에 유제품 항목을 새로 추가하는 경우 시스템 카탈로그에만 추가되면 변경된 테이블에서 사용 가능합니다.)

  • view : 사용자가 원하는 정보만을 view로 정의하여 사용할 수 있습니다.

  • 데이터 공유와 다수 사용자 : 다수의 사용자가 동일한 데이터베이스에 동시 접근이 가능합니다.


관련글 더보기

댓글 영역