파게로그

관계형 데이터베이스(relational database) 본문

콤퓨타 왕기초/SQLD/JDBC/Oracle DB

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

파게 2021. 3. 16. 09:47

관계형 데이터베이스

  • relation과 relation의 join 연산을 통해서 합집합, 교집합, 차집합 등을 만들 수 있음
  • key와 value들의 간단한 관계를 테이블화시킨 데이터베이스

 

데이터베이스의 종류

  • 계층형 데이터베이스
    - 트리 형태의 자료구조에 데이터 저장 및 관리
    - 부모와 자식 관계를 표현하기 쉬움
    - 1:N 관계 표현
  • 네트워크형 데이터베이스
    - 오너(owner)와 멤버(member) 형태로 데이터 저장 및 관리
    - 1:N, M:N 관계 표현
  • 관계형 데이터베이스
    - relation에 데이터 저장 및 관리
    - relation을 사용해서 집합 연산과 관계 연산을 할 수 있음

 

* 관계대수

m.blog.naver.com/k97b1114/140152644090

 

관계형 데이터베이스 집합 연산

  • 합집합(union)
    - 두 개의 relation을 하나로 합함
    - 중복된 행(튜플)은 한 번만 조회됨
  • 차집합(difference)
    - 본래 릴레이션에는 존재하고 다른 릴레이션에는 존재하지 않는 것을 조회
  • 교집합(intersection)
    - 두 개의 릴레이션 간에 공통된 것을 조회
  • 곱집합(cartesian product)
    - 각 릴레이션에 존재하는 모든 데이터를 조합하여 연산

 

관계형 데이터베이스 관계 연산

  • 선택 연산(selection)
    - relation에서 조건에 맞는 행(튜플)만을 조회
  • 투영 연산(projection)
    - relation에서 조건에 맞는 속성만을 조회
  • 결합 연산(join)
    - 여러 relation의 공통된 속성을 사용해서 새로운 relation을 만들어 냄
  • 나누기 연산(division)
    - 기준 릴레이션에서 나누는 릴레이션이 가지고 있는 속성과 동일한 값을 가지는 행(튜플)을 추출하고 나누는 릴레이션의 속성을 삭제한 후 중복된 행을 제거하는 연산

 

테이블의 구조

  • relation은 DBMS에서 최종적으로 table로 만들어짐
  • 기본키(PK): 유일성, 최소성, NOT NULL 만족
  • 외래키(FK): 다른 테이블의 기본키를 참조(join)하는 칼럼. 결합 연산을 하기 위해서 사용

'콤퓨타 왕기초 > SQLD/JDBC/Oracle DB' 카테고리의 다른 글

DDL  (0) 2021.03.16
SQL의 종류  (0) 2021.03.16
분산 데이터베이스  (0) 2021.03.16
반정규화(de-normalization)  (0) 2021.03.16
정규화와 성능  (0) 2021.03.16
Comments