SlideShare a Scribd company logo
1 of 60
Download to read offline
데이터베이스
학습목표

• 데이터베이스의 정의와 기본 개념을 이해한다 .
• 데이터베이스의 종류를 살펴보고 장점과 단점을 비교한다 .
• 데이터베이스의 구성 요소를 살펴본다




                                    2/25
목차

•   데이터와 정보
•   데이터베이스와 데이터베이스 관리 시스템
•   데이터베이스 특징
•   데이터베이스 사용자
•   데이터베이스 언어
•   데이터베이스 관리 시스템
•   데이터베이스 관리 시스템의 종류
•   계층형 데이터베이스
•   네트워크형 데이터베이스
•   관계형 데이터베이스
•   객체 지향형 데이터베이스와 객체 관계형 데이터베이스
•   관계형 데이터베이스 용어




                                   3/25
데이터와 정보

• 데이터
  o   컴퓨터를 사용할 때 불규칙하게 만들어지는 다양하고 많은 값들

• 정보
  o   체계적이고 조직적으로 관리하고 사용되는 데이터
  o   여러 가지 값들로 표현되는 데이터를 의미 있고 가치 있는 형태로 가공해 놓은 것




                                                     4/25
데이터베이스와 데이터베이스 관리 시스템

• 데이터베이스
  o   특정 조직 내에서 다수의 사용자들이 공유해 사용할 수 있도록 통합하고 저장한 운영
      데이터의 집합체

• 데이터베이스 관리 시스템 (D B MS )
  o   데이터베이스를 생성하여 안정적이고 효율적으로 운영하는 데 필요한 기능들을 제공
      하는 소프트웨어




                                                 5/25
데이터베이스 특징

• 데이터의 중복성을 최소화할 수 있다 .
  o   이용하면 업무의 흐름에 따라 데이터를 통합 및 분리하여 관리할 수 있게 되므로 이러
      한 중복성을 줄일 수 있음 .




                                                  6/25
데이터베이스 특징

• 데이터의 일관성을 유지할 수 있다 .
  o   데이터의 불일치성 (In c o n s is te n c y) 을 미리 방지하여 데이터를 정확하게 만들고 사용
      자에게 신뢰할 만한 정보를 제공할 수 있음 .




                                                                7/25
데이터베이스 특징

• 데이터의 무결성을 유지할 수 있다 .
  o 무결성 (In te g rity) 이란 데이터베이스에 정확한 데이터가 유지되고 있음을 보장하는
    것으로 데이터베이스에서 가장 중요한 개념임 .
  o 제약조건에 맞지 않는 데이터는 아예 입력되지 않도록 방지하는 기능을 제공해 데이
    터베이스의 무결성을 유지함 .




                                                       8/25
데이터베이스 특징

• 데이터의 독립성을 유지할 수 있다 .
  o 데이터의 표현 방법이나 저장 위치가 변하더라도 응용 프로그램에는 아무런 영향을
    미치지 않는 것을 데이터의 독립성이라고 함 .
  o 데이터베이스를 사용하면 데이터의 독립성을 유지할 수 있으며 , 관계형 데이터 베이
    스의 경우 데이터를 테이블 구조로 관리하기 때문에 독립성을 더욱 강화할 수 있음 .




                                                9/25
데이터베이스 특징

• 데이터의 공유성을 최대화할 수 있다 .
  o   데이터베이스는 공동작업에 맞게 구조적으로 설계되며 통합된 체계에 의해 저장된 값
      들이 유지 · 관리되어야 하며 , 조직의 구성원들은 응용 프로그램을 통해 데이터베이
      스에 저장된 공유 데이터들로부터 각자의 업무에 필요한 정보를 생성할 수 있음 .

• 데이터의 보안성을 보장할 수 있다 .
  o   데이터베이스 시스템의 성능을 평가하는 중요한 요소로 , 최근 대부분의 데이터베이
      스 시스템은 이러한 보안 기 능을 제공함 .

• 데이터를 표준화하여 관리할 수 있다 .
  o   데이터를 사용 목적 등의 유형별로 분류해 데이터의 형식이나 길이 , 이름 등을 설정
      할 수 있음




                                                  1 0/25
데이터베이스 구조

• 데이터베이스 시스템 (D atab as e S ys te m )
   o   하드웨어 장치에 저장되는 데이터와 사용자 , 데이터베이스 관리를 위한 소프트웨어
       등의 요소들을 총괄한 개념

• 데이터베이스 시스템의 구성 요소와 관계




                                                 1 1 /25
데이터베이스 사용자

• 데이터베이스 관리자 (D B A, D atab as e Ad m in is trato r)
   o   데이터베이스 설계 · 정의 , 효율적인 관리 · 운영 등 데이터베이스 시스템을 전체적으
       로 총괄 관리 , 제어함

• 응용 프로그래머 (Ap p lic atio n Pro g ram m e r)
   o   데이터베이스의 물리적인 저장 구조를 설계 및 정의
   o   최종 사용자들의 요구에 맞는 적합한 인터페이스와 응용 프로그램을 개발

• 최종 사용자 (E n d U s e r)
   o   데이터베이스를 실질적으로 사용하는 사람




                                                       1 2/25
데이터베이스 언어

• 데이터 정의어 (D D L, D ata D e fin itio n Lan g u ag e )
   o 데이터베이스 관리자나 응용 프로 그래머가 데이터베이스의 논리적 구조를 정의하기
     위해 사용하는 언어
   o 설계 모델에 따라 데이터 구조를 만들고 이미 만들어진 구조를 변경 · 삭제할 수 있음
   o 정의된 내용은 데이터 사전 (D ata D ic tio n ary) 에 저장


• 데이터 조작어 (D ML, D ata Man ip u latio n Lan g u ag e )
   o   데이터베이스에 저장되어 있는 데이터를 처리하기 위해 사용하는 언어
   o   데이터 검색 (Re trie val), 추가 (In s e rt), 삭제 (D e le te ), 갱신 (U p d ate ) 작업 수행




                                                                                      1 3/25
데이터베이스 관리 시스템

• 정의
  o   데이터베이스를 생성해 운영하는 데 필요한 모든 기능들을 제공하는 소프트웨어

• 기능
  o   자료 정의 및 저장 관리 기능
        디스크 기억 장치에 데이터베이스 공간을 할당하여 물리적인 저장 구조를 만들고 이에 접근
         하는 방법을 제공

  o   질의 처리 및 트랜잭션 기능
        데이터베이스에 저장되어 있는 데이터를 처리하기 위해 사용자가 입력한 요구 사항들을 번
         역하여 실행




                                                      1 4/25
데이터베이스 관리 시스템의 종류

• 대표적인 D B MS




                    1 5/25
데이터베이스 종류

• 데이터베이스의 종류 및 발전 과정




                       1 6/25
계층형 데이터베이스

• 계층형 데이터베이스 (H B D ) 의 특징
  o   계층형 데이터 모델 사용
  o   데이터는 트리 형태로 구성
  o   각 데이터 요소 ( 개체 ) 들은 상하 관계를 나타내는 링크로 구성
  o   현실 세계에서 하나의 조직이 여러 구성원으로 이루어지는 형태를 표현하기에 적합
  o   각 개체 간의 관계를 명확하게 기술해야 함
  o   개체들이 링크로 연결되어 있어 개체 간의 관계가 변경되거나 추가 , 삭제되는 경우
      기존의 구조를 변경하기 어려움




                                                 1 7/25
네트워크형 데이터베이스

• 네트워크형 데이터베이스 (N D B ) 의 특징
  o 네트워크형 데이터 모델 사용
  o 개체와 개체 관계를 그래프 구조로 연결
  o 계층형 데이터 모델과 유사하나 부모 ( 상위 개체 ) 를 여러 개 가질 수 있다는 점이 다
    름
  o 네트워크 구조로 진행되는 업무를 표현할 때 편리함
  o 계층형 데이터베이스에 비해 구조가 복잡해지는 단점이 있음




                                                    1 8/25
관계형 데이터베이스

• 관계형 데이터베이스 (RD B ) 의 특징
  o   관계형 데이터 모델 사용
  o   현재까지 가장 안정적이고 효율적인 데이터베이스로 알려져 있음
  o   개체를 테이블로 사용하고 개체들 간의 공통 속성을 이용해 서로 연결
  o   자료의 구조가 단순한 업무에 적합




                                              1 9/25
객체 지향형 데이터베이스와 객체 관계형 데이터베이스

• 객체 지향형 데이터베이스 (O O D B ) 의 특징
  o   1 980 년대 후반에 등장한 데이터베이스
  o   객체 지향 프로그래밍 개념에 기반
  o   데이터와 프로그램을 독립적인 객체의 형태로 구성
  o   복잡한 데이터 유형을 처리하기 쉽고 객체들을 이해하기 쉬움
  o   개념적인 형태로 실제 사용하기는 어렵기 때문에 아직까지 완전한 형태의 객체 지향
      형 데이터베이스를 구현하지 못함

• 객체 관계형 데이터베이스의 특징
  o   1 990 년대 후반에 등장
  o   멀티미디어 데이터 처리가 많아짐에 따라 사용되기 시작
  o   관계형 데이터베이스에 객체 지향 개념을 도입
  o   비교적 널리 사용되고 있음




                                                20/25
관계형 데이터베이스 용어

• 테이블 형태의 데이터 구조




                   21 /25
관계형 데이터베이스 용어 - 테이블 (Tab le )/ 필드 (F ie ld )

• 테이블의 특징
  o   릴레이션 (Re latio n ) 혹은 엔티티 (E n tity, 개체 ) 라고도 함
  o   열 (C o lu m n ) 과 행 (Ro w) 으로 구성됨

  o   테이블 구성 조건
        테이블에 포함된 행들은 유일해야 하고 중복된 행이 존재하지 않아야 함 .
        테이블에 포함된 행들 간에는 순서가 존재하지 않음 .
        테이블을 구성하는 열들 간에는 순서가 존재하지 않음 .

• 필드의 특징
  o   속성 (Attrib u te ) 혹은 컬럼 (C o lu m n ) 이라고도 함
  o   테이블의 열에 해당
  o   데이터 값을 기억하는 기억 단위
        예 ) 회원 테이블의 필드 : 회원 ID , 이름 , 주민등록번호 , 주소
  o   차수 (d e g re e ) : 테이블에 포함된 필드의 개수
        예 ) 회원 테이블의 차수 : 4




                                                        22/25
관계형 데이터베이스 용어 - 레코드 (Re c o rd )/ 도메인
(D o m ain )
• 레코드의 특징
  o   투플 (Tu p le ) 이라고도 함
  o   테이블의 행에 해당
        예 ) 회원 테이블의 레코드 : 6 개 /
  o   카디낼러티 (C ard in ality)
        테이블에 포함된 레코드의 개수

• 도메인의 특징
  o   필드가 가질 수 있는 값들의 집합
  o   필드를 생성할 때는 데이터 형식 (D ata Typ e ) 을 정의하는데 , 데이터 형식에 맞는 값
      들의 집합을 의미
        예 ) 회원 테이블에서 주민등록번호 필드의 도메인 : 1 3 자리의 숫자
  o   도메인의 역할
        데이터베이스에 입력되는 자료의 오류를 방지하기 위해 필요




                                                          23/25
관계형 데이터베이스 용어 - 키 (Ke y)

• 키의 특징
  o   테이블 내의 레코드들을 서로 구별할 수 있는 필드의 집합
  o   키 값은 유일한 값을 가져야 함
       예 ) 회원 테이블의 키 : 회원 ID 필드

• 키의 종류




                                        24/25
데이터베이스 개발 단계
학습목표

• 데이터베이스 개발에 필요한 각 단계에 대해 이해한다 .
• 데이터베이스 설계에 필요한 기본 이론을 이해한다 .
• 정규화 개념을 이해하고 예제를 통해 정규화하는 방법을 익힌다 .




                                        27/25
목차

•   요구 사항 분석
•   논리적 설계
•   물리적 설계
•   제 1 정규화
•   제 2 정규화
•   제 3 정규화




               28/25
데이터베이스 개발 개요

• 데이터베이스 개발 계획의 필요성
 o   사용자 요구에 맞는 효율적인 데이터베이스 구축

• 데이터베이스 개발 단계




                                 29/25
요구 사항 분석

• 목적
  o   데이터베이스를 구축하고자 하는 사용자들의 목적이 무엇인지 파악
  o   데이터베이스 구축 목적 , 업무 흐름 , 개발 범위 등 사용자와 개발 환경에 대한 여러
      가지 요구사항을 면담과 문서를 통해 분석

• 산출물
  o   요구 사항 명세서
        분석된 요구사항을 기술하는 것으로 , 이후의 모든 설계와 구축 작업의 기초가 되는 자료




                                                        30/25
요구 사항 분석

•   업무 흐름도
    o   정보가 처리되는 조직과 부서 간의 정보 생성 및 이동에 대한 흐름을 그림으로 표현한 것




                                                           31 /25
요구 사항 분석

•   업무 분석
    o   기존 업무에 대한 분석과 동시에 미래의 시스템을 위한 개선점을 찾아내는 창조적인 일
    o   현행 시스템에 대한 정보를 얻고 업무 처리 단계를 분석하고 나면 새로 개발하게 될 데이터베이
        스를 포함한 신규 시스템에 대한 계획 수립

• 요구 사항 분석 절차




                                                         32/25
논리적 설계

• 목적
  o 업무 처리에 필요한 자료와 속성을 기술하고 자료 간의 관계를 정의
  o 특정 종류의 데이터베이스에 구애 받지 않고 데이터베이스의 골격을 구축하는 작업
    단계
  o 데이터 모델링이라고도 함


• 산출물
  o E RD (E n tity- Re latio n s h ip D iag ram )
  o 데이터베이스의 전체 구조를 쉽게 나타낼 수 있으며 , 사용자와 함께 업무를 분석하
    고 검토할 때도 이용
  o 엔티티 (E n tity) 와 엔티티 간의 관계를 이해하기 쉽게 정해진 표기법에 따라 그림으로
    표시




                                                     33/25
논리적 설계

• E RD 용어
  o   엔티티 (E n tity, 개체 )
        관리 대상인 정보를 갖고 있는 사람이나 사물 , 사건 , 개념 등을 의미
        요구 사항 명세서에 명사형으로 표현
        ERD 에서 사각형으로 표시



  o   속성 (Attrib u te )
        성질이나 상태 등 엔티티가 가질 수 있는 세부적인 특성
        타원으로 표현되며 엔티티를 표현하는 사각형에 실선으로 연결




                                                    34/25
논리적 설계

•   인스턴스 (In s tan c e )
     o   엔티티의 구체적인 하나의 예 , 즉 단일 사례
     o   인스턴스의 집합이라고도 함




                                     35/25
논리적 설계

•   기본 키 (Prim ary Ke y)
    o 하나의 엔티티 내에 똑같은 인스턴스가 존재하면 인스턴스를 서로 구별해 검색할 수 없고 데이
      터가 중복되는 문제 발생
    o 인스턴스를 서로 구별할 수 있는 유일한 속성 값 필요
    o 한 개 이상의 속성 조합으로 구성된 기본 키도 사용 가능
    o ERD 에서 기본 키를 표현하려면 기본 키로 설정된 속성에 밑줄 표시




                                                      36/25
논리적 설계

•   관계 (Re latio n s h ip )
     o   엔티티 간의 연관성
     o   요구 사항 명세서에 동사형으로 표현
           ( 예 ) 회원과 도서 : ‘ 주문 관계’ , 사원과 부서 : ‘ 소속 관계’

     o   ERD 에서는 관계가 있는 엔티티를 실선으로 서로 연결하고 마름모 안에 그 관계를 표시함 .




                                                               37/25
논리적 설계

•   일대일 관계
    o   회원 한 명은 도서를 한 번만 주문할 수 있다는 의미임 .




•   일대다 관계
    o   회원 한 명이 도서를 여러 번 주문할 수 있다는 의미임 .




•   다대다 관계
    o   엔티티 간의 관계가 다대다인 경우는 실생활에서 흔히 볼 수 있음 .
    o   다대다의 관계로 표현하면 회원 한 명이 도서를 여러 번 주문할 수 있고 , 동일한 도서를다른 회
        원도 주문할 수 있다는 의미임 .




                                                           38/25
논리적 설계

• E RD 작성
  o 1 단계 : 개념적으로 단위 업무에 필요한 엔티티들을 정의하고 엔티티들 간의 관계를
    설정
  o 2 단계 : 앞에서 작성된 단위 업무별 E RD 들을 하나의 E RD 로 통합 . 이때 중복되
    거나 불일치되는 엔티티가 있어서는 안됨 .




                                                      39/25
39/25
물리적 설계

• 목적
  o   개발에 사용할 데이터베이스의 종류 선정 & 구현 가능하도록 구체적으로 설계

• 단계
      ① E RD 로 나타난 엔티티를 테이블로 변환
      ② 테이블들 간 관계를 참조 키로 설정
      ③ 속성의 데이터 형식과 각종 제약조건 , 인덱스 설정 등 테이블 명세 정의
• 산출물
  o   엔티티들을 각각 하나의 테이블로 나타내고 엔티티의 속성을 테이블의 필드로 만듦
  o   관계의 참조 키 표현
  o   E RD 에서는 엔티티들을 서로 연결함으로써 두 엔티티 간의 연관 관계를 표현




                                                   40/25
물리적 설계

• 일대일 관계
 o   두 테이블을 한 테이블로 통합




                        41 /25
물리적 설계

• 일대다 관계
 o   일 (1 ) 에 해당하는 엔티티의 기본 키 (PK) 를 다 (n ) 에 해당하는 엔티티의 테이블에
     포함시키고 참조 키 (F K) 로 만듦




                                                          42/25
물리적 설계

• 다대다 관계
 o 새로운 테이블을 하나 만들고 다대다 관계에 있는 두 엔티티의 기본 키들을 새 테이블
   의 참조 키 필드에 포함시킴 .
 o 새 테이블의 기본 키를 만드는 방법
      두 개의 참조 키를 조합하여 새 테이블의 기본 키로 설정




                                              43/25
물리적 설계
 o   새로운 필드를 추가하여 기본 키로 설정




                             44/25
물리적 설계

• 테이블 명세
 o   각각의 엔티티를 테이블로 바꾸고 연관 관계를 참조 키로 설정한 후 테이블의 각 필드
     들에 대한 데이터 형식 (D ata Typ e ) 과 제약조건 , 인덱스 등을 정의




                                                45/25
물리적 설계




         46/25
정규화

• 정의
  o   데이터의 중복을 막고 무결성을 강화하기 위해 하나의 테이블을 둘 이상으로 분리하
      는 작업

• 정규화 단계
        ➀   제 1 정규화 (Firs t N o rm alizatio n )
        ➁   제 2 정규화 (S e c o n d N o rm alizatio n )
        ➂   제 3 정규화 (Th ird N o rm alizatio n )
        ➃   보이스 - 코드 정규화 (B o yc e - C o d d N o rm alizatio n )
        ➄   제 4 정규화 (Fo u rth N o rm alizatio n )
        ➅   제 5 정규화 (Fifth N o rm alizatio n )
        ➆   비정규화 (D e - n o rm alizatio n )




                                                                   47/25
정규화

• 정규화 예제




           48/25
정규화

•   정규화 전 : 주문 내역 테이블




                        49/25
제 1 정규화

• 정의
  o   테이블에 있는 각 필드의 값들이 단일 값을 가지도록 하는 것
  o   테이블의 각 행과 열에는 오직 하나의 값만 들어 있어야 함




                                          50/25
제 1 정규화

•   수정된 주문내역 테이블은 각 필드의 값들이 단일 값으로 구성되어 있지만 , 주문번호가
    중복되어 나타나므로 기본 키로 설정할 수 없음
•   기본 키 설정을 위해 일련번호 필드를 먼저 추가하여 테이블 수정




                                                 51 /25
제 2 정규화

• 정의
  o   키가 아닌 모든 필드의 값이 기본 키에 종속되어야 함
  o   기본 키 중 일부 필드에만 종속적인 관계가 있는 필드들이 있을 경우에는 종속적 관계
      에 있는 필드들을 기존 테이블에서 분리해 새로운 테이블을 생성




                                                 52/25
제 2 정규화

•   주문번호에 종속적인 필드 ( 회원 ID , 이름 , 주문일 ) 를 분리해 새로운 테이블 생성 : 주
    문 기본 정보 테이블




                                                         53/25
제 3 정규화

• 정의
  o   특정 필드의 값이 키가 아닌 다른 필드에 종속적일 경우 이를 분리하는 것




                                                 54/25
제 3 정규화

•   종속적인 필드를 분리하여 새 테이블 생성 : 도서 테이블




                                      55/25
제 3 정규화

• 정규화 과정 요약




              56/25
제 3 정규화




          57/25
제 3 정규화




          58/25
제 3 정규화




          59/25
데이터베이스의 이해

More Related Content

What's hot

Presentation1 өгөгдлийн сан
Presentation1 өгөгдлийн санPresentation1 өгөгдлийн сан
Presentation1 өгөгдлийн санbaterden
 
Text Classification/Categorization
Text Classification/CategorizationText Classification/Categorization
Text Classification/CategorizationOswal Abhishek
 
Mongo DB schema design patterns
Mongo DB schema design patternsMongo DB schema design patterns
Mongo DB schema design patternsjoergreichert
 
Data Warehouse Architecture.pptx
Data Warehouse Architecture.pptxData Warehouse Architecture.pptx
Data Warehouse Architecture.pptx22PCS007ANBUF
 
링크드 데이터 구축 공정 가이드V1.0
링크드 데이터 구축 공정 가이드V1.0링크드 데이터 구축 공정 가이드V1.0
링크드 데이터 구축 공정 가이드V1.0Hansung University
 
01.표준프레임워크개요
01.표준프레임워크개요01.표준프레임워크개요
01.표준프레임워크개요Hankyo
 
8-класс. Форматтоо
8-класс. Форматтоо8-класс. Форматтоо
8-класс. ФорматтооKasymbek Junusaliev
 
компьютерт мэдээллийг боловсруулах
компьютерт мэдээллийг боловсруулахкомпьютерт мэдээллийг боловсруулах
компьютерт мэдээллийг боловсруулахMr_Endko
 
өгөгдлийн сангийн системийн үндэс
өгөгдлийн сангийн системийн үндэсөгөгдлийн сангийн системийн үндэс
өгөгдлийн сангийн системийн үндэсБямбаа Авирмэд
 
1.2 file shahah
1.2 file shahah1.2 file shahah
1.2 file shahahbudkhand_2
 
Introduction to Data streaming - 05/12/2014
Introduction to Data streaming - 05/12/2014Introduction to Data streaming - 05/12/2014
Introduction to Data streaming - 05/12/2014Raja Chiky
 
Вэб технологи, түүний хэрэглээ 10-р анги
Вэб технологи, түүний хэрэглээ 10-р ангиВэб технологи, түүний хэрэглээ 10-р анги
Вэб технологи, түүний хэрэглээ 10-р ангиtsbmb
 
The Role of Natural Language Processing in Information Retrieval
The Role of Natural Language Processing in Information RetrievalThe Role of Natural Language Processing in Information Retrieval
The Role of Natural Language Processing in Information RetrievalTony Russell-Rose
 

What's hot (20)

Lec09 deadlock
Lec09 deadlockLec09 deadlock
Lec09 deadlock
 
Presentation1 өгөгдлийн сан
Presentation1 өгөгдлийн санPresentation1 өгөгдлийн сан
Presentation1 өгөгдлийн сан
 
Text Classification/Categorization
Text Classification/CategorizationText Classification/Categorization
Text Classification/Categorization
 
Mongo DB schema design patterns
Mongo DB schema design patternsMongo DB schema design patterns
Mongo DB schema design patterns
 
Data Access Patterns
Data Access PatternsData Access Patterns
Data Access Patterns
 
Data Warehouse Architecture.pptx
Data Warehouse Architecture.pptxData Warehouse Architecture.pptx
Data Warehouse Architecture.pptx
 
Web mining
Web miningWeb mining
Web mining
 
링크드 데이터 구축 공정 가이드V1.0
링크드 데이터 구축 공정 가이드V1.0링크드 데이터 구축 공정 가이드V1.0
링크드 데이터 구축 공정 가이드V1.0
 
01.표준프레임워크개요
01.표준프레임워크개요01.표준프레임워크개요
01.표준프레임워크개요
 
Lec14 demandpage
Lec14 demandpageLec14 demandpage
Lec14 demandpage
 
8-класс. Форматтоо
8-класс. Форматтоо8-класс. Форматтоо
8-класс. Форматтоо
 
компьютерт мэдээллийг боловсруулах
компьютерт мэдээллийг боловсруулахкомпьютерт мэдээллийг боловсруулах
компьютерт мэдээллийг боловсруулах
 
лекц-1
лекц-1лекц-1
лекц-1
 
өгөгдлийн сангийн системийн үндэс
өгөгдлийн сангийн системийн үндэсөгөгдлийн сангийн системийн үндэс
өгөгдлийн сангийн системийн үндэс
 
1.2 file shahah
1.2 file shahah1.2 file shahah
1.2 file shahah
 
Lec01 intro (1) (2)
Lec01 intro (1) (2)Lec01 intro (1) (2)
Lec01 intro (1) (2)
 
Introduction to Data streaming - 05/12/2014
Introduction to Data streaming - 05/12/2014Introduction to Data streaming - 05/12/2014
Introduction to Data streaming - 05/12/2014
 
Вэб технологи, түүний хэрэглээ 10-р анги
Вэб технологи, түүний хэрэглээ 10-р ангиВэб технологи, түүний хэрэглээ 10-р анги
Вэб технологи, түүний хэрэглээ 10-р анги
 
алгоритм
алгоритмалгоритм
алгоритм
 
The Role of Natural Language Processing in Information Retrieval
The Role of Natural Language Processing in Information RetrievalThe Role of Natural Language Processing in Information Retrieval
The Role of Natural Language Processing in Information Retrieval
 

Viewers also liked

데이터베이스 정규화
데이터베이스 정규화데이터베이스 정규화
데이터베이스 정규화Lee Seongje
 
영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)_ce
 
서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)_ce
 
ERD를 이용한 DB 모델링
ERD를 이용한 DB 모델링ERD를 이용한 DB 모델링
ERD를 이용한 DB 모델링Young D
 
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드cranbe95
 
DB Project - Gmarket
DB Project - Gmarket DB Project - Gmarket
DB Project - Gmarket Han Sung Kim
 
NoSQL distilled 왜 NoSQL인가
NoSQL distilled 왜 NoSQL인가NoSQL distilled 왜 NoSQL인가
NoSQL distilled 왜 NoSQL인가Choonghyun Yang
 
데이터베이스 모델링
데이터베이스 모델링데이터베이스 모델링
데이터베이스 모델링Hoyoung Jung
 
데이터베이스 프로젝트 최종보고서
데이터베이스 프로젝트 최종보고서데이터베이스 프로젝트 최종보고서
데이터베이스 프로젝트 최종보고서Young-jun Park
 
데이터베이스 베이직 소개
데이터베이스 베이직 소개데이터베이스 베이직 소개
데이터베이스 베이직 소개Hoyoung Jung
 
Sns가 사회에 미치는 영향
Sns가 사회에 미치는 영향Sns가 사회에 미치는 영향
Sns가 사회에 미치는 영향승완 김
 
20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/StudioDevgear
 
한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overview한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overviewYoung D
 
Not only sql 정리
Not only sql 정리Not only sql 정리
Not only sql 정리상봉 이
 
구글을 지탱하는 기술 요약 - Bigtable
구글을 지탱하는 기술 요약 - Bigtable구글을 지탱하는 기술 요약 - Bigtable
구글을 지탱하는 기술 요약 - Bigtable혜웅 박
 
관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016
관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016
관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016Amazon Web Services Korea
 
디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론Baro Kim
 
제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30
제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30
제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30Donghan Kim
 

Viewers also liked (20)

데이터베이스 정규화
데이터베이스 정규화데이터베이스 정규화
데이터베이스 정규화
 
영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)
 
DB 설계 과제
DB 설계 과제DB 설계 과제
DB 설계 과제
 
서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)
 
ERD를 이용한 DB 모델링
ERD를 이용한 DB 모델링ERD를 이용한 DB 모델링
ERD를 이용한 DB 모델링
 
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
 
DB Project - Gmarket
DB Project - Gmarket DB Project - Gmarket
DB Project - Gmarket
 
NoSQL distilled 왜 NoSQL인가
NoSQL distilled 왜 NoSQL인가NoSQL distilled 왜 NoSQL인가
NoSQL distilled 왜 NoSQL인가
 
데이터베이스 모델링
데이터베이스 모델링데이터베이스 모델링
데이터베이스 모델링
 
데이터베이스 프로젝트 최종보고서
데이터베이스 프로젝트 최종보고서데이터베이스 프로젝트 최종보고서
데이터베이스 프로젝트 최종보고서
 
데이터베이스 베이직 소개
데이터베이스 베이직 소개데이터베이스 베이직 소개
데이터베이스 베이직 소개
 
Sns가 사회에 미치는 영향
Sns가 사회에 미치는 영향Sns가 사회에 미치는 영향
Sns가 사회에 미치는 영향
 
20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio
 
한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overview한발 앞서 배워보는 Xamarin overview
한발 앞서 배워보는 Xamarin overview
 
Not only sql 정리
Not only sql 정리Not only sql 정리
Not only sql 정리
 
구글을 지탱하는 기술 요약 - Bigtable
구글을 지탱하는 기술 요약 - Bigtable구글을 지탱하는 기술 요약 - Bigtable
구글을 지탱하는 기술 요약 - Bigtable
 
Big data
Big dataBig data
Big data
 
관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016
관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016
관계형 데이터베이스의 새로운 패러다임 Amazon Aurora :: 김상필 :: AWS Summit Seoul 2016
 
디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론
 
제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30
제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30
제2회 사내기술세미나-no sql(배표용)-d-hankim-2013-4-30
 

Similar to 데이터베이스의 이해

2016년 인문정보학 Sql세미나 2/3
2016년 인문정보학 Sql세미나 2/32016년 인문정보학 Sql세미나 2/3
2016년 인문정보학 Sql세미나 2/3in2acous
 
2019 lightning talk_1
2019 lightning talk_12019 lightning talk_1
2019 lightning talk_1Dongho Yu
 
2016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/32016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/3in2acous
 
[Swift] Data Structure Introduction
[Swift] Data Structure Introduction[Swift] Data Structure Introduction
[Swift] Data Structure IntroductionBill Kim
 
데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은ETRIBE_STG
 
Introduction to mongo db
Introduction to mongo dbIntroduction to mongo db
Introduction to mongo dbMinho Kim
 
국립중앙도서관 RDA 실행전략 보고서
국립중앙도서관 RDA 실행전략 보고서국립중앙도서관 RDA 실행전략 보고서
국립중앙도서관 RDA 실행전략 보고서Hansung University
 
연구데이터 관리와 데이터 관리 계획서 (DMP) - part02
연구데이터 관리와 데이터 관리 계획서 (DMP) - part02연구데이터 관리와 데이터 관리 계획서 (DMP) - part02
연구데이터 관리와 데이터 관리 계획서 (DMP) - part02Suntae Kim
 
MODS와 DC비교 및 변환-비도서자료론
MODS와 DC비교 및 변환-비도서자료론MODS와 DC비교 및 변환-비도서자료론
MODS와 DC비교 및 변환-비도서자료론byunjieun
 
No sql survey report
No sql survey reportNo sql survey report
No sql survey reportGichan Lee
 
아이리스닷넷 김정우 발표용
아이리스닷넷 김정우 발표용아이리스닷넷 김정우 발표용
아이리스닷넷 김정우 발표용JeongWoo Kim
 
LOD (linked open data) part 2 lod 구축과 현황
LOD (linked open data) part 2   lod 구축과 현황LOD (linked open data) part 2   lod 구축과 현황
LOD (linked open data) part 2 lod 구축과 현황LiST Inc
 
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03Devgear
 
LOD 구축현황 과 현황
LOD 구축현황 과 현황LOD 구축현황 과 현황
LOD 구축현황 과 현황sbchae
 
데이터의 이해
데이터의 이해데이터의 이해
데이터의 이해paul lee
 
181215 MS SQL로 알아보는 데이터베이스
181215 MS SQL로 알아보는 데이터베이스181215 MS SQL로 알아보는 데이터베이스
181215 MS SQL로 알아보는 데이터베이스KWANGIL KIM
 
NoSQL 간단한 소개
NoSQL 간단한 소개NoSQL 간단한 소개
NoSQL 간단한 소개Wonchang Song
 

Similar to 데이터베이스의 이해 (20)

2016년 인문정보학 Sql세미나 2/3
2016년 인문정보학 Sql세미나 2/32016년 인문정보학 Sql세미나 2/3
2016년 인문정보학 Sql세미나 2/3
 
Database design
Database designDatabase design
Database design
 
20151024 database
20151024 database20151024 database
20151024 database
 
2019 lightning talk_1
2019 lightning talk_12019 lightning talk_1
2019 lightning talk_1
 
2016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/32016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/3
 
[Swift] Data Structure Introduction
[Swift] Data Structure Introduction[Swift] Data Structure Introduction
[Swift] Data Structure Introduction
 
RDF 해설서
RDF 해설서RDF 해설서
RDF 해설서
 
데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은
 
Introduction to mongo db
Introduction to mongo dbIntroduction to mongo db
Introduction to mongo db
 
국립중앙도서관 RDA 실행전략 보고서
국립중앙도서관 RDA 실행전략 보고서국립중앙도서관 RDA 실행전략 보고서
국립중앙도서관 RDA 실행전략 보고서
 
연구데이터 관리와 데이터 관리 계획서 (DMP) - part02
연구데이터 관리와 데이터 관리 계획서 (DMP) - part02연구데이터 관리와 데이터 관리 계획서 (DMP) - part02
연구데이터 관리와 데이터 관리 계획서 (DMP) - part02
 
MODS와 DC비교 및 변환-비도서자료론
MODS와 DC비교 및 변환-비도서자료론MODS와 DC비교 및 변환-비도서자료론
MODS와 DC비교 및 변환-비도서자료론
 
No sql survey report
No sql survey reportNo sql survey report
No sql survey report
 
아이리스닷넷 김정우 발표용
아이리스닷넷 김정우 발표용아이리스닷넷 김정우 발표용
아이리스닷넷 김정우 발표용
 
LOD (linked open data) part 2 lod 구축과 현황
LOD (linked open data) part 2   lod 구축과 현황LOD (linked open data) part 2   lod 구축과 현황
LOD (linked open data) part 2 lod 구축과 현황
 
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
 
LOD 구축현황 과 현황
LOD 구축현황 과 현황LOD 구축현황 과 현황
LOD 구축현황 과 현황
 
데이터의 이해
데이터의 이해데이터의 이해
데이터의 이해
 
181215 MS SQL로 알아보는 데이터베이스
181215 MS SQL로 알아보는 데이터베이스181215 MS SQL로 알아보는 데이터베이스
181215 MS SQL로 알아보는 데이터베이스
 
NoSQL 간단한 소개
NoSQL 간단한 소개NoSQL 간단한 소개
NoSQL 간단한 소개
 

More from Byung Kook Ha

More from Byung Kook Ha (13)

기말수정2013 2
기말수정2013 2기말수정2013 2
기말수정2013 2
 
2013추계학술대회 인쇄용2
2013추계학술대회 인쇄용22013추계학술대회 인쇄용2
2013추계학술대회 인쇄용2
 
2013추계학술대회 인쇄용
2013추계학술대회 인쇄용2013추계학술대회 인쇄용
2013추계학술대회 인쇄용
 
시험 접수 방법
시험 접수 방법시험 접수 방법
시험 접수 방법
 
3회 해설
3회 해설3회 해설
3회 해설
 
2회 해설
2회 해설2회 해설
2회 해설
 
3회mos
3회mos3회mos
3회mos
 
1회 해설
1회 해설1회 해설
1회 해설
 
mos ex 2
mos ex 2mos ex 2
mos ex 2
 
mos 1회 실전모의고사
mos 1회  실전모의고사mos 1회  실전모의고사
mos 1회 실전모의고사
 
Visual analysis with tableau
Visual analysis with tableauVisual analysis with tableau
Visual analysis with tableau
 
Xe보드설치
Xe보드설치Xe보드설치
Xe보드설치
 
회사통강의안(액세스2010)
회사통강의안(액세스2010)회사통강의안(액세스2010)
회사통강의안(액세스2010)
 

데이터베이스의 이해

  • 2. 학습목표 • 데이터베이스의 정의와 기본 개념을 이해한다 . • 데이터베이스의 종류를 살펴보고 장점과 단점을 비교한다 . • 데이터베이스의 구성 요소를 살펴본다 2/25
  • 3. 목차 • 데이터와 정보 • 데이터베이스와 데이터베이스 관리 시스템 • 데이터베이스 특징 • 데이터베이스 사용자 • 데이터베이스 언어 • 데이터베이스 관리 시스템 • 데이터베이스 관리 시스템의 종류 • 계층형 데이터베이스 • 네트워크형 데이터베이스 • 관계형 데이터베이스 • 객체 지향형 데이터베이스와 객체 관계형 데이터베이스 • 관계형 데이터베이스 용어 3/25
  • 4. 데이터와 정보 • 데이터 o 컴퓨터를 사용할 때 불규칙하게 만들어지는 다양하고 많은 값들 • 정보 o 체계적이고 조직적으로 관리하고 사용되는 데이터 o 여러 가지 값들로 표현되는 데이터를 의미 있고 가치 있는 형태로 가공해 놓은 것 4/25
  • 5. 데이터베이스와 데이터베이스 관리 시스템 • 데이터베이스 o 특정 조직 내에서 다수의 사용자들이 공유해 사용할 수 있도록 통합하고 저장한 운영 데이터의 집합체 • 데이터베이스 관리 시스템 (D B MS ) o 데이터베이스를 생성하여 안정적이고 효율적으로 운영하는 데 필요한 기능들을 제공 하는 소프트웨어 5/25
  • 6. 데이터베이스 특징 • 데이터의 중복성을 최소화할 수 있다 . o 이용하면 업무의 흐름에 따라 데이터를 통합 및 분리하여 관리할 수 있게 되므로 이러 한 중복성을 줄일 수 있음 . 6/25
  • 7. 데이터베이스 특징 • 데이터의 일관성을 유지할 수 있다 . o 데이터의 불일치성 (In c o n s is te n c y) 을 미리 방지하여 데이터를 정확하게 만들고 사용 자에게 신뢰할 만한 정보를 제공할 수 있음 . 7/25
  • 8. 데이터베이스 특징 • 데이터의 무결성을 유지할 수 있다 . o 무결성 (In te g rity) 이란 데이터베이스에 정확한 데이터가 유지되고 있음을 보장하는 것으로 데이터베이스에서 가장 중요한 개념임 . o 제약조건에 맞지 않는 데이터는 아예 입력되지 않도록 방지하는 기능을 제공해 데이 터베이스의 무결성을 유지함 . 8/25
  • 9. 데이터베이스 특징 • 데이터의 독립성을 유지할 수 있다 . o 데이터의 표현 방법이나 저장 위치가 변하더라도 응용 프로그램에는 아무런 영향을 미치지 않는 것을 데이터의 독립성이라고 함 . o 데이터베이스를 사용하면 데이터의 독립성을 유지할 수 있으며 , 관계형 데이터 베이 스의 경우 데이터를 테이블 구조로 관리하기 때문에 독립성을 더욱 강화할 수 있음 . 9/25
  • 10. 데이터베이스 특징 • 데이터의 공유성을 최대화할 수 있다 . o 데이터베이스는 공동작업에 맞게 구조적으로 설계되며 통합된 체계에 의해 저장된 값 들이 유지 · 관리되어야 하며 , 조직의 구성원들은 응용 프로그램을 통해 데이터베이 스에 저장된 공유 데이터들로부터 각자의 업무에 필요한 정보를 생성할 수 있음 . • 데이터의 보안성을 보장할 수 있다 . o 데이터베이스 시스템의 성능을 평가하는 중요한 요소로 , 최근 대부분의 데이터베이 스 시스템은 이러한 보안 기 능을 제공함 . • 데이터를 표준화하여 관리할 수 있다 . o 데이터를 사용 목적 등의 유형별로 분류해 데이터의 형식이나 길이 , 이름 등을 설정 할 수 있음 1 0/25
  • 11. 데이터베이스 구조 • 데이터베이스 시스템 (D atab as e S ys te m ) o 하드웨어 장치에 저장되는 데이터와 사용자 , 데이터베이스 관리를 위한 소프트웨어 등의 요소들을 총괄한 개념 • 데이터베이스 시스템의 구성 요소와 관계 1 1 /25
  • 12. 데이터베이스 사용자 • 데이터베이스 관리자 (D B A, D atab as e Ad m in is trato r) o 데이터베이스 설계 · 정의 , 효율적인 관리 · 운영 등 데이터베이스 시스템을 전체적으 로 총괄 관리 , 제어함 • 응용 프로그래머 (Ap p lic atio n Pro g ram m e r) o 데이터베이스의 물리적인 저장 구조를 설계 및 정의 o 최종 사용자들의 요구에 맞는 적합한 인터페이스와 응용 프로그램을 개발 • 최종 사용자 (E n d U s e r) o 데이터베이스를 실질적으로 사용하는 사람 1 2/25
  • 13. 데이터베이스 언어 • 데이터 정의어 (D D L, D ata D e fin itio n Lan g u ag e ) o 데이터베이스 관리자나 응용 프로 그래머가 데이터베이스의 논리적 구조를 정의하기 위해 사용하는 언어 o 설계 모델에 따라 데이터 구조를 만들고 이미 만들어진 구조를 변경 · 삭제할 수 있음 o 정의된 내용은 데이터 사전 (D ata D ic tio n ary) 에 저장 • 데이터 조작어 (D ML, D ata Man ip u latio n Lan g u ag e ) o 데이터베이스에 저장되어 있는 데이터를 처리하기 위해 사용하는 언어 o 데이터 검색 (Re trie val), 추가 (In s e rt), 삭제 (D e le te ), 갱신 (U p d ate ) 작업 수행 1 3/25
  • 14. 데이터베이스 관리 시스템 • 정의 o 데이터베이스를 생성해 운영하는 데 필요한 모든 기능들을 제공하는 소프트웨어 • 기능 o 자료 정의 및 저장 관리 기능  디스크 기억 장치에 데이터베이스 공간을 할당하여 물리적인 저장 구조를 만들고 이에 접근 하는 방법을 제공 o 질의 처리 및 트랜잭션 기능  데이터베이스에 저장되어 있는 데이터를 처리하기 위해 사용자가 입력한 요구 사항들을 번 역하여 실행 1 4/25
  • 15. 데이터베이스 관리 시스템의 종류 • 대표적인 D B MS 1 5/25
  • 16. 데이터베이스 종류 • 데이터베이스의 종류 및 발전 과정 1 6/25
  • 17. 계층형 데이터베이스 • 계층형 데이터베이스 (H B D ) 의 특징 o 계층형 데이터 모델 사용 o 데이터는 트리 형태로 구성 o 각 데이터 요소 ( 개체 ) 들은 상하 관계를 나타내는 링크로 구성 o 현실 세계에서 하나의 조직이 여러 구성원으로 이루어지는 형태를 표현하기에 적합 o 각 개체 간의 관계를 명확하게 기술해야 함 o 개체들이 링크로 연결되어 있어 개체 간의 관계가 변경되거나 추가 , 삭제되는 경우 기존의 구조를 변경하기 어려움 1 7/25
  • 18. 네트워크형 데이터베이스 • 네트워크형 데이터베이스 (N D B ) 의 특징 o 네트워크형 데이터 모델 사용 o 개체와 개체 관계를 그래프 구조로 연결 o 계층형 데이터 모델과 유사하나 부모 ( 상위 개체 ) 를 여러 개 가질 수 있다는 점이 다 름 o 네트워크 구조로 진행되는 업무를 표현할 때 편리함 o 계층형 데이터베이스에 비해 구조가 복잡해지는 단점이 있음 1 8/25
  • 19. 관계형 데이터베이스 • 관계형 데이터베이스 (RD B ) 의 특징 o 관계형 데이터 모델 사용 o 현재까지 가장 안정적이고 효율적인 데이터베이스로 알려져 있음 o 개체를 테이블로 사용하고 개체들 간의 공통 속성을 이용해 서로 연결 o 자료의 구조가 단순한 업무에 적합 1 9/25
  • 20. 객체 지향형 데이터베이스와 객체 관계형 데이터베이스 • 객체 지향형 데이터베이스 (O O D B ) 의 특징 o 1 980 년대 후반에 등장한 데이터베이스 o 객체 지향 프로그래밍 개념에 기반 o 데이터와 프로그램을 독립적인 객체의 형태로 구성 o 복잡한 데이터 유형을 처리하기 쉽고 객체들을 이해하기 쉬움 o 개념적인 형태로 실제 사용하기는 어렵기 때문에 아직까지 완전한 형태의 객체 지향 형 데이터베이스를 구현하지 못함 • 객체 관계형 데이터베이스의 특징 o 1 990 년대 후반에 등장 o 멀티미디어 데이터 처리가 많아짐에 따라 사용되기 시작 o 관계형 데이터베이스에 객체 지향 개념을 도입 o 비교적 널리 사용되고 있음 20/25
  • 21. 관계형 데이터베이스 용어 • 테이블 형태의 데이터 구조 21 /25
  • 22. 관계형 데이터베이스 용어 - 테이블 (Tab le )/ 필드 (F ie ld ) • 테이블의 특징 o 릴레이션 (Re latio n ) 혹은 엔티티 (E n tity, 개체 ) 라고도 함 o 열 (C o lu m n ) 과 행 (Ro w) 으로 구성됨 o 테이블 구성 조건  테이블에 포함된 행들은 유일해야 하고 중복된 행이 존재하지 않아야 함 .  테이블에 포함된 행들 간에는 순서가 존재하지 않음 .  테이블을 구성하는 열들 간에는 순서가 존재하지 않음 . • 필드의 특징 o 속성 (Attrib u te ) 혹은 컬럼 (C o lu m n ) 이라고도 함 o 테이블의 열에 해당 o 데이터 값을 기억하는 기억 단위  예 ) 회원 테이블의 필드 : 회원 ID , 이름 , 주민등록번호 , 주소 o 차수 (d e g re e ) : 테이블에 포함된 필드의 개수  예 ) 회원 테이블의 차수 : 4 22/25
  • 23. 관계형 데이터베이스 용어 - 레코드 (Re c o rd )/ 도메인 (D o m ain ) • 레코드의 특징 o 투플 (Tu p le ) 이라고도 함 o 테이블의 행에 해당  예 ) 회원 테이블의 레코드 : 6 개 / o 카디낼러티 (C ard in ality)  테이블에 포함된 레코드의 개수 • 도메인의 특징 o 필드가 가질 수 있는 값들의 집합 o 필드를 생성할 때는 데이터 형식 (D ata Typ e ) 을 정의하는데 , 데이터 형식에 맞는 값 들의 집합을 의미  예 ) 회원 테이블에서 주민등록번호 필드의 도메인 : 1 3 자리의 숫자 o 도메인의 역할  데이터베이스에 입력되는 자료의 오류를 방지하기 위해 필요 23/25
  • 24. 관계형 데이터베이스 용어 - 키 (Ke y) • 키의 특징 o 테이블 내의 레코드들을 서로 구별할 수 있는 필드의 집합 o 키 값은 유일한 값을 가져야 함  예 ) 회원 테이블의 키 : 회원 ID 필드 • 키의 종류 24/25
  • 26. 학습목표 • 데이터베이스 개발에 필요한 각 단계에 대해 이해한다 . • 데이터베이스 설계에 필요한 기본 이론을 이해한다 . • 정규화 개념을 이해하고 예제를 통해 정규화하는 방법을 익힌다 . 27/25
  • 27. 목차 • 요구 사항 분석 • 논리적 설계 • 물리적 설계 • 제 1 정규화 • 제 2 정규화 • 제 3 정규화 28/25
  • 28. 데이터베이스 개발 개요 • 데이터베이스 개발 계획의 필요성 o 사용자 요구에 맞는 효율적인 데이터베이스 구축 • 데이터베이스 개발 단계 29/25
  • 29. 요구 사항 분석 • 목적 o 데이터베이스를 구축하고자 하는 사용자들의 목적이 무엇인지 파악 o 데이터베이스 구축 목적 , 업무 흐름 , 개발 범위 등 사용자와 개발 환경에 대한 여러 가지 요구사항을 면담과 문서를 통해 분석 • 산출물 o 요구 사항 명세서  분석된 요구사항을 기술하는 것으로 , 이후의 모든 설계와 구축 작업의 기초가 되는 자료 30/25
  • 30. 요구 사항 분석 • 업무 흐름도 o 정보가 처리되는 조직과 부서 간의 정보 생성 및 이동에 대한 흐름을 그림으로 표현한 것 31 /25
  • 31. 요구 사항 분석 • 업무 분석 o 기존 업무에 대한 분석과 동시에 미래의 시스템을 위한 개선점을 찾아내는 창조적인 일 o 현행 시스템에 대한 정보를 얻고 업무 처리 단계를 분석하고 나면 새로 개발하게 될 데이터베이 스를 포함한 신규 시스템에 대한 계획 수립 • 요구 사항 분석 절차 32/25
  • 32. 논리적 설계 • 목적 o 업무 처리에 필요한 자료와 속성을 기술하고 자료 간의 관계를 정의 o 특정 종류의 데이터베이스에 구애 받지 않고 데이터베이스의 골격을 구축하는 작업 단계 o 데이터 모델링이라고도 함 • 산출물 o E RD (E n tity- Re latio n s h ip D iag ram ) o 데이터베이스의 전체 구조를 쉽게 나타낼 수 있으며 , 사용자와 함께 업무를 분석하 고 검토할 때도 이용 o 엔티티 (E n tity) 와 엔티티 간의 관계를 이해하기 쉽게 정해진 표기법에 따라 그림으로 표시 33/25
  • 33. 논리적 설계 • E RD 용어 o 엔티티 (E n tity, 개체 )  관리 대상인 정보를 갖고 있는 사람이나 사물 , 사건 , 개념 등을 의미  요구 사항 명세서에 명사형으로 표현  ERD 에서 사각형으로 표시 o 속성 (Attrib u te )  성질이나 상태 등 엔티티가 가질 수 있는 세부적인 특성  타원으로 표현되며 엔티티를 표현하는 사각형에 실선으로 연결 34/25
  • 34. 논리적 설계 • 인스턴스 (In s tan c e ) o 엔티티의 구체적인 하나의 예 , 즉 단일 사례 o 인스턴스의 집합이라고도 함 35/25
  • 35. 논리적 설계 • 기본 키 (Prim ary Ke y) o 하나의 엔티티 내에 똑같은 인스턴스가 존재하면 인스턴스를 서로 구별해 검색할 수 없고 데이 터가 중복되는 문제 발생 o 인스턴스를 서로 구별할 수 있는 유일한 속성 값 필요 o 한 개 이상의 속성 조합으로 구성된 기본 키도 사용 가능 o ERD 에서 기본 키를 표현하려면 기본 키로 설정된 속성에 밑줄 표시 36/25
  • 36. 논리적 설계 • 관계 (Re latio n s h ip ) o 엔티티 간의 연관성 o 요구 사항 명세서에 동사형으로 표현  ( 예 ) 회원과 도서 : ‘ 주문 관계’ , 사원과 부서 : ‘ 소속 관계’ o ERD 에서는 관계가 있는 엔티티를 실선으로 서로 연결하고 마름모 안에 그 관계를 표시함 . 37/25
  • 37. 논리적 설계 • 일대일 관계 o 회원 한 명은 도서를 한 번만 주문할 수 있다는 의미임 . • 일대다 관계 o 회원 한 명이 도서를 여러 번 주문할 수 있다는 의미임 . • 다대다 관계 o 엔티티 간의 관계가 다대다인 경우는 실생활에서 흔히 볼 수 있음 . o 다대다의 관계로 표현하면 회원 한 명이 도서를 여러 번 주문할 수 있고 , 동일한 도서를다른 회 원도 주문할 수 있다는 의미임 . 38/25
  • 38. 논리적 설계 • E RD 작성 o 1 단계 : 개념적으로 단위 업무에 필요한 엔티티들을 정의하고 엔티티들 간의 관계를 설정 o 2 단계 : 앞에서 작성된 단위 업무별 E RD 들을 하나의 E RD 로 통합 . 이때 중복되 거나 불일치되는 엔티티가 있어서는 안됨 . 39/25
  • 39. 39/25
  • 40. 물리적 설계 • 목적 o 개발에 사용할 데이터베이스의 종류 선정 & 구현 가능하도록 구체적으로 설계 • 단계 ① E RD 로 나타난 엔티티를 테이블로 변환 ② 테이블들 간 관계를 참조 키로 설정 ③ 속성의 데이터 형식과 각종 제약조건 , 인덱스 설정 등 테이블 명세 정의 • 산출물 o 엔티티들을 각각 하나의 테이블로 나타내고 엔티티의 속성을 테이블의 필드로 만듦 o 관계의 참조 키 표현 o E RD 에서는 엔티티들을 서로 연결함으로써 두 엔티티 간의 연관 관계를 표현 40/25
  • 41. 물리적 설계 • 일대일 관계 o 두 테이블을 한 테이블로 통합 41 /25
  • 42. 물리적 설계 • 일대다 관계 o 일 (1 ) 에 해당하는 엔티티의 기본 키 (PK) 를 다 (n ) 에 해당하는 엔티티의 테이블에 포함시키고 참조 키 (F K) 로 만듦 42/25
  • 43. 물리적 설계 • 다대다 관계 o 새로운 테이블을 하나 만들고 다대다 관계에 있는 두 엔티티의 기본 키들을 새 테이블 의 참조 키 필드에 포함시킴 . o 새 테이블의 기본 키를 만드는 방법  두 개의 참조 키를 조합하여 새 테이블의 기본 키로 설정 43/25
  • 44. 물리적 설계 o 새로운 필드를 추가하여 기본 키로 설정 44/25
  • 45. 물리적 설계 • 테이블 명세 o 각각의 엔티티를 테이블로 바꾸고 연관 관계를 참조 키로 설정한 후 테이블의 각 필드 들에 대한 데이터 형식 (D ata Typ e ) 과 제약조건 , 인덱스 등을 정의 45/25
  • 47. 정규화 • 정의 o 데이터의 중복을 막고 무결성을 강화하기 위해 하나의 테이블을 둘 이상으로 분리하 는 작업 • 정규화 단계 ➀ 제 1 정규화 (Firs t N o rm alizatio n ) ➁ 제 2 정규화 (S e c o n d N o rm alizatio n ) ➂ 제 3 정규화 (Th ird N o rm alizatio n ) ➃ 보이스 - 코드 정규화 (B o yc e - C o d d N o rm alizatio n ) ➄ 제 4 정규화 (Fo u rth N o rm alizatio n ) ➅ 제 5 정규화 (Fifth N o rm alizatio n ) ➆ 비정규화 (D e - n o rm alizatio n ) 47/25
  • 49. 정규화 • 정규화 전 : 주문 내역 테이블 49/25
  • 50. 제 1 정규화 • 정의 o 테이블에 있는 각 필드의 값들이 단일 값을 가지도록 하는 것 o 테이블의 각 행과 열에는 오직 하나의 값만 들어 있어야 함 50/25
  • 51. 제 1 정규화 • 수정된 주문내역 테이블은 각 필드의 값들이 단일 값으로 구성되어 있지만 , 주문번호가 중복되어 나타나므로 기본 키로 설정할 수 없음 • 기본 키 설정을 위해 일련번호 필드를 먼저 추가하여 테이블 수정 51 /25
  • 52. 제 2 정규화 • 정의 o 키가 아닌 모든 필드의 값이 기본 키에 종속되어야 함 o 기본 키 중 일부 필드에만 종속적인 관계가 있는 필드들이 있을 경우에는 종속적 관계 에 있는 필드들을 기존 테이블에서 분리해 새로운 테이블을 생성 52/25
  • 53. 제 2 정규화 • 주문번호에 종속적인 필드 ( 회원 ID , 이름 , 주문일 ) 를 분리해 새로운 테이블 생성 : 주 문 기본 정보 테이블 53/25
  • 54. 제 3 정규화 • 정의 o 특정 필드의 값이 키가 아닌 다른 필드에 종속적일 경우 이를 분리하는 것 54/25
  • 55. 제 3 정규화 • 종속적인 필드를 분리하여 새 테이블 생성 : 도서 테이블 55/25
  • 56. 제 3 정규화 • 정규화 과정 요약 56/25