튜닝
-
친절한 SQL 튜닝 2장 공부 정리(ing)튜닝 2020. 7. 12. 19:08
2.1.1 데이터베이스 테이블에서 데이터를 찾는 방법은 두 가지다. 테이블 전체를 스캔한다. ex) 초등학교를 방문해 '홍길동' 학생을 찾을 때 1학년 1반부터 6학년 맨 마지막 반까지 모든 교실을 돌며 홍길동 학생을 찾는다. 인덱스를 이용한다. ex) 교무실에서 학생명부를 조회해 홍길동 학생이 있는 교실만 찾아간다. -> 둘 중 어느쪽이 빠를까? 홍길동 학생이 많다면 전자가 빠르고, 몇 안되면 후자가 빠르다. 인덱스는 큰 테이블에서 소량 데이터를 검색할 때 사용한다. 인덱스 튜닝 방법으로 핵심요소는 크게 두 가지로 나뉜다. 1) 인덱스 스캔 효율화 튜닝 - 인덱스 스캔 과정에서 발생하는 비효율을 줄이는 것. ex) 학생명부에서 시력이 1.0~1.5인 홍길동 학생을 찾는 경우 이름과 시력순으로 정렬해 두..
-
친절한 SQL 튜닝 1장 공부 정리튜닝 2020. 5. 10. 22:16
1.1.1 SQL(Structured Query Language)은 기본적으로 구조적이고 집합적이고 선언적인 질의 언어다. 원하는 결과집합을 구조적, 집합적으로 선언하지만, 그 결과집합을 만드는 과정은 절차적일 수밖에 없다. 즉, 프로시저가 필요한데, 그런 프로시저를 만들어 내는 DBMS 내부 엔진이 바로 SQL 옵티마이저다. 옵티마이저가 프로그래밍을 대신해주는 셈이다. * 사용자 ->(SQL) -> 옵티마이저 ->(실행계획) -> 프로시저 DBMS 내부에서 프로시저를 작성하고 컴파일해서 실행 가능한 상태로 만드는 전 과정을 'SQL 최적화'라고 한다. 1.1.2 SQL 최적화 과정 ① SQL 파싱 사용자로부터 SQL을 전달받으면 가장 먼저 SQL파서가 파싱을 진행 - 파싱 트리 생성 : SQL문을 이루..