728x90
반응형
SMALL
안녕하세요, 유튜브 SQL 튜닝 강의를 보고 학습한 자료를 남깁니다.
감사합니다.
인덱스 직접 설정해보기
그림에 맞도록 데이터베이스와 users 테이블을 생성해보았다.
그리고 더미 데이터를 100만건 생성하였다.
유튜버의 코드를 공유한다.
재귀 횟수를 100만건 선언한다.
그리고 cte라는 임시 테이블을 생성하고
cte 임시 테이블안에 100만건의 데이터를 적재한다.
그리고 그 임시 테이블에서
n을 조회해서 id를 만들고, 1부터 1000까지의 랜덤값을 age로 만들어서 조회한다.
그리고 그 조회된 데이터들을 users 테이블의 id와 age 컬럼에 맞게 INSERT한다.
이렇게 100만건의 더미 데이터를 만들었다.
그리고 조회를 한다.
나이가 23세인 회원만 조회를 하였는데, 소요시간이 약 345(ms) 정도가 소요된다.
나이 컬럼에 인덱스를 생성하고
다시 23세인 회원을 조회를 하니 소요 시간이 159(ms) 정도 소요되었다.
그 이유는
나이 컬럼에 인덱스를 생성하여
속도가 빨라진 것이다.
인덱스를 생성하면 위 그림과 같이 정렬된 나이 인덱스 표를 기준으로 데이터를 조회하기 때문이다.
정말, 감사합니다.
https://www.youtube.com/watch?v=VI30oDxOlGU&list=PLtUgHNmvcs6rJBDOBnkDlmMFkLf-4XVl3&index=7
728x90
반응형
LIST
'친절한 SQL 튜닝' 카테고리의 다른 글
[친절한 SQL 튜닝] 10강) SQL문의 '실행 계획' 사용해보기 (EXPLAIN) (0) | 2024.10.29 |
---|---|
[친절한 SQL 튜닝] 8,9강) 자동 생성 인덱스 (4) | 2024.10.29 |
[친절한 SQL 튜닝] 6강) 인덱스(Index)란? (0) | 2024.10.28 |
[친절한 SQL 튜닝] 5강) 성능 개선을 위한 MySQL 구조 파악 / SQL 튜닝의 핵심 (0) | 2024.10.28 |
[친절한 SQL 튜닝] 4강) DB 성능 개선할 때 'SQL 튜닝'을 가장 먼저 해야 하는 이유 (0) | 2024.10.28 |