ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • DB
    DB/Oracle 2021. 5. 10. 14:51

    개인 공부 후 정리 목적인 글입니다.

     

     

    1. 데이터와 데이터베이스 

     

    데이터(data) : 사실들 그 자체에 대한 일차적인 표현  ex) 물건

     

    정보(information) : 자료를 가공하여 만든 결과물

     

    지식(knowledge) : 데이터와 정보에 비해 좀 더 상위 수준의 개념으로 수정적이고 정적인 데이터나 정보에 비해,
                                         이들을 처리하는 "방법"이나 어떤 근거에 의한 판단을 내리는데 필요한 분석과 판단에 관한

                                         "법칙" 등을 포함

     

    데이터베이스(database)조직이나 개인이 사용하는 조작 가능한, 저장된 데이터의 모임  ex) 창고
                                                     특정 목적을 위해 데이터 처리(계산, 저장, 검색, 정렬 등) 작업을 수행 

     - 일시적(transient) 데이터 : 해당 프로세스가 실행되는 동안만 일시적으로 존재

     - 영구적(persistent) 데이터 : 어떤 프로세스의 생명주기에 종속적이지 않고 스스로 존재, 비휘발성 매체에 저장

     

     

    데이터베이스 관리 시스템(DBMS, DataBase Management System)

          컴퓨터에 저장되는 데이터베이스를 관리해주는 소프트웨어 시스템  ex) 창고관리인

     

     

    DBMS가 제공하는 기능

    • 정보를 표현할 수 있는 틀
    • 데이터의 공유 기능
    • 데이터 무결성 유지 기능
    • 데이터 독립성
    • 효율적인 자원관리 기능
    • 데이터 보안성과 안정성 유지 기능

     

    데이터베이스 시스템과 사용자

    • 최종사용자 : end user, general user
    • 응용 프로그램 개발자 : application programmer
    • 데이터베이스 관리자 : DataBase Administrator : DBA
    • DBMS 개발자 : DBMS developer

     

    2. 관계형 데이터베이스

    데이터 모델 : 물리적, 추상적으로 존재하는 현실세계를 단순화되고 정형화된 형태로 표현하는 하나의 방식
                 -> 실제 데이터가 갖는 특성을 살리면서, 목적에 맞게 관심있는 정보만을 단순화 하여 표현하는 방식

     

    관계형 데이터 모델(relational data model) : 테이블 형식을 이용하여 데이터들을 정의하고 설명한 모델

     - 실세계의 데이터를 누구나 직관적으로 이해할 수 있는 형태로 기술할 수 있는 간단한 방식 제공

     - 테이블을 릴레이션(relation)이라고 부름

     

    • 릴레이션(relation)

     - 수학적으로, 두 개 이상의 집합으로부터 각 집합을 구성하는 원소들의 순서쌍에 대한 집합을 의미

    • 속성 - 필드, 컬럼(릴레이션을 구성하는 각 열의 이름)
    • 튜플 - 레코드, 행(릴레이션의 각 행)
    릴레이션 테이블
    속성 필드(field), 컬럼(column)
    튜플 레코드(record), 행(row)

     

    도메인(domain) : 각 필드에 입력 가능한 값들의 범위

                            즉, 각 필드가 가질 수 있는 모든 값들의 집합으로 원자값이여야 됨

     

    널(null) : 특정 필드에 대한 값을 알지 못하거나 아직 정해지지 않아 입력하지 못한 경우의 필드 값

                 (0이나 공백 문자와는 다름)

     

    테이블 스키마(table schema) : 테이블 정의에 따라 만들어진 데이터 구조

     

    차수(degree) : 테이블 스키마에 정의된 필드의 수 
         차수=1 : 단항 테이블
         차수=2 : 이항 테이블
         차수=n :  n항 테이블

     

    테이블 인스턴스(table instance) : 테이블 스키마에 현실 세계의 데이터를 레코드로 저장한 형태

     - 스키마는 한번 정의하면 거의 변함이 없지만 인스턴스는 수시로 바뀔 수 있음 - 레코드 삽입, 삭제, 수정 등

     

    기수(cardinality) : 테이블 인스턴스의 레코드(행)의 수

     

    테이블의 특성

    • 중복된 레코드가 존재하지 않는다.
    • 레코드 간의 순서는 의미가 없다.
    • 레코드 내에서 필드의 순서는 의미가 없다.
    • 모든 필드는 원자값을 가진다.

     

    키(key) : 필드들의 일부로 각 레코드들을 유일하게 식별해낼 수 있는 식별자(identifier)

     - 일반적으로 하나의 필드를 지정하여 키로 지정하나 여러개의 필드들로 구성 가능

     

    복합키(composite key) : 두 개 이상의 레코드로 구성된 키

     

    <키 값이 필요한 이유?>

     - 레코드 간의 순서가 의미가 없으므로 레코드를 구분하기 위해서는 각 레코드의 값을 이용한다.

     - 관계형 데이터 모델에서 특정 레코드를 구별하거나 탐색하기 위한 유일한 방법

     

    슈퍼키(super key) : 아무런 제약 조건 없이 레코드들을 식별할 수 있는 필드의 집합

     

    후보키(candidate key) : 최소한의 필드만으로 구성된 키

     

    기본키(primary key) : 후보키 중에서 식별자로 정의한 하나의 키

     - 되도록 하나의 필드로 구성된 후보키를 선정하는 것이 유리하다.

     - 모든 가능한 인스턴스에 대해서도 키가 될 수 있어야 함

     

    <키가 널(null)이 될 수 있나?>

     - 기본키는 식별자의 기능을 함

     - 기본키로 정의된 필드가 널을 갖게 되면 이러한 식별 기능을 상실함

     

    왜래 키(foreign key) : 다른 테이블의 기본 키를 참조하는 필드집합

     

     

    관계형 데이터베이스 정의(relational database)

         관계형 데이터 모델에 기반하여 하나 이상의 테이블로 실세계를 표현한 데이터베이스

    • 실세계를 관계형 데이터 모델이라는 추상적인 도구를 이용하여 표현한 것
    • 테이블들을 컴퓨터의 기억 장치에 어떠한 방법으로 저장할 것인가에 대한 물리적인 구조까지 정의하지 않음

    관계형 데이터베이스가 하나 이상의 테이블로 구성되어 있을 때

    • 데이터베이스 스키마(database schema) : 테이블 스키마의 집합
    • 데이터베이스 인스턴스(database instance) : 테이블 스키마들에 대한 테이블 인스턴스의 집합

     

    'DB > Oracle' 카테고리의 다른 글

    데이터 모델링의 주요 개념  (2) 2021.05.10
Designed by Tistory.