인덱스를 만들었는데 쿼리가 느린 이유
·
IT
데이터베이스에 인덱스를 만들어 뒀는데 쿼리가 여전히 느리다면, 인덱스가 있는 것과 인덱스를 타는 것이 다르기 때문이다. 이 글은 인덱스가 무시되는 흔한 패턴을 실제 쿼리와 함께 정리한다. PostgreSQL과 MySQL 기준으로 쓰지만 원리는 대부분의 관계형 데이터베이스에 공통이다.먼저 실행 계획을 보는 법추측하지 말고 확인해야 한다. 모든 판단은 실행 계획에서 시작한다.-- PostgreSQLEXPLAIN (ANALYZE, BUFFERS) SELECT * FROM orders WHERE user_id = 42;-- MySQLEXPLAIN ANALYZE SELECT * FROM orders WHERE user_id = 42;여기서 볼 것은 딱 하나다. Seq Scan(PostgreSQL)이나 type: ..