[소프트웨어 개발] DB

이도연·2024년 6월 9일

정보처리기사

목록 보기
8/21

DB

특정 조직의 기능을 수행하는 데 중복을 최소화하면서,
서로 연관성있는 데이터들의 집합이다.


Data Store

논리 데이터 저장소
데이터 및 데이터 간 연관성, 제약조건을 식별하여 논리적 구조로 조직화

물리 데이터 저장소
논리 데이터 저장소에 저장된 데이터와 구조들을
시스템이 운영되는 환경의 물리적 특성을 고려하여
실제 하드웨어 저장장치에 저장한 것을 의미

DBSM(database management system)

특징

  • 자료처리(파일처리) 시스템의 문제점인
    자료의 종속성과 중복성을 해결하기 위한 소프트웨어 시스템
    -> 데이터의 논리적, 물리적 독립성 유지
  • 모든 응용 프로그램들이 DB 를 공용할 수 있도록 관리
  • DB 와 사용자 간 인터페이스 역할로써,
    타당성 검사 후 DB 에서 검색하여 사용자에게 결과 제공

필수 기능

  • DB 에 저장될 데이터 타입과 구조에 대한 정의와, 데이터 이용방식 "정의"
  • 데이터 삽입, 삭제, 갱신, 조회 가능하도록 "조작"
  • 데이터 무결성과 보안 유지 "제어" (권한검사, 병행제어작업수행)

장단점

장점

  • 데이터 중복 최소화
  • 실시간 접근 방식(Realtime Accessibility)
  • 데이터 조작을 통해 최신 데이터 유지하므로 계속적 변화(Continous Evolution)적응
  • 데이터의 번지가 아닌 내용에 의한 엑세스(Content Reference)
  • 데이터의 논리적/물리적 독립성 유지

단점

  • 전산화 비용 증가
  • 데이터 손실 시 파일 회복 어려움
  • 시스템 복잡화 및 처리 속도 느림



DB 입력과 출력

유저가 DBSM 에 데이터를 요구하거나 처리를 요청할 때 SQL 을 이용한다.

데이터 접속(MAPPING) - 프로그램 코드와 DB 의 데이터를 연결하는 작업
SQL Mapping - 프로그램 코딩 시 직접 SQL 을 입력하여 DBMS 에 접속

SQL - 국제표준 DB 언어로써, 데이터에 대한 정의어/조작어/제어어로 구성
한 작업의 단위는 "트랜잭션"이라고 함.

Transaction

  • 더 이상 분할할 수 없는 논리적 기능을 수행하기 위한 최소한의 작업 단위
  • TCL(Transaction Control Language) - 트랜잭션 제어 명령어
  • 트랜잭션은 TCL 명령어를 사용하는 시점에서 끝나며, 새 트랜잭션이 시작됨.

TCL 종류

COMMIT - 지금까지 수행한 트랜잭션 명령어를 DB 에 영구히 반영
ROLLBACK - 현재 트랜잭션에 포함된 데이터 조작 관련 명령어의 수행 취소 후 이전 상태로 복귀

0개의 댓글