안녕하세요, 오라클자바교육학원입니다.

서비스가 느려서 확인해보니, 문제는 서버도 아니고 네트워크도 아니었습니다.

바로 SQL 인데요,... 더 이상한 점은 쿼리 자체는 틀린 게 없다는 점입니다.

많은 개발자들은 문법만 맞고, 결과가 잘 나오면 끝이다.

이렇게 생각하지만, SQL은 맞다, 틀리다 보다는 어떻게 실행 되느냐가 더 중요합니다.

오라클에서는 SQL을 실행하면 바로 동작하는 게 아니라

내부적으로 실행 계획을 만듭니다.

그리고 이걸 결정하는 게 옵티마이저입니다.

문제는 이 실행 과정이 코드에는 안 보인다는 것입니다.

현업에서 자주 나오는 케이스를 보면

  • 테스트 환경 → 빠름
  • 운영 환경 → 느림

옵티마이저가 다른 선택을 했기 때문입니다.

같은 SQL인데도 어떤 환경에서는 인덱스를 쓰고, 어떤 환경에서는 전체 스캔을 합니다

이 차이로 속도가 몇 배씩 벌어집니다.

여기서 필요한 게 Hint Tuning입니다.

Hint는 간단하게 말하자면, 이렇게 실행해라고 옵티마이저에게 직접 지시하는 것입니다.

실행 방식을 직접 컨트롤합니다.

개발을 하다보면 이상하게 느린 SQL을 한번은 반드시 볼 거에요.

이걸 감으로 그냥 해결하는 단계가 아닌, 벗어나려면

옵티마이저와 힌트 튜닝을 이해해야합니다.

같은 코드로 더 빠르게 만드는 능력, 이것이 진짜 실무에서 통하는 실력입니다.

저희 교육센터에서 수강생분들께 힘이 되보고자,

4월 등록 수강생 대상 중식 무료 제공하는 이벤트를 진행하려고 합니다.

평일반 : 구내식당 제공

주말반 : 도시락 제공

이렇듯 평일반과 주말반 모두 해당됩니다!

저희 학원 수업을 듣는 수강생들이라면 누구나 다 지원되는 이벤트에요 ◡̈  

자세한 문의사항 및 궁금한 점이 있으시다면 전화 상담 또는 홈페이지 참고 바랍니다.

항상 수강생 여려분께 최고의 교육을 제공하기 위해 노력하는 오라클자바교육센터가 되겠습니다!

감사합니다!

 

https://www.oraclejava.co.kr/edu/index.php/curriculum/view/4272

 

오라클자바교육학원

훈련 내용 선택 선택 사업주위탁훈련 재직자직업능력개발카드 실업자직업능력개발카드 일반 지원하기

www.oraclejava.co.kr

 

+ Recent posts