Do It SQL입문 01-2 데이터베이스의 종류

stan·2023년 6월 10일
0

T - SQL (SQL Server)

목록 보기
2/12
post-thumbnail

데이터베이스의 저장 방법 :

  • 계층형
  • 네트워크형
  • 키-값

계층형

  • 데이터가 부모와 자식 관계를 이루는 트리 구조
  • 부모 레코드가 여러 자식 레코드를 가짐
    - 레코드랑 데이터베이스 테이블에 저장된 값들의 모임으로 행(row) 또는 튜플(tuple)이라고 부른다

네트워크형

  • 데이터를 노드로 표현한 모델
    - 노드는 네트워크상에 있으며 서로 대등한 관계
  • 멤버노드는 여러 주인 노드를 가지는데, 멤버 노드는 반드시 주인 노드와 연결 되어야 한다
  • 종속성 문제가 생기기 쉬워 데이터베이스 구조를 변경하기 어렵다

키-값 데이터베이스

  • 비정형 데이터 저장에 유리하다
    - 비정형 데이터(unstructure data)란 쉽게 말해 형식이 없는 데이터이다. 흔히 텍스트, 음성, 영상과 같은 데이터가 비정형 데이터 범위에 속한다. 반대로 정형 데이터(structured data)는 데이터베이스의 정해진 규칙(rule)에 맞게 데이터를 저장하며, 각 데이터는 열 이름으로 의미를 쉽게 파악할 수 있다.
  • NoSQL의 한 종류
    - 비관계형 데이터베이스를 가리킬대 사용
    - 기존 관계형 데이터베이스의 한계를 극복하는 데이터 저장소로 도큐먼트, 그래프, 키-값, 검색 등 다양한 데이터 모델을 사용
k1AAA, BBB, CCC
k2AAA
  • k1이라는 키에 AAA,BBB,CCC라는 값이 저장되었다. K2의 경우 AAA,BBB데이터가 저장되었는데 K1과 K2를 비교해 보면 데이터의 개수가 다르다.

  • 스키마 없이 작동, 데이터구조를 미리 정의할 필요가 없음
    - 스키마란, 데이터베이스의 구조와 제약 조건에 대하여 전반적인 명세를 기술한 것을 말한다. 데이터베이스를 구성하는 자료개체의 성질, 관계, 조작, 자룟값 등의 정의를 총칭한 것이다.

  • 키-값 데이터베이스는 NoSQL의 한 종류

================================================================

관계형 데이터베이스

  • 테이터를 테이블 형태로 저장

  • 관계형 데이터베이스는 데이터를 열 column과 행 row으로 구성한 테이블로 정리

  • 고유키 primary key가 각 행(row)을 식별한다

  • e.g. : 고객정보
    - 열(column) [이름, 전화번호, 이메일, 주소]
    - 행(row) 강성욱, 000-0000-0000,xxxx@xxxx.xxx

  • 열 : 고유한 이름을 가지며 자신만의 타입을 가짐
    - aka 필드 또는 애트리뷰트라고도 함

  • 행 : 관계된 데이터의 묶음을 의미하며 한 테이블의 모든 행은 같은 수의 열을 가진다.
    - aka 튜플 또는 레코드라고도 한다

  • 테이블 : 행과 열 값들의 모음
    - 도메인 특성에 따라 데이터를 논리적으로 그룹화해 놓은 것

테이블 간의 관계 ERD

  • ERD(entity relationship diagram)라고 한다.

  • 논리모델과 물리모델로 나뉨

  • 논리모델 :
    - 데이터 모델의 첫 단계
    - 고객의 요구 사항을 수집, 분석해 데이터베이스의 전체 모양을 구성하는 것

  • 물리모델 :
    - 논리모델을 바탕으로 실제 데이터를 저장할 수 있는 모델을 표현한 것

  • 장바구니 테이블이 고객테이블을 참조

  • 테이블이 관계로 연결될 때의 장점 :
    - 관계형 데이터베이스는 데이터의 중복과 관리 효율성을 추구 함
    - 테이블을 분리하고 각 테이블 목적에 맞는 데이터만 저장한 후, 테이블을 참조 관계로 연결해 이러한 문제를 해결한다.

  • 목적에 맞게 테이블을 분리하고 중복 데이터를 제거하는 과정을 모델링에서는 정규화 라고 한다.

profile
이진 입니다

0개의 댓글