
지난 1편에서 성능튜닝을 왜 해야하는지와 실행계획을 분석하는 방법에 대해서 살펴보았다. 실행계획의 정보를 보면서 어떤 것을 통해 성능을 개선할 수 있는지 약간은 감이 왔을 것이다. 그럼 이 분석한 실행계획을 바탕으로 정말 성능 개선을 해보자! ❓ 그럼 어떻게 실행되고 있는 SQL이 좋고 나쁜지 구분할 수 있을 까? 명확히 실행 계획 보고 성능 개선이 필요한지 선 그어 구분하긴 어렵다. 하지만 각자 상황에 맞게 검토 대상 추출이 필요하다. 자세한 내용은 노션을 참고하자. 위 실행계획의 특정 값에 대해서 설명하자면, 다음과 같다. 1. DEPENDENT SUBQUERY, DEPENDENT UNION (select_type) union, union all을 사용하는 서브쿼리가 메인 테이블의 영향을 받는 경우로..

나는 이번 Space Club 프로젝트를 진행하면서, SQL문을 작성하는 방식에 대해서 고민했었다. SQL 쿼리를 통해 같은 데이터 다루더라도 작성하는 방법은 여러 방법이 있는데, 내부적으로 DBMS 안에서 어떻게 작동되는지, 어떻게 SQL을 작성하는 것이 효율적인 방법인지 궁금했다. 일단 효율을 논하기 전에, 내가 프로젝트에서 썼던 MySQL 구조와 작동 방식부터 학습하는게 필수였다. 구조와 작동 방식보다도, 일단 왜 MySQL을 사용했는지에 대한 이해가 필요했다. 🤷 MySQL을 왜 프로젝트에서 사용했는가? 데이터베이스를 다루는 DBMS로는 여러 종류가 존재한다. 그 중, 관계형 DB는 1. 일반적으로 가장 많이 사용하는 데이터베이스이고, 2. 테이블 분리를 통해 중복값에 따른 성능 저하 방지 및 ..
- Total
- Today
- Yesterday