본문 바로가기
728x90

Database2

[MySQL] INDEX 최적화 - 2 (feat. 커버링, 컨디션 푸시다운) [MySQL] INDEX 최적화 - 1 글에 이어 두 번째 정리를 해야겠다. 커버링 인덱스 처음 글에 정리했던 것처럼 인덱스는 데이터를 효율적으로 탐색해서 디스크 I/O를 줄이는 게 하는 방법이라고 했다. 커버링 인덱스는 쿼리를 충족하는데 필요한 모든 데이터를 갖는 인덱스를 말한다. WHERE절에 대한 쿼리에 인덱스 컬럼을 걸어 사용하는 것 이외에 SELECT / GROUP BY / ORDER BY 등에 활용되는 모든 컬럼의 인덱스의 구성 요소를 뜻한다. 인덱스를 사용하여 처리하는 부분 중에 가장 큰 부하를 차치하는 부분은 인덱스 검색에서 일치하는 키 값의 레코드를 읽는 것이다. 위의 그림처럼 인덱스 탐색에서 일치하는 키 값의 데이터를 조회하기 위해서 추가적인 디스크 I/O가 발생하게 된다. N번의 인덱.. 2022. 11. 17.
[Database] CAP 이론 CAP이론은 많은 책이나 블로그에서 언급되는 내용인데 정의된 내용은 동일하다. 분산 데이터 저장소 환경은 일관성(Consistency), 가용성(Availability), 분할 내구성(Partitioning) 세 가지의 특성을 가지고 있는데 모든 특성을 만족할 수 없음을 인지하고 이중 두 가지 특성만 만족하는 선택지를 제공해주는 이론이다. 일관성 (Consistency) 모든 클라이언트는 동시에 동일한 데이터를 볼 수 있어야 한다. 노드에서 쓰기 동작이 완료된 후에는 마지막으로 쓰인 데이터를 모든 노드들이 동일하게 제공해주어야 한다는 의미이다. 가용성 (Availability) 특정 노드가 장애로 인해 동작 중지가 되어도 서비스가 가능하도록 데이터를 제공해야 한다. 분산 시스템에서는 운영 중인 모든 노드.. 2022. 11. 14.
300x250