MariaDB DBMS/MariaDB 튜닝용어(3)
-
[SQL 튜닝 실습] SQL 튜닝용어 정리 3
응용 용어 선택도 특정 컬럼을 기준으로 조건절에 따라 선택되는 데이터 비율 해당 컬럼에 중복되는 데이터가 많으면 "선택도가 높다" 중복 데이터가 적으면 "선택도가 낮다" 낮은 선택도의 컬럼을 인덱스로 지정한다 선택도 = 선택한 데이터 건수 / 전체 데이터 건수 변형된 선택도 = 1 / DISTINCT(COUNT 열명) 학번 컬럼의 선택도 = 1 / 100 0.01 의 선택도라면 낮은 선택도라고 할 수 있다 성별 열 컬럼의 선택도 = 50 / 100 0.5 의 선택도라면 높은 선택도라고 할 수 있다. 카디널리티 하나의 데이터 유형으로 정의되는 데이터 행의 개수 전체 데이터에 접근 후 출력될 것이라고 예상되는 데이터 건수를 말함 현업에서는 전체 행에 대한 특정 컬럼의 중복 수치를 나타내는 지표로 활용 카디널..
2021.08.08 -
[SQL 튜닝 실습] SQL 튜닝용어 정리 2
[조인 훈련] 이 학번 컬럼값을 기준으로 두 테이블을 가지고 조인 분석을 하세요. 순서 1. 원 2개 겹쳐그리기 2. 공통된 교집합 찾아서 값 적기 3. 교집합을 제외한 각각 양쪽에 해당하는 값 적기 정답 (*) 조인작성 시 사람이 판단하는 기준인 왼쪽을 기준으로 인지하기 편하므로 레프트 아우터 조인을 권장한다. 조인 알고리듬 용어 테이블 조인 시, 조인순서 배치에 따라 테이블의 데이터에 접근하는 우선순위 첫번째 : 드라이빙 테이블 두번째 : 드리븐 테이블 용어로 구분한다. (*) 리턴결과가 적을 것으로 예상되는 테이블을 드라이빙 테이블로 선정하며, 조인 조건적의 열이 인덱스로 설정되도록 구성해야한다. 중첩 루프 조인 (NL 조인) 드라이빙 테이블의 데이터 1건당 드리븐 테이블의 데이터 N건 씩 반복하며..
2021.08.08 -
[SQL 튜닝 실습] SQL 튜닝용어 정리 1
1. 물리 엔진과 오브젝트 용어 마리아DB SQL 수행 프로세스 1) 사용자로부터 SQL문 실행 2) MariaDB 엔진이 SQL문 문법 검사 (파싱) 3) 사용자가 요청한 데이터를 빠르고 효율적으로 찾아가는 전략적 계획 수립 (옵티마이저) 4) 이 수립된 계획대로 스토리지 엔진에 위치한 데이터까지 찾아간 후 해당 데이터를 마리아DB 엔진으로 전달 5) 마리아DB 엔진은 전달된 데이터에서 불필요한 부분을 필터링 후 필요한 연산을 수행 후 사용자에게 최종결과를 알려준다. 스토리지 엔진 (InnoDB, MyISAM, Memory 등) 사용자가 요청한 SQL문을 토대로 DB로부터 저장된 디스크나 메모리에서 필요한 데이터를 가져오는 역할 수행 수행 후 해당 데이터를 마리아DB 엔진으로 보내준다. 데이터 저장 방..
2021.08.08