개발을 하다 보면 RDBMS에 보관되는 데이터가 많아지고, 그러다 보면 쿼리에 따라 검색 속도가 느려지는 경우를 많이 마주치게 된다. 그런 경우에는 대부분 검색 용도로 자주 사용되는 칼럼에 Index를 걸어 검색 속도를 향상하게 될 것이다. 나 또한 그런 방식으로 사용하곤 하는데, 과연 Index가 무엇이고 어떤 원리이길래 이런 경우에 사용되게 되는지 궁금해졌고 어떻게 써야 좀 더 효율적으로 사용할 수 있을지 궁금해졌다. Index란? 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상하기 위한 자료구조이다. 임의의 데이터를 찾기 위해 테이블의 모든 데이터를 검색하면 시간이 오래 걸리기 때문에 데이터와 데이터의 위치를 포함한 자료구조를 생성하여 빠르게 조회할 수 있게 도와준..