. 순수 관계 연산자 – SELECT – JOIN – DIVIDE . 집합 연산자의 종류 집합 연산자 연산자의 의미 UNION 여러 개의 SQL문의 결과에 대한 합집합으로 결과에서 모든 중복된 행은 하나의 행으로 만든다. UNION ALL 여러 개의 SQL문의 결과에 대한 합집합으로 중복된 행도 그대로 결과로 표시된다. 즉, 단순히 결과만 합쳐놓은 것이다. 일반적으로 여러 질의
. REVOKE / 데이터 제어어(DCL) . SQL 문장들의 종류 명령어의 종류 명령어 설명 데이터 조작어(DML) Data Manipulation Language SELECT 데이터베이스에 들어 있는 데이터를 조회하거나 검색하기 위한 명령어를 말하는 것으로 RETRIEVE 라고도 한다. INSERT UPDATE DELETE 데이터베이스의 테이블에 들어 있는 데이터에 변형을 가하는 종류의 명령어들을 말한다. 예를 들어 데이터를 테이블에 새로운 행을 집어넣거나, 원하는 않는
. 데이터모델링 – 데이터의 증가가 빠를수록 성능저하에 따른 성능개선비용은 증가한다. – 데이터모델은 성능을 튜닝하면서 변경이 될 수 있는 특징이 있다. – 분석/설계 단계에서 성능을 고려한 데이터모델링을 수행할 경우 성능 저하에 따른 Rework비용을 최소화 할 수 있는 기회를 가지게 된다. – 데이터모델링을 할 때 정규화를 정확하게 수행한다. – 데이터베이스 용량산정을 수행한다. – 데이터베이스에 발생되는
. 모델링의 특징 – 현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미를 가질 수 있다. – 복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 하는 단순화의 의미를 가지고 있다. – 애매모호함을 배제하고 누구나 이해가 가능하도록 정확하게 현상을 기술하는 정확화의 의미를 가진다. . 모델링의 필요 – 업무정보를 구성하는 기초가 되는 정보들에 대해 일정한 표기법에 의해
고급 SQL 활용 소스 튜닝 DML 튜닝 파티션 활용 배치 프로그램 튜닝 . 소트와 관련된 오퍼레이션 유형 – Sort Aggregate: 전체 로우를 대상으로 집계를 수핼할 때 나타나며, Oracle 실행계획에 sort라는 표현이 사용됐지만 실제 소트가 발생하진 않는다. – Sort Order By: 정렬된 결과집합을 얻고자 할 때 나타난다. – Sort Group By: Sorting 알고리즘을 사용해 그룹별
인덱스 기본원리 인덱스 튜닝 조인 기본 원리 고급 조인 기법 . Index Range Scan – 인덱스 루트 블록에서 리프 블록까지 수직적으로 탐색한 후에 리프 블록을 필요한 범위(Range)만 스캔하는 방식 . Index Skip Scan – 루트 또는 브랜치 블록에서 읽은 칼럼 값 정보를 이용해 조건에 부합하는 레코드를 포함할 “가능성이 있는” 하위 블록(브랜치 또는 리프블록)만
1. 표준 조인 2. 집합 연산자 3. 계층형 질의와 셀프 조인 4. 서브 쿼리 5. 그룹 함수 6. 윈도우 함수 7. DCL 8. 절차형 SQL ================================================= . 순수 관계 연산자와 SQL 문장 비교 – SELECT 연산은 WHERE 절로 구현 – PROJECT 연산은 SELECT 절로 구현 – (NATURAL) JOIN 연산은 다양한 JOIN 기능으로 구현
옵티마이저 쿼리변환 . 규칙기반 옵티마이저(Rule-Based Optimizer, RBO) – 휴리스틱(Heuristic) 옵티마이저 – 미리 정해 놓은 규칙에 따라 액세스 경로를 평가하고 실행계획을 선택 – 규칙은 액세스 경로별 우선순위로서, 인덱스 구조, 연산자, 조건절 형태가 순위로 결정짓는 주요인이다. . 선택도 > 카디널리티 > 비용 > 액세스 방식, 조인 순서, 조인 방법 등 결정 . 카디널리티 –
Lock 트랜잭션 동시성제어 . Lock에 의한 성능저하를 최소화하는 방안 트랜잭션의 원자성을 훼손하는 않는 선에서 트랜잭션을 가능한 짧게 정의 같은 데이터를 갱신하는 트랙잭션이 동시에 수행되지 않도록 설계 주간에 대용량 갱신 작업이 불가피하다면, 블로킹 현상에 의해 사용자가 무한정 기다리지 않도록 적절한 프로그래밍 기법 도입 트랜잭션 격리성 수준을 불필요하게 상향 조정하지 않을 것 트랜잭션을 잘 설계하고 대기
1. 데이터베이스 아키텍처 2. SQL 파싱 부하 3. 데이터 베이스 Call과 네트워크 부하 4. 데이터베이스 I/O 원리 ============================ . 전용 서버(Deficated Server) / 공유 서버(Shared Server) – 클라이언트가 서버 프로세스와 연결하는 Oracle . 세그먼트 – 테이블, 인덱스, Undo 처럼 저장공간을 필요로 하는 데이터베이스 오브젝트이다. – 저장공간을 필요로 한다는 것은 한 개 이상의 익스텐트를