데드락 발생 패턴 잠금의 종류 배타적 잠금 Exclusive-Lock, Write Lock, X-Lock 해당 트랜잭션이 특정 레코드나 간격을 변경하기 위해 획득해야 하는 잠금 내가 쓰기를 하는 동안 남들이 쓰지 못하게 하는 것! 공유 잠금 Shared-Lock, Read-Lock, S-Lock 레코드나 간격을 읽을 때 다른 트랜잭션이 변경하지 못하게 하는 용도의 잠금 내가 읽는 동안 남들이 내가 읽고 있는 데이터를 변경하거나 삭제하지 못하게 막는 장치 프라이머리 키나 유니크 키가 존재하는 테이블에서 INSERT를 수행할 때 공유 잠금을 걸어야하는 이유?
선택도 모든 인덱스 키값 가운데 유니크한 값의 수를 의미함
전체 인덱스 키값은 100개인데, 그중에서 유니크한 값의 수는 10개라면 기수성은 10
인덱스 키값에 중복이 많다면 선택도가 낮다는 뜻임
선택도가 높다면, 검색 대상이 줄어들기 때문에 그만큼 빠르게 질의(Query) 가 가능하다.
선택도가 좋지 않아도, 정렬이나 그룹핑과 같은 작업을 위해 인덱스가 필요 할 수도 있다. 인덱스가 검색만을 위해서 사용되는 것은 아니다.
옵티마이저에 의해서, 선택도가 낮은 경우 (검색 결과가 테이블의 30% 이상 리턴 하는 경우)