본문 바로가기

SQL심화-Training15

3장 SQL 튜닝의 실행 계획 파헤치기 - (1) 3.2 실행 계획 수행실행 계획은 쿼리문을 옵티마이저가 비용 기반 최적화를 적용하여 비용이 최소로 소요되는 방법을 찾아내는 것을 의미한다. 3.2.1 기본 실행 계획 수행아래 3가지 방법으로 실행 계획을 확인할 수 있다.EXPLAIN 쿼리문DESCRIBE 쿼리문DESC 쿼리문일반적으로 EXPLAIN을 사용한다. 예를 들어 아래처럼 실행하여 확인할 수 있다. EXPLAIN SELECT * FROM employees WHERE emp_no BETWEEN 100001 AND 200000; 3.2.2 기본 실행 계획 항목 분석실행 계획을 조회하면 나타나는 각 컬럼들의 역할을 알아보자 3.2.2.1 id단위 SELECT 쿼리별로 부여되는 식별자 값이다. 하나의 SELECT 문장 안에서 여러 개의 테이블을 .. 2025. 3. 14.
2장 SQL 튜닝 용어를 직관적으로 이해하기 1. DB 엔진 1.1 스토리지 엔진스토리지 엔진은 데이터를 관리하는 엔진이며 데이터 저장 방식에 따라 엔진이 구분된다. MySQL은 InnoDB 스토리지 엔진을 기본적으로 사용하며 InnoDB는 클러스터링 인덱스 방식으로 데이터를 저장한다. MySQL 엔진이 요청한 데이터를 디스크나 메모리에서 찾아서 MySQL 엔진에게 전달한다. 1.2 MySQL 엔진사용자가 요청한 SQL문을 SQL 파서와 전처리기(Preprocessor)에서 문법 검사를 진행하고 SQL 옵티마이저에 의해 데이터를 가져올 최적의 계획을 세운 후 스토리지 엔진에게 실행 계획대로 데이터를 가져오길 요청한다. 스토리지 엔진으로부터 넘겨받은 데이터에서 불필요한 데이터는 제거하고 가공 및 연산을 진행한다. 그리고 사용자에게 결과 데이터를 전.. 2025. 3. 14.
요구사항 명세서 소프트웨어 개발 프로젝트에서 사용자의 요구사항을 정의하는 문서이다. 이 문서를 통해 사용자가 원하는 것을 정확하게 파악하고 이해 관계자간의 원활한 소통을 위해 문서를 작성한다.데이터베이스 심화과정은 DB 구축을 다루기에 요구사항 명세서를 DB 구축에 최적화된 템플릿을 사용한다. 대상서비스 사용자 (게스트, 일반 유저, 고급 유저, 관리자 등) 내부 규칙에 따라 식별자를 부여한다. ID하나의 요구사항에 하나의 식별자 값이 부여되면 된다. 기능명만들어야 하는 기능명기능 설명기능에 대한 상세 설명필수 데이터기능을 처리하기 위해 필요한 데이터비고추가 내용담당자기능을 구현할 담당자 이름 대상에 따른 ID 체계를 정한다.USER: 고객 관련OWNER: 점주 관련RIDER: 라이더 관련대상 ID 기능명기능 설명필수.. 2025. 2. 18.