데이터베이스 - 1. 데이터베이스의 개념

어뮤즈온·2020년 12월 1일
0

정보처리기사

목록 보기
1/3

1. 정보 시스템

정보(Information) : 의사 결정에 도움을 줄 수 있는 유용한 형태로, 자료를 가공(처리)해서 얻을 수 있는 결과이다.

자료 -> 자료 처리 시스템(가공,처리) -> 정보

자료 처리 시스템

  • 일괄 처리 시스템 : 한 번에 처리하는 시스템으로 시스템 중심의 자료 처리
  • 온라인 실시간 처리 시스템 : 데이터 발생 즉시, 또는 처리 요구가 있는 즉시 처리하는 사용자 중심의 자료 처리
  • 분산 처리 시스템

2. 데이터베이스의 개념

데이터베이스의 정의

특정 조직의 업무를 수행하는 데 필요한 상호 관련된 데이터들의 모임

★ 여러 사람에 의해 공동으로 사용 될 데이터를 중복을 배제하여 통합하고, 쉽게 접근하여 처리할 수 있도록 저장장치에 저장하여 항상 사용할 수 있도록 운영하는 운영데이터

  • 통합된 데이터 : 자료의 중복을 배제
  • 저장된 데이터 : 컴퓨터가 접근할 수 있는 저장 매체에 저장된 자료
  • 운영 데이터 : 조직의 고유한 업무를 수행하는 데 존재 가치가 확실하고 없어서는 안 될 반드시 필요한 자료
  • 공용 데이터 : 여러 응용 시스템들이 공동으로 수유하고 유지하는 자료

데이터베이스의 특징

  • 실시간 접근성
  • 계속적인 변화 : 항상 최신의 데이터 유지
  • 동시 공용 : 동시에 같은 데이터를 이용할 수 있어야 한다.
  • 내용에 의한 참조 : 사용자가 요구하는 데이터 내용으로 데이터를 찾는다.

3. DBMS의 기능

DBMS(DataBase Management System)의 정의

  • 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해 주는 소프트웨어
  • 기존의 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템으로 모든 응용 프로그램들이 데이터베이스를 고용할 수 있도록 관리
  • 데이터베이스의 구성, 접근 방법, 유지관리에 대한 모든 책임을 진다

DBMS의 발전 배경

종래의 파일 처리 방식에서 데이터 파일을 독립적으로 구성함으로써, 같은 내용의 데이터가 중복 저장되는 데이터 중복성과, 응용 프로그램과 데이터 간의 상호 의존 관계에 따른 데이터 종속성을 초래하는 단점이 있다.

  • 종속성으로 인한 문제점
    데이터 파일이 보조기억장치에서 저장되는 방법이나 저장된 데이터 접근 방법을 변경할 때 응용 프로그램도 같이 변경

  • 중복성으로 인한 문제점
    1) 일관성 : 중복된 데이터 간에 내용이 일치하지 않는 상황이 발생
    2) 보안성 : 동등한 보안수준을 유지하기 어렵다.
    3) 경제성 : 저장공간 낭비, 반복 작업
    4) 무결성 : 제어의 분산으로 데이터의 정확성을 유지하기 어렵다.

DBMS의 필수 기능

1) 정의(조직) 기능

  • 저장될 데이터의 Type과 구조에 대한 정의, 이용 방식, 제약 조건 등을 명시하는 기능
  • 데이터와 데이터의 관계를 명확하게 명세

2) 조작 기능

  • 데이터 검새그 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 사용자와 데이터베이스 사이의 인터페이스 수단을 제공하는 기능

3) 제어 기능

  • 데이터베이스를 접근하는 갱신, 삽입, 삭제 작업이 정확하게 수행되어 데이터의 무결성이 유지되도록 제어
  • 정당한 사용자가 허용된 데이터만 접근할 수 있도록 보안을 유지하고 권한을 검사
  • 여러 사용자의 데이터 처리 결과가 항상 정확성을 유지하도록 병행 제어

DBMS 장·단점

데이터의 독립성

독립성은 종속성에 대비되는 말로 DBMS의 궁극적 목표이기도 하다.

  • 논리적 독립성 : 데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 변경되지 않는다.

  • 물리적 독립성 : 데이터베이스의 시스템 성능 향상을 위해 새로운 디스크를 도입하더라도 응용 프로그램에는 영향을 주지 않고 데이터의 물리적 구조만을 변경


4. 스키마(Schema)

스키마의 정의

  • 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한 메타데이터의 집합이다.
  • 데이터베이스를 구성하는 데이터 개체(Entity), 속성(Attribute), 관계(Relationship) 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 관해 전반적응로 정의
  • 사용자의 관점에 따라 외부 스키마, 개념 스키마, 내부 스키마로 나뉜다.

스키마의 특징

  • 데이터 사전에 저장되며, 메타 데이터라고도 한다.
  • 현실 세계의 특정한 한 부분의 표현으로서 특정 데이터 모델을 이용해서 만들어진다.
  • 시간에 따라 불변인 특성
  • 데이터의 구조적 특성을 의미, 인스턴스에 의해 규정

스키마의 3계층

1) 외부 스키마 = 서브 스키마 = 사용자 뷰

  • 여러 개의 외부 스키마가 존재할 수 있다.
  • 같은 데이터베이스에 대해서도 서로 다른 관점을 정의할 수 있도록 허용
  • 논리적 구조 정의

2) 개념 스키마 = 전체적인 뷰

  • 하나만 존재
  • 접근 권한, 보안 및 무결성 규칙에 관한 명세 정의
  • 전체적인 논리적 구조
  • 단순 스키마

3) 내부 스키마 = 저장 스키마

  • 물리적 구조 정의

5. 데이터베이스 언어

데이터 정의 언어(DDL)

  • DB구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적
  • 데이터 사전 파일에 여러 개의 테이블로 저장

기능
1) 외부 스키마 명세 정의
2) 논리적, 물리적 구조 및 구조 간의 사상 정의
3) 스키마에 사용되는 제약 조건 명세 정의
4) 데이터의 물리적 순서 규정

데이터 조작 언어(DML) = 서브 언어

  • 사용자(응용 프로그램)와 DBMS간의 인터페이스 제공
  • 대표적인 데이터 조작 언어에는 질의어가 있고 비절차적 데이터 언어이다.

형태
1) 절차적 조작 언어
2) 비절차적 조작 언어 : 배우기 쉽고 사용하기 쉬우나 코드의 효율성 면에서 비효율적이다.

조건
1) 사용하기 쉽고 자연 언어에 가까워야 한다.
2) 데이터에 대한 연산뿐만 아니라 데이터 간의 관계를 정확하고 완전하게 명시할 수 있어야 한다.
3) 효율적인 구현을 지원해야 한다.

데이터 제어 언어(DCL)

  • 무결성, 보안 및 권한 제어, 회복
  • 데이터를 보호하고 데이터를 관리하는 목적으로 사용

기능
1) 불법적인 사용자로부터 데이터를 보호
2) 데이터 정확성을 위한 무결성 유지
3) 시스템 장애에 대비한 데이터 회복과 병행수행 제어


6. 데이터베이스 사용자

DBA(DataBase Administrator)

데이터베이스 시스템의 모든 관리와 운영에 대한 책임을 지고 있는 사람이나 그룹

  • 데이터베이스 설계와 조작에 대한 책임
  • 행정 책임
  • 시스템 감시 및 성능 분석

응용 프로그래머

DML을 삽입해서 일반 사용자가 응용 프로그램을 사용할 수 있게, 인터페이스를 제공할 목적으로 데이터베이스에 접근하는 사람들

일반 사용자

보통 터미널을 이용하여 데이터베이스에 있는 자원을 활용할 목적으로 질의어나 응용 프로그램을 사용하여 데이터베이스에 접근하는 사람들

profile
Hello, world!

0개의 댓글