본문 바로가기

DB145

SQL자격검정실전문제 - 고급SQL튜닝(고급SQL활용) 소트와 관련된 오퍼레이션 유형에 대해 서술하시오. SORT AGGREGATE 전체 로우를 대상으로 집계를 수행할 때 나타나는 오퍼레이션입니다. 실제 소트가 발생하지는 않습니다.SORT ORDER BYORDER BY 절을 수행할때 나타나는 오퍼레이션 입니다.SORT GROUP BYSORTING 알고리즘을 사용해 그룹별 집계를 수행할 때 나타나는 오퍼레이션 입니다.SORT UNIQUE선택된 결과 집합에서 중복 레코드를 제거하고자 할때 나타납니다. Union 연산자나 Distinct 연산자를 사용할 때가 대표적입니다.SORT JOINSort Merge Join 할때 나타나는 오퍼레이션입니다.WINDOW SORTWINDOW FUNCTION을 수행할때 나타나는 오퍼레이션 입니다.NULL 연산에 대해 서술하시오칼럼.. 2024. 7. 9.
SQL자격검정실전문제 - 인덱스와 조인(기본원리/튜닝/조인기본원리/고급조인기법) 인덱스 탐색과정에 대해 서술하시오. 인덱스 탐색과정은 수직적 탐색과 수평적 탐색 과정으로 구분됩니다. 수평적 탐색은 인덱스 리프 블록에 저장된 레코드끼리 연결된 순서에 따라 좌에서 우 또는 우에서 좌로 스캔합니다. 수직적 탐색은 수평적 탐색을 위한 시작 지점을 찾는 과정입니다. -- emp_idx : deptno + sal + commselect /*+index asc(e emp_idx)*/ empno, sal, comm, hiredatefrom emp ewhere deptno = 20and sal between 2000 and 3000and comm   위 쿼리의 경우 수평적 탐색의 시작지점은 인덱스 정렬 순서 상 deptno = 20 and sal = 2000을 만족하는 첫 번째 레코드 입니다. IN.. 2024. 7. 2.
SQL자격검정실전문제 - 아키텍쳐 기반 튜닝 원리 ( 데이터베이스 아키텍쳐, SQL 파싱부하, 데이터베이스 call과 네트워크 부하, 데이터베이스 I/O원리) 데이터베이스 아키택쳐에 대해 서술하시오데이터베이스 아키택쳐는 크게 프로세스 기반과 스레드 기반으로 나눌 수 있습니다. 프로세스 기반 아키텍쳐는 크게 서버 프로세스와 백스라운드 프로세스로 구성됩니다. 서버프로세스는 클라이언트로 부터 전달받은 각종 명령을 처리하고(SQL 파싱, 최적화) 백그라운드 프로세스(데이터 처리, 로그 적재 등)는 명령을 처리하기 위한 작업을 실행합니다. 프로세스기반 아키텍쳐에서 클라이언트가 서버프로세스에 연갈하는 방식은 크게 전용 서버 방식과 공유서버 방식이 있습니다. 전용서버방식은 리스너에 의해 생성된 서버 프로세스가 클라이언트와 직접 연결됩니다. 클라이언트가 서버프로세스에 접속할때마다 매번 연결을 열고 닫으면 부하가 가중되므로 CONNECTION POOLING 기법을 사용한것이 .. 2024. 6. 26.
SQL 자격검정실전문제 - SQL 최적화 기본 원리 (옵티마이저와 실행계획, 인덱스 기본, 조인 수행 원리) 비용기반 옵티마이저(CBO)에 대해 서술하시오 테이블 및 인덱스 등의 통계정보를 활용해 SQL문을 실행하는데 소요될 처리시간 및 CPU, I/O 자원량 등을 계산하여 가장 효율적일 것으로 예상되는 실행계획을 선택하는 옵티마이저 입니다. 비용기반 옵티마이저는 테이블, 인덱스, 칼럼등 객체의 통계정보를 사용해 실행계획을 수립하므로 통계정보가 변경되면 SQL의 실행계획이 달라질 수 있습니다. 규칙기반옵티마이저(RBO)에 대해 서술하시오 규칙기반 옵티마이저에서 제일 낮은 우선순위는 테이블 전체 스캔이고 제일 높은 우선순위는 ROWID를 활용해 테이블을 엑세스하는 방법입니다. 적절한 인덱스가 존재하면 전체 테이블 스캔보다는 항상 인덱스를 사용햐려합니다. 오라클 실행계획에 대해 서술하시오. 실행계획은 SQL 처리를.. 2024. 6. 25.
SQL 활용 실전문제 - 표준조인, 집합연산자, 계층형질의와 셀프조인, 서브쿼리, 그룹함수, 윈도우함수, DCL, 절차형 SQL 표준조인순수관계연산자에 대해 서술하시오.순수관계연산자는 관계형 데이터베이스에 적용할 수 있도록 개발된 관계연산자를 말합니다. 종류에는 SELECT, PROJECT, JOIN, DIVIDE 가 있습니다. SELECT : 릴레이션에서 조건을 만족하는 튜플을 반환합니다. 실제 쿼리의 WHERE 절로 구현합니다.PROJECT : 릴레이션에서 특정 칼럼으로 구성된 튜플을 반환합니다. 실제 쿼리의 SELECT 절로 구현합니다.JOIN : 공통속성을 이용해 각 릴레이션의 특정 조건을 만족하는 튜플을 반들어 새로운 튜플을 반환합니다. 다양한 JOIN을 통해 구현합니다.DIVIDE : 하나의 릴레이션과 관련있는 다른 릴레이션의 튜플을 반환합니다. 현제 실제 쿼리에선 사용되지 않습니다. ANSI / ISO JOIN에서 표.. 2024. 6. 24.
SQL 기본 실전문제(2) - TCL , WHERE 조건절, 함수, GROUP BY, HAVING 절, ORDER BY 절, 조인(JOIN) 데이터베이스 트랜잭션의 특성에 대해 서술하시오데이터베이스의 트랜잭션은 다음과 같은 특성이 있습니다. - 원자성 : 트랜잭션에서 정의된 연산은 모두 성공적으로 실행되지 않으면 전혀 실행되지 않은 상태로 남아있어야합니다.- 일관성 : 트랜잭션 실행 전에 데이터베이스에 문제가 없다면 실행 후에도 데이터베이스에 문제가 없어야 합니다.- 고립성 : 트랜잭션이 실행되는 도중에 다른 트랜잭션의 영향을 받아서는 안됩니다.- 지속성 : 트랜잭션이 성공하면 변경된 내용은 영구적으로 저장돼야합니다. 낮은 트랜젝션 격리성으로 인해 발생하는 데이터베이스 이상현상에 대해 서술하시오. 낮은 격리성으로 인해 발생하는 대표적인 이상현상은 다음과 같습니다. - Dirty Read : 커밋되지 않은 데이터를 다른 트랜잭션에서 읽을 수 있.. 2024. 6. 17.