스키마?
데이터 베이스의 전체적인 구조와 제약 조건을 명시한것.
- 내부 스키마 : 사용자 측면의 데이터베이스 전체구조
- 개념 스키마 : 데이터베이스의 전체 구조
- 외부 스키마 : 물리적 저장장치 측면의 데이터베이스 구조
관계형 데이터 베이스. RDB
2차원 테이블에 저장되며 데이터의 구조와 데이터 간 종속성 등을 알 수 있다.
릴레이션 : 관계형 데이터베이스에서 데이터의 개념적 모델
테이블 : 릴레이션을 실제로 구현한 개체
NOSQL. Not Only SQL
비관계형 데이터 베이스로, 보다 유연한 형태의 데이터베이스이다.
대용량 데이터를 조회할 때 속도면에서 유리하고 수평적 확장성이 좋아 확장하기 편하다.
KEY?
튜플을 구분하기 위한 속성 또는 속성의 집합.
key의 특성
- 유일성 : 하나의 키 값으로 튜플을 식별할 수 있는 특성
- 최소성 : 튜플을 식별하는데 필요한 속성만으로 이루어져 있는 특성
KEY 종류
- 슈퍼키 : 유일성 만족, 최소성은 만족하지 않아도 되는 키
- 후보키 : 유일성, 최소성을 만족하는 키
- 기본키 : 후보 키 중에서 메인이 되는 키. NULL값을 가지면 안 된다.
- 대체키 : 후보키 중 기본키를 제외한 키.
- 외래키 : 다른 테이블의 기본키를 참조하는 키.
무결성?
데이터베이스에 저장된 데이터와 실제 데이터가 일치하는 정확성, 데이터가 일정하게 유지되는 일관성을 의미.
- 개체 무결성 : 모든 테이블이 기본 키를 가져야한다. 기본 키의 값은 NULL이 될 수 없고 중복이 아닌 고유한 값을 가져야 한다.
- 도메인 무결성 : 테이블의 속성 값은 도메인에 속해야한다. (도메인은 속성이 가질 수 있는 값의 집합.)
- 참조 무결성 : 외래 키의 값은 참조하는 테이블의 기본 키 값과 동일하거나 NULL이어야 한다.
인덱스?
튜플의 검색 성능을 높이기 위해 속성 값과 튜플이 저장된 주소를 저장하는 것.
키-값 형태로 속성 값- 튜플 주소를 인덱스 테이블에 저장.
인덱스의 장단점?
장점
- 인덱스 설정으로 데이터가 정렬되어 있어 검색 속도가 빠르다.
단점
- 인덱스 테이블을 저장하기 위한 추가 공간 필요.
- 정렬된 상태를 유지하기 위해 데이터를 추가, 수정, 삭제하는 경우에 속도가 느려짐.
※데이터 양이 많고 변경보다는 검색을 자주사용하는 경우에 사용하는 것을 권장.
해시 테이블 인덱스?
속성 값으로 해시 값을 계산해 인덱싱하는 방법.
특성상 속성 값을 그대로 검색해야 해서 검색 값을 온전히 입력할 때만 사용이 용이하다.
ex)
'가'로 시작하는 속성 값 조회 -> 해시 테이블 인덱스 사용 불가.
'가방'인 속성 조회 -> 해시 테이블 인덱스 사용 가능.
B(Balanced)+- 트리 인덱스
B+ 트리 인덱스 : 단말 노드에만 데이터를 저장하고 단말 노드간에는 연결 리스트로 연결되는 방식.
B- 트리 인덱스 : 모든 노드에 데이터가 저장되는 방식.
B+- 트리 인덱스를 사용하면 데이터의 삽입, 갱신, 삭제 등에 드는 작업 비용/속도 를 줄일 수 있다.
또한 해시 테이블 인덱스와 달리 범위로 검색이 가능하다.
'CS > 데이터베이스' 카테고리의 다른 글
데이터베이스 - ORM, 트랜잭션, 락, 이상, 정규화 (0) | 2024.06.21 |
---|