목차
728x90
- 클라이언트 요청에 대한 응답시간과
- 시간당 처리 할 수 있는 처리량
성능 용어
- concurrent user - 동시 사용자
- TPS(transaction per second) - 서버가 일정 시간 내에 처리한 트랜잭션의 양
- Response Time : 요청한 후부터 응답을 받을 떄까지 소요된 시간
- Resource : 한정된 값을 가진 시스템의 구성 요소를 의미


성능 측정 대상
- 목표 TPS를 산정하고 정해진 응답시간 내에 모든 요청이 처리되는지 확인
- 기준

데이터베이스와 병목의 관계
병목의 원인
- 취급하는 데이터의 양이 가장 많은 원인
- 시스템에서 처리하는 데이터는 영속적으로 보유해야 하는 데이터일 확률이 크다.
- 데이터의 총 크기는 지속적으로 증가
- 동시성을 보장하는 드으이 문제로 무조건 적인 자원 증가을 통한 성능 문제 해결이 어려움(저장소 확장의 어려움)
- DBMS 내부 I/O 병목으로 인해 대기 시간이 길어질 수 있음

프로세스 생성 주기

- 여러 프로세스가 하나의 CPU를 공유할 수는 있음.
- interrupt 없이 일하던 프로세스도 디스크에서 데이ㅓ를 읽어야할 땐 CPU를 OS에 반환하고 잠시 waiting 상태에서 I/O가 완료되기를 대기.
- SQL 문에서 발생하는 절대적인 I/O의 횟수를 줄이는 것이 성능 개선의 핵심
성능을 결정하는 요인
SQL문의 특성
- SQL은 기본적으로
- 결과 집합을 만드는 과정은 절차적, 각각의 프로시저를 만드는 역할을 optimizer가 담당한다.

SQL문의 실행 과정
- SQL 파싱
- SQL 최적화
- raw source 생성

optimizer
- 사용자가 원하는 작업을 가장 효율적으로 수행할 수 있는 최적의 데이터 액세스 경로를 선택해주는 DBMS의 핵심 엔진
- 후보군이 될 만한 실행 계획을 찾아낸 후, 통계 정보를 ㄷ이용해 각 실행 계획의 예상 비용을 산정한 후 최저 비용을 나타내는 실행 계획을 선택.

실행계획은 어떻게 생겨지는가
실행 계획 확인
Table Full Scan : 테이블 전체 레코드를 처음부터 끝까지 읽기
Index Range Scan : 테이블의 일부 레코드에만 액세스

인덱스를 이용한 성능 개선


인덱스 구조


728x90
'정리' 카테고리의 다른 글
[210827_라이브 강의] 2. 데이터 전처리-상관관계 분석, 3. 예측모델 구현 (1) | 2021.08.27 |
---|---|
[210827] 의사결정나무(decision Tree) (0) | 2021.08.27 |
[데이터베이스 강의 정리] 8. 백업 및 복구 (0) | 2021.08.05 |
[데이터베이스 강의 정리] 7. 테이블 설계 (0) | 2021.08.05 |
[데이터베이스 강의 정리] <참고> Entity (0) | 2021.08.05 |
728x90
- 클라이언트 요청에 대한 응답시간과
- 시간당 처리 할 수 있는 처리량
성능 용어
- concurrent user - 동시 사용자
- TPS(transaction per second) - 서버가 일정 시간 내에 처리한 트랜잭션의 양
- Response Time : 요청한 후부터 응답을 받을 떄까지 소요된 시간
- Resource : 한정된 값을 가진 시스템의 구성 요소를 의미


성능 측정 대상
- 목표 TPS를 산정하고 정해진 응답시간 내에 모든 요청이 처리되는지 확인
- 기준

데이터베이스와 병목의 관계
병목의 원인
- 취급하는 데이터의 양이 가장 많은 원인
- 시스템에서 처리하는 데이터는 영속적으로 보유해야 하는 데이터일 확률이 크다.
- 데이터의 총 크기는 지속적으로 증가
- 동시성을 보장하는 드으이 문제로 무조건 적인 자원 증가을 통한 성능 문제 해결이 어려움(저장소 확장의 어려움)
- DBMS 내부 I/O 병목으로 인해 대기 시간이 길어질 수 있음

프로세스 생성 주기

- 여러 프로세스가 하나의 CPU를 공유할 수는 있음.
- interrupt 없이 일하던 프로세스도 디스크에서 데이ㅓ를 읽어야할 땐 CPU를 OS에 반환하고 잠시 waiting 상태에서 I/O가 완료되기를 대기.
- SQL 문에서 발생하는 절대적인 I/O의 횟수를 줄이는 것이 성능 개선의 핵심
성능을 결정하는 요인
SQL문의 특성
- SQL은 기본적으로
- 결과 집합을 만드는 과정은 절차적, 각각의 프로시저를 만드는 역할을 optimizer가 담당한다.

SQL문의 실행 과정
- SQL 파싱
- SQL 최적화
- raw source 생성

optimizer
- 사용자가 원하는 작업을 가장 효율적으로 수행할 수 있는 최적의 데이터 액세스 경로를 선택해주는 DBMS의 핵심 엔진
- 후보군이 될 만한 실행 계획을 찾아낸 후, 통계 정보를 ㄷ이용해 각 실행 계획의 예상 비용을 산정한 후 최저 비용을 나타내는 실행 계획을 선택.

실행계획은 어떻게 생겨지는가
실행 계획 확인
Table Full Scan : 테이블 전체 레코드를 처음부터 끝까지 읽기
Index Range Scan : 테이블의 일부 레코드에만 액세스

인덱스를 이용한 성능 개선


인덱스 구조


728x90
'정리' 카테고리의 다른 글
[210827_라이브 강의] 2. 데이터 전처리-상관관계 분석, 3. 예측모델 구현 (1) | 2021.08.27 |
---|---|
[210827] 의사결정나무(decision Tree) (0) | 2021.08.27 |
[데이터베이스 강의 정리] 8. 백업 및 복구 (0) | 2021.08.05 |
[데이터베이스 강의 정리] 7. 테이블 설계 (0) | 2021.08.05 |
[데이터베이스 강의 정리] <참고> Entity (0) | 2021.08.05 |