3. 데이터 조작 프로시저 작성
1) 데이터 조작 프로시저 개발
- SQL은 관계형 데이터베이스 관리시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어로 데이터정의어, 데이터조작어, 데이터제어어를 가진다. PL/SQL은 Oracle에서 개발한 데이터조작 언어이며, 프로그래밍언어의 특성을 수용한 SQL의 확장 기능이 우수함 PL/SQL로 작성할 수 있는 저장형 객체로는Trigger, StoredFunction, StoredProcedure, Stored Packasge 등이 있다.
ㄱ) 데이터 정의어(DDL : Data Definition Language)
- 데이터를 저장하는 테이블 등의 구조를 생성하고 변경하기 위해 사용하는 명령어
CREATE, DROP, RENAME, ARTER, TRUNCATE 등
ㄴ) 데이터 조작어(DML : Data Manipulation Language)
- 데이터베이스에 있는 데이터를 변경하거나 검색하기 위하여 사용되는 명령어들
INSERT, UPDATE, DELETE, SELECT 등
ㄷ) 데이터 제어어(DCL : Data Control Language)
- 사용자별로 데이터베이스에 접근할 수 있는 권한을 부여하거나 회수하는 명령어
ROLE, GRANT, REVOKE 등
2) 데이터 조작 프로시저 테스트
- Oracle DBMS는 모든 데이터 조작 프로시저에 대한 테스트 환경으로 SQL*Plus 도구를 제공함.
4. 데이터 조작 프로시저 최적화
1) 데이터 조작 프로시저 성능 개선
- 모니터링 결과 문제시 되는 내용 확인시 SQL 성능개선 순서
ㄱ) 문제잇는 SQL 식별
ㄴ) 옵티마이저 통계 확인
ㄷ) 실행 계획 검토
ㄹ) SQL문을 재구성하거나 인덱스 재구성
- 튜닝(Tuning, 성능개선)
ㄱ) 데이터베이스 성능 향상을 위해 프로시저 코드를 보면서 성능 문제점을 개선해 나가는 활동
- 옵티마이저(Optimizer)
ㄱ) 개발자가 작성한 SQL을 가장 빠르고 효율적으로 수행할 최적의 처리 경로를 생성해주는 데이터베이스 핵심
프로세스로 가장 빠르게 실행되는 방법을 비용(Cost)으로 계산하여 선택하는 CBO(CostBasedOptimizer, 비용기반)
와 미리 정해져있는 규칙에 따라 가장 빠른 실행방법을 결정하는 RBO(RuleBasedOptimizer, 룰기반) 모드가 있음
- 파서(Parser)
ㄱ) SQL 문의 구문 구조와 의미를 분석하는 것으로 SQL문이 올바르게 작성되었는지 검사하는 구문 구조분석
(Syntaxanalysis)과 데이터베이스 객체나 참조된 객체들이 올바른지 검사하는 의미 분석(Semanticanalysis)이 있음
2) 소스코드 인스펙션
- 데이터베이스 성능 향상을 위해 프로시저 코드를 보면서 성능 문제점을 개선해 나가는 활동
ㄱ) SQL 코드 인스펙션 대상
- 사용하지 않는 변수
- 사용되지 않는 서브쿼리
- Null 값과 비교하는 프로시져 소스
- 과거의 데이터타입 사용
'Study > 정보처리기사' 카테고리의 다른 글
7. 제품 소프트웨어 패키징(요약) (0) | 2021.12.05 |
---|---|
6. 통합 구현(요약) (0) | 2021.12.05 |
5-1. 데이터 입출력 구현(요약) (0) | 2021.12.05 |
4. 인터페이스 설계(요약) (0) | 2021.12.05 |
3. 애플리케이션 설계(요약) (0) | 2021.12.05 |
댓글