최근 색인의 경이로움을 배웠고 성능이 크게 향상되었습니다. 그러나, 나는 배웠 습니다만, 나는이 질문에 답을 찾을 수없는 것 같습니다.MySQL - 모든 필드를 인덱싱하지 않는 이유는 무엇입니까?
색인은 훌륭하지만 왜 누군가가 모든 필드의 색인을 생성하여 엄청나게 빠른 표를 만들 수 없었습니까? 이 일을하지 않는 것이 좋은 이유가있을 것이라고 확신하지만 서드 필드 테이블에는 3 개의 필드가 있습니까? 30 필드에서 10? 왜 선을 그어야하며, 그 이유는 무엇입니까?
인덱싱 된 항목이 10,000 개 이상인 테이블에 값을 삽입하려고하면 모든 항목이 삽입/삭제 및 각 값에 인덱스가있는 경우 이것은 엄청난 시간 오버 헤드와 약간의 메모리 오버 헤드입니다 –
공간 및 쓰기 성능 외에도 한 가지 더 많은 이유가 있습니다. [단일 테이블 액세스에 여러 인덱스를 사용하는 것은 매우 비효율적입니다] (http : //use-the-index-luke.com/sql/where-clause/searching-for-ranges/index-combine-performance). 즉, 각 열에 하나의 인덱스가 있어도 WHERE 절에서 여러 열에 액세스하면 선택 성능이 좋지 않습니다. 이 경우 다중 열 인덱스가 가장 좋습니다. –