티스토리 뷰

1. 데이터베이스의 역할

  • 데이터 사이즈
    • bit → byte → KB → MB → GB → TB → PB → EB →ZB → YB
  • 데이터 처리
    • 데이터 생성 ( New Technology )→ 데이터 수집, 저장 분석( Big Data ) → 데이터 기반 학습 ( AI )
  • 데이터 관리
    • 대량의 데이터를 저장 및 관리하고 필요한 데이터를 신속하게 검색할 수 있도록 보조하는 장치에 대한 요구 증가
    • 이러한 장치를 데이터베이스
  • 데이터베이스란?
    • 한 조직의 여러 응용 시스템을 다수의 사용자공용으로 사용하기 위해 통합, 저장, 관리하는 장치
  • 데이터의 검색
    • 컴퓨터는 사람과 동일한 방식으로 데이터를 검색 및 처리
  • 웹기반 정보 시스템의 구성
    • 핸드폰에서 터치 → L4 스위치를 통해 요청이 Web 서버로 전달 → 요청을 해석 / 처리를 위해 WAS 서버로 전송 → WAS 서버에서 요청 해석 → WAS가 데이터베이스에 접근하여 사용자가 원하는 정보를 전달
  • 데이터 관리의 역사
    • 1946년 : 컴퓨터 발명
    • 1956년 : 저장장치 도입
    • 1960년 초 : 파일 처리 시스템
    • 1970년 : IBM사 SQL
    • 1980년 : 데이터 웨어하우스
    • 1990년 : 웹의 등장
    • 2000년 중반 : 클라우드 컴퓨팅
    • 2000년 말 : 빅데이터 분석
    • 2015년 ~ : IOT와 AI등장
  • 전통적 데이터 관리 방식
    • 파일 처리 시스템 ( File processing system )
      • 데이터를 별도 파일 형태로 저장하여 관리
      • 데이터베이스가 개발되기 전 데이터 관리에 사용
      • 업무 별 애플리케이션에서 사용하는 데이터를 개별 데이터 파일에 저장 및 관리하는 시스템
      • 발생 가능한 문제
        • 데이터 종속의 문제
          • 저장된 데이터가 특정 하드웨어에서 또는 특정한 사용자 및 소프트웨어에서만 사용될 수 있도록 제한하는 문제
          • 물리적 데이터 종속
            • 신규 디스크에 접근이 불가능
          • 논리적 데이터 종석
            • 인코딩 수정 시 데이터 접근 불가
        • 데이터 중복의 문제
          • 동일한 사항에 대한 중복된 데이터는 일관성, 보안성, 경제성 측면에서 문제 발생의 원인
            • 일관성
              • 한 사실에 대한 한 개의 데이터 값을 유지
            • 보안성
              • 같은 데이터에 같은 수준의 보안 유지
            • 경제성
              • 데이터에 대해 최소한의 저장 공간만 점유
        • 무결성 훼손의 문제
          • 실제 세계의 데이터는 데이터가 가질 수 있는 가능 범위(제약조건)를 포함
            • ex ) 데이터 : ‘홍길동’의 수강학점
            • ex ) 가능범위 : 한 학기 최대 수강학점 18학점
          • 데이터 무결성의 정의
            • 데이터의 정확성을 보장
            • 데이터의 값과 값에 대한 제약조건을 동시에 만족
          • 파일 처리 시스템은 데이터 무결성을 보장하기 위한 기능을 제공 X
          • 파일 처리 시스템은 저장하고자 하는 데이터를 그저 저장하기에, 정확한 데이터인지 판단을 하지 X → 신뢰성 저하
        • 동시 접근의 문제
          • 동일 데이터에 다수 사용자의 접근 허용 시 일관성이 훼손

2. 데이터베이스의 특징

  • 데이터베이스 사용의 의미
    • 애플리케이션이 직접적으로 파일에 접근하지 못하게 만들고,
    • 애플리케이션에서 받은 요청을 데이터베이스가 관리하여 파일에 접근하여 데이터를 애플리케이션에 전달
    • 이로써 데이터 사용 영역과 데이터 관리 영역이 구분
  • 데이터베이스의 특징
    • 자기 기술성
      • 자신이 저장하고 있는 데이터가 무엇인지 정확히 이해
      • 데이터와 데이터의 정의 및 설명( 메타데이터 )을 포함
    • 프로그램과 데이터의 격리 및 추상화
      • 데이터의 정확한 위치를 몰라도 데이터 접근 가능
      • 사용자에게 데이터에 대한 개념적인 표현을 제공하여 접근성 향상
    • 다중 뷰 제공
      • 각 사용자가 관심을 갖는 데이터베이스의 일부만을 표현할 수 있는 기능 제공
    • 데이터 공유와 다수 사용자 트랜잭션 처리
      • 다수의 데이터 조작 요청을 동시성 제어 기능을 통해 데이터의 일관성을 보장하면서 동시에 작업을 수행
  • 데이터베이스 시스템의 구성

 

  • 값, 데이터 그리고 메타 데이터
    • 값과 메타 데이터가 함께 관리되어야 데이터의 역할 을 수행할 수 있다.
    • 값 : 12
    • 메타 데이터 ( 값에 의미를 부여하는 부분 ) : 오늘, 낮 최고 기온
    • 데이터 : 오늘 낮 최고기온 12
  • DBMS의 3단계 구조

  • 외부 단계
    • 사용자변 접근 권한에 따라 뷰를 제공
    • 추상화의 최상위 단계
  • 개념 단계
    • 데이터베이스의 전체 구조를 추상화하는 단계
    • 개념 스키마
      • 개념 단계에서 정보가 저장되는 형식
      • 데이터베이스의 전체 구조와 각각의 관계
  • 내부 단계
    • 물리적으로 어떻게 저장되어 있는가
    • 가장 낮은 추상화 단계
  • DBMS의 3단계 구조의 예
    • 외부-개념 사상 : 논리적 데이터 독립성 확보
    • 개념-내부 사상 : 물리적 독립성 확보

  • 다수 사용자 트랜잭션 처리
    • 트랜잭션의 정의
      • 하나의 논리적 작업을 처리하기 위한 일련의 데이터베이스 명령의 집합
  • 데이터베이스 관련 용어
    • 데이터 ( Data )
      • 어떠한 사실에 대한 정량적, 정성적 특징을 나타낼 수 있는 값과 값에 대한 설명(메타 데이터)
    • 데이터베이스 (Database )
      • 특정 기관의 애플리케이션 시스템에서 사용되는 데이터의 집합
    • 데이터베이스 관리 시스템 ( DBMS )
      • 데이터베이스에 저장되는 데이터의 구성, 저장, 관리 사용을 위한 소프트웨어 패키지
    • 데이터베이스 시스템 ( Database System )
      • 정보를 데이터베이스에 저장 및 관리하여 사용자에게 요구된 형태의 정보로 제공하는 컴퓨터 기반 시스템

3. 데이터베이스 시스템의 구성요소

  • 데이터베이스 언어
    • DBMS는 사용자가 데이터를 쉽게 사용하고 다룰 수 있도록 언어 형태의 인터페이스를 제공
    • 역할에 따라 몇 종류의 언어로 구분
      • DDL ( 데이터 정의 언어 )
      • DML ( 데이터 조작 언어 )
    • 현대의 데이터베이스 언어는 자연어와 유사한 형태의 SQL로 표준화
  • 데이터 정의 언어 ( DDL )
    • 데이터베이스 객체를 생성, 수정, 삭제하기 위한 언어
    • DDL 요구 기능
      • 데이터 모델에 따라서 애플리케이션 프로그램이 요구하는 데이터의 논리적 구성이나 특징을 규정
      • 데이터가 저장장치에 저장되도록 데이터의 물리적 구성을 규정
      • 물리적 구성을 논리적 구성으로 변환이 가능하도록 데이터의 물리적 구성과 논리적 구성 간의 사상을 규정
  • 데이터 조작 언어 ( DML )
    • 구조화된 데이터에 사용자가 접근 및 조작할 수 있도록 지원하는 언어
    • 검색, 삽입, 삭제, 수정
    • DML의 유형
      • 절차적 DML
        • 사용자가 필요한 데이터를 어떻게 구할 것인지를 구체적으로 명시하는 유형
        • 데이터 조작을 위해 반복문이나 변수 선언 등의 일반적 프로그래밍 언어 기능을 포함
      • 선언적 또는 비절차적 DML
        • 사용자가 요구하는 데이터가 무엇인지만 기술하는 유형
        • 데이터가 만족해야 하는 조건만 기술하기에 절차적 DML보다 사용이 용이
        • 처리 절차를 명시하지 않기 때문에 비효율적으로 처리
    • DML의 요구 조건
      • 데이터 조작이 쉽고 간편
      • 데이터 조작 기능이 정확하고 완전
      • 사용자의 요청을 시스템 내부에서 효율적으로 처리 가능
  • 데이터베이스 시스템 아키텍처( 구조 )
    • 중앙집중 방식
      • DBMS 서버가 데이터의 전반적인 모든 관리와 처리 담당
      • 사용자는 터미널 장치를 통해 원격으로 데이터에 따른 결과를 확인 가능
      • 단일 서버가 다수의 터미널을 대신하여 데이터 처리
      • 중앙 서버의 과부하로 전체적인 성능 저하
      • 단, 구성이 간편하여 빠르고 저렴하게 구성 가능
    • 클라이언트-서버( 분산 처리 ) 방식
      • 클라이언트의 성능 향상으로 자체적인 처리 능력 보유
      • 애플리케이션 프로그램의 부하를 분산
      • 소프트웨어의 유지보수 비용 절감 및 이식성 증가

728x90

'방송대 > 데이터베이스 시스템' 카테고리의 다른 글

6강. SQL (3)  (0) 2025.03.24
5강. SQL (2)  (0) 2025.03.17
4강. SQL ( 1 )  (0) 2025.03.10
3강. 관계형 모델  (0) 2025.03.03
2강. 데이터베이스 모델링  (0) 2025.02.26
댓글
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
최근에 올라온 글
Total
Today
Yesterday
공지사항