2014-02-08 8 views
3

A, B 및 C 열이 3 개인 테이블이 있다고 가정 해 보겠습니다. A는 기본 키입니다. A와 B로 검색하는 쿼리와 A와 C로 검색하는 쿼리의 두 가지 유형이 있습니다. C에 대한 보조 인덱스를 A와 C를 기반으로 검색하거나 A, C, 및 B 열.카스 산드라의 쿼리에서 기본 키와 보조 인덱스를 사용하는 성능

다른 관점에서 볼 때, 일반적으로 두 개의 열에 두 개의 보조 인덱스가 있고 두 인덱스 모두에서 where 절을 조절하는 것은 좋지 않습니다. 기본 키와 보조 색인을 결합하는 것과 동일한 경우입니까?

https://www.youtube.com/watch?v=CbeRmb8fI9s#t=56

https://www.youtube.com/watch?v=N6UY1y3dgAk#t=30

답변

5

보조 인덱스는 거의 그들은 주로 쿼리 데이터를 탐색 할 수 있도록하기위한 설득의 도구입니다, 성능에 도움이되지 않습니다. 거의 모든 성능 향상은 기본 키를 적절히 구조화하고 수행하려는 쿼리를 적절히 모델링하는 데이터 스키마를 작성함으로써 발생합니다.

두 테이블을 갖는 A와 B는 A와 C를 사용하는 것이 가장 이상적인 솔루션 일 수 있으며 실제로 데이터로 확장됩니다.

+0

You Russ,이 동영상은 https://www.youtube.com/watch?v=N6UY1y3dgAk#t=30 내가 다르게 생각하게 만들었지 만 설명이 없습니다. – Navid

+0

몇 가지 이유가 있지만 가장 큰 점은 보조 인덱스가 클러스터 전체에 분산된다는 것입니다. 이 때문에 2 차 인덱스 쿼리를 수행 할 때 모든 노드의 데이터가 필요하게됩니다. 여기 좋은 runthrough있는 사이트입니다 맞습니다하지만 비디오는 파티션 키와 인덱스를 혼합하는 경우에 도움이 될 수 있음을 언급 http://www.wentnet.com/blog/?p=77 – RussS

+0

, I 그 사건이 무엇인지 그리고 왜/어떻게 그것이 유익 할 수 있는지를 알고 싶습니다. – Navid