Database System

9yur1·2022년 5월 3일
0

🌳 DB

목록 보기
1/2
post-thumbnail

정보와 데이터

정보(information)데이터(data)는 서로 다름.
데이터는 프로그램과 질의에 의해 정보로 변환 됨.

데이터베이스는 조직체의 응용 시스템들이 공유해서 사용하는 운영 데이터(operational data)들이 구조적으로 통합된 모임이다. 데이터베이스의 구조는 사용되는 데이터 모델에 의해 결정된다.

데이터베이스의 특징

  • DB는 데이터의 대규모 저장소로서, 여러 부서에 속하는 여러 사용자에 의해 동시에 사용됨.
  • 모든 데이터가 중복을 최소화하면서 통합됨.
  • DB는 한 조직체의 운영 데이터 뿐만 아니라 그 데이터에 관한 설명 (데이터베이스 스키마 또는 메타데이터까지 포함.
  • 프로그램과 데이터 간의 독립성이 제공됨.
  • 효율적으로 접근이 가능하고 질의를 할 수 있음.

DBMS(Database Management System)

: 데이터베이스 관리 시스템

  • DB를 정의하고, 질의어를 지원하고, 리포트를 생성하는 등의 작업을 수행하는 SW

데이터베이스 스키마

  • 전체적인 DB 구조를 뜻하며 자주 변경되지 않음.
  • DB의 모든 가능한 상태를 미리 정의.
  • 내포 (intension)라고 부름.
DEPARTMENT(DEPTNO, DEPTNAME, FLOOR)
EMPLOYEE(EMPNO, EMPNAME, TITLE, DNO, SALARY)

데이터베이스 상태

  • 특정 시점의 DB의 내용을 의미하며, 시간이 지남에 따라 계속해서 바뀜.
  • 외연(extension)이라고 부름.

데이터베이스

  • 조직체의 응용 시스템들이 공유해서 사용하는 운영 데이터들이 구조적으로 통합된 모임.
  • 시스템 카탈로그 (또는 데이터 사전)와 저장된 데이터베이스로 구분할 수 있음.
  • 시스템 카탈로그(system catalog)는 저장된 데이터베이스의 스키마 정보를 유지.

DBMS

  • 사용자가 새로운 DB를 생성하고, DB의 구조를 명시할 수 있게 하고, 유저가 데이터를 효율적으로 질의하고 수정할 수 있도록 하며, 시스템의 고장이나 권한이 없는 사용자로부터 데이터를 안전하게 보호하며, 동시에 여러 사용자가 DB를 접근하는 것을 제어하는 SW Package
  • DB 언어라고 부르는 특별한 프로그래밍 언어를 한 개 이상 제공.
  • SQL은 여러 DBMS에서 제공되는 사실상의 표준 데이터베이스 언어

사용자

  • 데이터베이스 사용자는 여러 부류로 나눌 수 있음.

하드웨어

  • DB는 디스크와 같은 보조기억장치에 저장되며, DBMS에서 원하는 정보를 찾기 위해서는 디스크의 블록들을 주기억 장치로 읽어들어야 하며, 계산이나 비교 연산들을 수행하기 위해 중앙 처리 장치가 사용됨.
  • DBMS 자체도 주기억 장치에 적재되어 실행되어야 함.

데이터베이스 시스템의 요구사항

  • 데이터 독립성
  • 효율적인 데이터 접근
  • 데이터에 대한 동시 접근
  • 백업과 회복
  • 중복을 줄이거나 제어하며 일관성 유지
  • 데이터 무결성
  • 데이터 보안
  • 쉬운 질의어
  • 다양한 사용자 인터페이스

DBMS를 사용한 데이터베이스 관리

  • 여러 사용자와 응용 프로그램들이 DB를 공유
  • 사용자의 질의를 빠르게 수행할 수 있는 인덱스 등의 접근 경로를 DBMS가 자동적으로 선택하여 수행.
  • 권한이 없는 사용자로부터 DB를 보호.
  • 여러 사용자에 적합한 다양한 인터페이스 제공.
  • 데이터 간의 복잡한 관계를 표현하며, 무결성 제약조건을 DBMS가 자동적으로 유지.
  • 시스템이 고장 나면 DB를 고장 전의 일관된 상태로 회복시킴.
  • 프로그램에 영향을 주지 않으면서 DB 구조를 변경할 수 있음.
    -> 프로그램-데이터 독립성 (Program-data independence)

DBMS의 장점

  • 중복성불일치감소.
  • 시스템을 개발하고 유지하는 비용 감소.
  • 표준화를 시행하기가 용이.
  • 보안이 향상됨.
  • 무결성 향상됨.
  • 조직체의 요구사항을 식별 가능.
  • 다양한 유형의 고장으로부터 DB를 회복 가능.
  • DB의 공유동시 접근이 가능.

DBMS의 단점

  • 추가적인 하드웨어 구입 비용이 들고, DBMS 자체의 구입 비용도 상당히 비쌈.
  • 직원들의 교육 비용도 많이 소요됨.
  • 비밀과 프라이버시 노출 등의 단점 존재.
  • 초기의 투자 비용이 너무 클 때, 오버헤드가 너무 클 때, 응용이 단순하고 잘 정의되었으며 변경되지 않을 것으로 예상 될 때, 엄격한 실시간 처리 요구사항이 있을 때, 데이터에 대한 다수 사용자의 접근이 필요하지 않을 때는 DBMS를 사용하지 않는 것이 바람직 할 수 있음.
profile
Best results with extreme efficiency

0개의 댓글