2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

기타/도서리뷰

[나는 리뷰어다]업무에 바로 쓰는 SQL 튜닝

원당컴1 2021. 7. 14. 10:57

 

"이 책은 MySql/MariaDB를 사용하는 분들에게 도움이 되는 지침서입니다."

 

- 이 책은 무료 데이터베이스인 MySql 또는 MariaDB를 사용하는 분들에게 도움이 되는 지침서입니다.

 

1. 현재 사용하고 있는 SQL 문을 검토해 볼 수 있습니다.

  • 기본키(Primary Key) 를 사용할 수 있는 쿼리문이지만 조건(Where) 절의 잘못된 구문으로 인하여 Full Scan 하는 경우의 잘못된 예제를 확인하고 이것을 튜닝하는 방법에 대해 다룹니다.
  • 형변환이나 사용하지 않는 함수를 포함하므로 인해 인덱스를 사용할 수 있는 쿼리문이지만 조건절의 잘못된 구문으로 인하여 Full Scan 하는 경우의 잚소된 예제와 튜닝하는 방법에 대해 다룹니다.
  • 열을 결합하는 경우에도 Full Scan 이 되는 것을 확인하고 이것을 Union 으로 튜닝하는 방법에 대해서도 다루고 있습니다.
  • 테이블을 Join 하여 중복을 제거하는 문장(Distinct)에서도 좀 더 좋은 쿼리문을 만들 수 있는지에 대한 문제에 대해 다루고 있습니다.
  • 다수 쿼리를 Union 연산자로만 합치는 경우에도 메모리에 생성된 테이블을 이용하는 경우 좀 더 빠른 속도가 향상이 되는데 이러한 메모리를 활용할 수 있는 방법에 대해서 다루고 있습니다.
  • 인덱스를 활용할 수 있는 SQL 임에도 Group by 절의 순서에 따라서 인덱스를 활용하지 않는 경우도 다루고 있습니다.
  • 엉뚱한 인덱스를 사용하는 나쁜 SQL 인 경우 수정할 수 있는 방법에 대해 다루고 있습니다.
  • 테이블 조인 순서, 혹은 메인테이블에 종속적인 쿼리문등 다양한 경우에 대해 튜닝하는 방법을 알아 봅니다.

 

2. 악성 SQL 튜닝 방법에 대해 알아 볼 수 있습니다.

  • 테이블 조인시에 모든 데이터를 가져 오는 경우 치명적일 수 있는데 이러한 SQL 구문을 개선하는 방법에 대해서 알아 봅니다.
  • 대량의 데이터를 가져와 조인하는 쿼리문을 살펴 보고 개선 할 수 있는 방법에 대해서 살펴 봅니다.
  • 인덱스 없이 조회 하는 경우 인덱스 생성만으로도 성능을 향상 시킬수 있는데 이러한 부분에 대해서도 살펴 봅니다.
  • 인덱스 열의 속성값을 대소문자를 구분하는 속성, 또는 대소문자를 구분하지 않는 속성값을 적절히 활용하여 쿼리문을 변경함으로 성능개선 할 수 있는 방법에 대해서 살펴 봅니다.

 

 

이 책을 읽으면서

10년이 넘는 실무를 수행하면서 대용량 데이터 베이스를 다룰때 속도 개선에 대해 고민을 많이 해 보았는데 인터넷 검색을 통해서 부분적인 부분들에 대해서만 고민을 했었던것 같네요.

이 책을 읽으면서 SQL 튜닝에 대해 다양한 방법등을 살펴 보면서 이런 부분들은 고려하지 못했었는데 이런 부분도 있었다는 것을 깨닫게 되는 부분이 많았습니다.

특히나 Group By 절의 순서만 바뀌었을 뿐인데 인덱스를 활용하거나 활용하지 않거나 하는 부분의 내용을 읽을때는 예전에 만들었던 쿼리 문도 과연 이랬던 것은 아닐까 라는 생각을 갖게 되면서 얼굴이 화끈거리는 경우도 있었네요~

실무에서 손을 떼었지만 이 책을 읽으면서 예전에 이 책을 만났더라면 데이터베이스 영역 때문에 고민 했던 부분들을 많이 덜어 주지 않았을까 라는 생각을 해 보게 되었네요.

 

이 책을 읽으면 도움이 되실 분
  1. MySql/MariaDB 를 사용하시는 분이 쿼리를 튜닝하고 싶은 분들에게는 필독서
  2. 어플리케이션을 만들고 계신분들도 한번 읽어 보면 쿼리문의 순간 실수로 인덱스를 활용하는지 안하는지 등을 고민해 볼 수 있을것 같네요.
  3. 대학생이 데이터베이스 과목을 수강하고 있다고 하면 이 책을 이용해서 쿼리문을 직접 실습해 보면서 인덱스의 개념과 기본키의 개념  및 데이터 베이스의 큰 그림을 그려 볼 수 있을것 같네요.

 

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

[인천 서구 검단신도시 원당컴퓨터 학원]

 

 

원당컴퓨터학원에서는?

1. 4차 산업 시대의 흐름은 컴퓨터를 얼마나 이해하느냐에 따라 삶의 질이 틀려 질 수 있다는 것을 항상 염두에 두고 있습니다.

2. 알고리즘은 프로그래밍의 근원이 되는 문제해결 능력이며, 머신러닝은 IoT등에 의해 모여진 데이터를 활용하는 기법입니다.

3. 이에 따라 초,중,고 학생들이 알기 쉽게 이해하는 인공지능 부터 알고리즘까지 학생들의 실력에 맞춰 수업을 진행중에 있습니다.

4. 현재 초등학생이 고등학생이 되는 때에는 고교학점제 도입에 따라 자신이 전공하고자 하는 특기가 크게 부각 될것입니다.

5. IT 업체중 규모가 큰 곳에서는 코딩테스트(알고리즘테스트)로 블라인드 면접을 수행하는곳이 늘고 있습니다.

6. 미래 IT를 꿈꾸는 학생들의 산실이 되기 위해 항상 최선을 다하는 원당컴퓨터학원이 되겠습니다.

 

※ 정보영재 혹은 인공지능 관련 수업에 관해 궁금하신 분은 문의(032-565-5497) 주세요.

 

 

원당컴퓨터학원 커리큘럼

- OA : 학교 수행 평가에 꼭 필요한 컴퓨터 활용능력 향상

- IT 자격증 과정 : 취업대비,대학생인증제,승진을 위한 국가공인 자격증 취득과정

- 정보영재 : 정보올림피아드 및 알고리즘 대회/소프트웨어특기자전형/디미고 특별전형 대비/코딩테스트 대비를 위한 알고리즘 과정

- 프로젝트반 : 응용프로그래밍/웹프로그래밍/앱프로그래밍 등을 통해 직접 만들어 보면서 컴퓨터 프로그래밍 이해(소프트웨어 학생부종합전형/특성화고(디미고,선린고등) 특별전형대비)

- 인공지능 : 인공지능의 이해 및 실습을 통해 빅데이터 가공(4차 산업 시대의 축이 되는 인공지능 시대를 대비)

- 일반고,과고,영재고,특성화고,컴퓨터학과(SW) 대학생을 위한 내신대비 : python,java,c++,자료구조,알고리즘,이산수학 

 

사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기