Data

    [1028 SQL]Ⅲ. SQL 고급 활용 및 튜닝-제7장 Lock과 트랜잭션 동시성 제어

    제7장 Lock과 트랜잭션 동시성 제어제1절 Lock제2절 트랜잭션제3절 동시성 제어제1절 Lock트랜젝션 동시 데이터접근, 무결성, 일관성 유지하기위해 사용  BlockingLock 발생 특정세션이 작업을 진행하지못하고 멈춤1. 트랜젝션 짧게 정의2. 같은데이터 갱신 동시수행안되게 3. timeout 설정4. 격리성5. 대기현상피하게 프로그래밍교착상태두 세션이 각각Lock설정한 리소스를 서로 액세스하려고 마주보며진행종류1. 공유잠금Shared Lock읽기작업시 여러 트랜잭션이 동시에 잠금획득가능2. 배타잠금Exclusive Lock쓰기작업시 하나의 트랜잭션만 잠금 획득3. 행잠금Row Lock동시성 높임. 4. 테이블잠금Table Lock테이블 전체 잠금 설정 더 큰 범위 데이터 보호 레벨1. 로우레벨..

    [1028 SQL]Ⅲ. SQL 고급 활용 및 튜닝-제6장 고급 SQL 튜닝

    제6장 고급 SQL 튜닝제1절 소트 튜닝제2절 DML 튜닝제3절 데이터베이스 Call 최소화제4절 파티셔닝제5절 대용량 배치 프로그램 튜닝제6절 고급 SQL 활용제1절 소트 튜닝정렬 작업의 성능 최적화 1. 인덱스 활용정렬작업이 컬럼에 인덱스 설정 2. 메모리설정정렬작업에 할당된 메모리를 조정  3. limit 사용필요한 데이터만 정렬 불필요한 정렬작업 최소화 4. 소트머지 알고리즘 최적화 제2절 DML 튜닝  1. 인덱스 관리인덱스 많으면 DML 성능이 저하, 필요한 인덱스만 유지 2. 배치처리 대량의 DML 작업은 배치로 처리 성능최적화 3. 트랜젝션 관리 트랜잭션 크기 관리  4. 잠금관리잠금 경합을 최소화  제3절 데이터베이스 Call 최소화네트워크 트래픽, 서버 부하 1. 배치호출여러개SQL문을..

    [1028 SQL]Ⅲ. SQL 고급 활용 및 튜닝-제5장 SQL 옵티마이저

    제5장 SQL 옵티마이저제1절 SQL 옵티마이징 원리제2절 SQL 공유 및 재사용제3절 쿼리 변환제1절 SQL 옵티마이징 원리sql 쿼리를 가장 효율적으로 실행할수있는방법 1. 통계정보 데이터 분포, 인덱스정보, 데이터 크기  실행계획 세움 2. 비용기반최적화실행계획중 가장 낮은 비용을 가진 계획 선택 3. 규칙기반 최적화 사전 정의된 규칙기반 실행계획 선택 4. 힌트개발자가 특정실행계획 강제 제2절 SQL 공유 및 재사용동일 쿼리 반복적 수행시 쿼리 파싱, 최적화 생략  1. 쿼리 캐시동일 쿼리 결과 캐시에 저장 재사용 2. 프리페어드 스테이트먼트쿼리 템플릿 미리 준비, 파라미터만 변경 3. 바인드 변수쿼리 변수를 바인드 변수로 처리, 쿼리 재사용성 높임 4. 공유쿼서동일한 SQL 문장 반복실행, 컴파..

    [1028 SQL]Ⅲ. SQL 고급 활용 및 튜닝-제4장 조인 튜닝

    제4장 조인 튜닝제1절 NL 조인제2절 소트 머지 조인제3절 해시 조인제4절 스칼라 서브쿼리제5절 고급 조인 기법조인튜닝   1. NL 조인 Nested Loop Join개념중첩 루프 방식으로 조인1. 외부 테이블의 각 행을 하나씩 읽습니다. 2. 내부 테이블에 조건에 맞는행을 찾기위해 스캔.  장점간단, 구현이 쉬움, 작은 테이블간의 조인에 적합 단점큰 테이블에서 성능이 저하됨 O(n*m) 복잡도, 여기서 n은 외부 테이블의 행수, m은 내부테이블의 행수 성능향상1. 인덱스 활용2. 작은 테이블과 큰테이블간 조인에 사용.  2. 소트머지조인Sort-Merge Join개념두테이블 정렬한 후 정렬된 데이터를 병합 조인. 1. 조인 조건에 따라 정렬 2. 정렬된 데이터를 순차적으로 병합 조인  장점 대량데이..

    반응형