-
디비 관련 개념 몇가지들 본문
트리거
- INSERT, UPDATE 또는 DELETE 작업이 테이블에서 수행될 때 자동으로 실행되는 특별한 종류의 저장형 프로시저
- 관련된 insert, update, delete가 정의된 테이블의 경우에만 발생함.
프로시저
-
트랜잭션, ACID
- 모든 단계가 수행되거나 수행되지 않는 논리적인 작업단위
- ACID는 트랜젝션 처리 시스템 내에 갖춰야 할 4가지 속성
A : Atomic(원자성)
C : Consistency(일관성)
I : Isolation(격리)
D : Durability(내구성)
인덱스
- 책의 색인과 유사.
- SQL Server의 자료 조회를 빠르게 한다.
- 클러스터된 인덱스, 클러스터되지 않은 인덱스 두 유형이 있음.
클러스트된 인덱스 :
테이블에 클러스터된 인덱스를 생성할 때 모든 행들은 클러스터된 이덱스 키 순으로 저장됨.
테이블 당 오직 하나의 클러스트된 인덱스가 있음
클러스트되지 않은 인덱스
leaf 노드들이 인덱스 키와 자신의 행 로케이터(row locater)를 가진 B-트리 구조에 저장됨.
* 행 로케이터?
- 클러스트된 인덱스의 존재 여부에 따라 행 식별자 또는 클러스트된 인덱스 키
- 테이블의 각 컬럼에 인덱스를 생성할 경우, 쿼리 옵티마이저ㅏㄱ 효율적인 실행 계획을 마련하기 위해 기존의 모든 인덱스를 선택할 수 있기 때문에 질의를 수행하는 성능이 향상됨.
동시에 데이터 수정작업은 테이블 내 모든 데이터가 변경될 때마다 모든 인덱스들도 갱신되어야 하기 때문에 느려짐.
인덱스는 디스크 공간이 필요하기 때문에 인덱스가 많을 수록 더 많은 디스크 공간이 사용됨.
- 출처 : 코딩 인터뷰 퀘스천
'DB' 카테고리의 다른 글
mariadb :: 반드시 알아야 할 세가지 (0) | 2018.04.29 |
---|---|
mariadb :: select한 내용 파일로 쓰기 (0) | 2018.04.29 |