반응형
쿼리.. 좋고 나쁨을 판단하는 기준이 있을까? 🤔
실행 계획(explain)을 수행하여 출력된 정보를 살펴보면,
SQL 튜닝 대상인 실행 계획과 튜닝이 필요하지 않은 실행 계획을 명확히 선을 그어 구분하기란 어렵다.
하지만 나름의 기준을 수립하고 각자의 상황에 맞게 검토 대상을 추출할 수 있다.
SQL 튜닝 대상을 검토할 때 다음과 같은 기준을 참조할 수는 있다.
위에 보여지는 것들 외에 더 많은 항목들이 있지만,
다 알기는 어려우니 좋은 것과 나쁜 것만 구분한다면
더 쉽고 간단하게 쿼리 튜닝이 가능할 것이다.
실제 간단 쿼리에 explain 을 적용해보면 아래와 같이 나온다.
쿼리 튜닝 시, 여기에서 표시되 3가지 항목을 주의깊게 보면 되는 것이다.
그럼.. 튜닝의 방향성은?
반응형
튜닝의 방향성 또한 따로 정해져 있지는 않다.
하지만 다양한 항목을 분석한 뒤 SQL 문의 튜닝 방향을 잡을 수 있다.
이러한 절차는 눈으로만 봐서는 감이 안 올 수 있다.
실제로 쿼리 최적화를 진행할 때, 위의 절차대로 해보려는 노력이 필요하다.
🔥 예시를 통한 쿼리 최적화 살펴보기🔥
✅ 형변환으로 인덱스를 활용하지 못하는 나쁜 SQL
✅ 중복을 제거하는 나쁜 SQL
✅ 다수 쿼리를 UNION 연산자로 합치는 나쁜 SQL
✅ 인덱스 고려 없이 열을 사용하는 나쁜 SQL
반응형
'DataBase' 카테고리의 다른 글
[ 데이터베이스 ] 벼락치기 달인이 말아주는 SQLD 시험(기출문제 O) (0) | 2024.01.16 |
---|---|
[ flyway ] flyway 개념 및 실습 (0) | 2020.09.20 |