hoonii2

[DB] mysql 대용량 Data index 를 활용한 쿼리 성능 개선 본문

개념 공부/(인프라) 02. Database

[DB] mysql 대용량 Data index 를 활용한 쿼리 성능 개선

hoonii2 2023. 6. 28. 12:31

1. 개요

대용량 Data 가 저장된 상황에서 Index 를 잘 활용하면 성능을 개선할 수 있다는 얘기를 듣고 실제로 성능 개선이 가능한 지 테스트하고 결과를 공유하고자 합니다.

 

 

2. 대용량 Data 구성

https://github.com/datacharmer/test_db

 

GitHub - datacharmer/test_db: A sample MySQL database with an integrated test suite, used to test your applications and database

A sample MySQL database with an integrated test suite, used to test your applications and database servers - GitHub - datacharmer/test_db: A sample MySQL database with an integrated test suite, use...

github.com

 

위 공유 데이터를 활용하여 zip 파일을 다운로드받고 'mysql -u root -p < employee.sql' 로 대용량 데이터를 구성했습니다.

 

employees table

300024 의 데이터가 있는 employees table 을 활용했고 필드 구성은 아래와 같습니다.

first_name 과 last_name 을 이용하여 테스트
index 는 기본 primary key 만 구성

 

 

3. Index 없이 쿼리 결과 확인

first_name = Yechezkel , last_name&nbsp; = Adachi row 검색

대략 0.09 ~ 0.15 sec 정도로 테스트 되었습니다.

 

 

4. index 추가 후 테스트 결과 확인

first_name 필드를 index 로 추가
추가된 index 확인
Select 쿼리 시 생성한 index (myindex) 사용하는 것 확인
실제 쿼리 성능 개선 확인

 

 

5. 참고 내용

아래 블로그에 Index 관련 내용이 자세하게 정리되어있어 도움이 많이 되었습니다.

 

https://mangkyu.tistory.com/286

Comments