2월 2주차 스터디 발표 자료📖
2주차 기술면접 주제 중 첫번 째 주제입니다!
RDBMS,RDB 개념에 대해 정리하고자 합니다.
RDBMS (Relational DataBase Management System)?
- 관계형 데이터베이스를 생성, 수정 및 관리할 수 있는 소프트웨어
- 관계형 데이터 모델을 기반으로 하는 DBMS의 유형 중 하나이다.
여러 개의 테이블을 조합해 원하는 데이터를 찾을 수 있다.(JOIN)
DBMS?
DB를 관리하고 운영하는 소프트웨어- 관계형 데이터 모델?
- 실제 세계의 데이터를 관계라는 개념을 사용해 표현한 데이터 모델
- 모든 데이터를 2차원의 테이블 형태로 표현한다.
관계형 데이터베이스 (RDB)?
- 관계형 데이터 모델에 기초를 둔 데이터베이스
- 서로 다른 테이블들이 관계를 맺고 모여있는 집합체이다.
- 각 테이블은 행과 열에 대응하는 값과 행의 검색을 위해 식별자로 사용되는 키(Primary Key)를 가지고있다.
관계형 데이터베이스 특징
장점?
- Schema를 통해 명확한 데이터 구조가 보장된다.
- 데이터의 분류,정렬,탐색 속도가 빠르다.
- 제약조건을 통해 무결성을 보장해준다.
단점?
- 기존에 작성된 Schema를 수정하기 어렵다.
- 시스템이 커지면 JOIN문이 많은 복잡한 쿼리가 만들어질 수 있다.
- Scale-up만 지원하여, 성능 향상을 위한 비용이 커질 수 있다.
- 다른 DB에 비해 많은 자원이 활용되어 시스템 부하가 높다.
관계형 데이터베이스 기본 용어
- 관계(Relation) == 테이블
- 튜플들의 집합
- 속성(Attribute) == 필드
- 릴레이션의 열(Column)에 해당한다.
- 튜플(Tuple) == 레코드
- 릴레이션의 행(Row)에 해당한다.
- 도메인(Domain)
- 하나의 속성이 가질 수 있는 값의 집합 (타입)
- 도메인이 필요한 이유? 테이블에 저장되는 값들이 본래 의도했던대로 저장되고 관리되기 위함.
- 카디널리티(Cadinality)
- 행들의 수
- 차수(Degree)
- 열들의 수
- 키(Key)
- 릴레이션에서 튜플을 유일하게 구별할 수 있는 속성의 모음
- 널 값(Null)
- 존재하지 않는 값을 의미하는 특별한 값
- 스키마(Schema)
- DB의 테이블 구조 및 제약조건에 관한 전반적인 명세를 기술한 것
무결성 제약 조건
- 무결성?
데이터의 정확성 또는 유효성을 의미한다. 즉, 데이터를 정확하고 일관되게 유지하는 것
- 개체 무결성 (기본키,UNIQUE)
- 각 릴레이션의 기본키를 구성하는 속성은 NULL 값이나 중복된 값을 가질 수 없다.
- 참조 무결성 (외래키)
- 외래키 값은 NULL이거나 참조하는 릴레이션의 기본키 값과 동일해야한다.
- 도메인 무결성 (CHECK,DEFAULT,NOT NULL 등)
- 속성들의 값은 정의된 도메인(자료형,범위 등)에 속한 값이어야 한다.