
안녕하세요, 오라클자바교육학원입니다.
서비스가 느려서 확인해보니, 문제는 서버도 아니고 네트워크도 아니었습니다.
바로 SQL 인데요,... 더 이상한 점은 쿼리 자체는 틀린 게 없다는 점입니다.
많은 개발자들은 문법만 맞고, 결과가 잘 나오면 끝이다.
이렇게 생각하지만, SQL은 맞다, 틀리다 보다는 어떻게 실행 되느냐가 더 중요합니다.
오라클에서는 SQL을 실행하면 바로 동작하는 게 아니라
내부적으로 실행 계획을 만듭니다.
그리고 이걸 결정하는 게 옵티마이저입니다.
문제는 이 실행 과정이 코드에는 안 보인다는 것입니다.
현업에서 자주 나오는 케이스를 보면
- 테스트 환경 → 빠름
- 운영 환경 → 느림
옵티마이저가 다른 선택을 했기 때문입니다.
같은 SQL인데도 어떤 환경에서는 인덱스를 쓰고, 어떤 환경에서는 전체 스캔을 합니다
이 차이로 속도가 몇 배씩 벌어집니다.
여기서 필요한 게 Hint Tuning입니다.
Hint는 간단하게 말하자면, 이렇게 실행해라고 옵티마이저에게 직접 지시하는 것입니다.
실행 방식을 직접 컨트롤합니다.
개발을 하다보면 이상하게 느린 SQL을 한번은 반드시 볼 거에요.
이걸 감으로 그냥 해결하는 단계가 아닌, 벗어나려면
옵티마이저와 힌트 튜닝을 이해해야합니다.
같은 코드로 더 빠르게 만드는 능력, 이것이 진짜 실무에서 통하는 실력입니다.
저희 교육센터에서 수강생분들께 힘이 되보고자,
4월 등록 수강생 대상 중식 무료 제공하는 이벤트를 진행하려고 합니다.
평일반 : 구내식당 제공
주말반 : 도시락 제공
이렇듯 평일반과 주말반 모두 해당됩니다!
저희 학원 수업을 듣는 수강생들이라면 누구나 다 지원되는 이벤트에요 ◡̈
자세한 문의사항 및 궁금한 점이 있으시다면 전화 상담 또는 홈페이지 참고 바랍니다.
항상 수강생 여려분께 최고의 교육을 제공하기 위해 노력하는 오라클자바교육센터가 되겠습니다!
감사합니다!
https://www.oraclejava.co.kr/edu/index.php/curriculum/view/4272
오라클자바교육학원
훈련 내용 선택 선택 사업주위탁훈련 재직자직업능력개발카드 실업자직업능력개발카드 일반 지원하기
www.oraclejava.co.kr
