가능한 중복 : 나는 (PHP와) MySQL 데이터베이스 작업과 쿼리 속도를하는 데 사용되는 데이터베이스 인덱스에 대해 궁금하네요
What columns generally make good indexes?언제 데이터베이스에 인덱스를 적용해야합니까?
.
데이터베이스에 몇 개의 행만있는 경우에도 색인을 사용해야합니까? 아니면 데이터베이스가 커져서 느린 경우에만 적용해야합니까?
가능한 중복 : 나는 (PHP와) MySQL 데이터베이스 작업과 쿼리 속도를하는 데 사용되는 데이터베이스 인덱스에 대해 궁금하네요
What columns generally make good indexes?언제 데이터베이스에 인덱스를 적용해야합니까?
.
데이터베이스에 몇 개의 행만있는 경우에도 색인을 사용해야합니까? 아니면 데이터베이스가 커져서 느린 경우에만 적용해야합니까?
이 상태로 성장하는 테이블을 계획하고 있다면 생성에서 사용하십시오. 응용 프로그램을 빨리 바로 만들 수 있으며 나중에 DBMS에서 색인을 적용하지 않아도됩니다.
테이블 크기가 커질 것으로 예상되는 것과 관련하여 테이블을 디자인 할 수 있습니다. 인덱싱은 본질적으로 인덱싱되는 테이블의 일부 사본을 생성하기 때문에 더 많은 디스크 공간이 필요합니다.
시간 제약에 따라 향후 더 많은 작업을 방지하기 위해 색인을 추가하겠습니다.
모든 프로젝트와 마찬가지로 데이터베이스 변경으로 인해 전체 코드베이스를 변경해야한다는 것을 알기 전에 데이터 모델을 원할 것입니다.
쿼리의 유형을 분석 한 후 데이터베이스의 인덱스를 적용해야하며 테이블의 행 수는 아닙니다.
처음부터 색인을 추가하고 분석을 다시 방문하고 필요에 따라 색인을 추가하거나 제거하는 것을 두려워하지 마십시오. 그들은 단지 한 번만 기회를 얻는 것이 아닙니다.
일찍 최적화하지 마십시오. 어쨌든 공통 검색 열에 인덱스를 추가하십시오. 각 삽입은 인덱스 업데이트를 요구하므로 인덱스를 현명하게 배치하십시오.
병목 현상을 일으킬 수있는 쿼리 및 트랜잭션 유형은 절대적으로 옳습니다. –