클러스터링 팩터(군집성 계수)

  • 같은 값을 갖는 데이터가 모여있는 정도

IOT(Index-Organized Table), 클러스터형 인덱스

  • 인덱스 구조로 생성된 테이블

클러스터 테이블

  • 클러스트 키 값이 같은 레코드를 한 블록에 모아서 저장하는 테이블

테이블 Prefetch

  • 인덱스를 이용해 테이블을 액세스하다가 디스트 I/O가 필요해지면, 이어서 곧 읽게 될 블록까지 미리 읽어서 버퍼캐시에 적재하는 기능

배치 I/O

  • 디스크 I/O Call을 미뤘다가 읽을 블록이 일정량 쌓이면 한꺼번에 처리하는 기능

서브쿼리 Unnesting

  • 옵티마이저가 서브쿼리를 풀어 일반 조인문으로 변환하는 것
  • Unnesting된 서브쿼리는 다양한 방식으로 조인할 수 있다.

Pushing 서브쿼리

  • 서브쿼리 필터링을 앞 단게에서 처리하도록 강제하는 기능
  • 조인 과정에서 많은 I/O가 발생 후 서브쿼리에서 필터링되는 데이터가 많을 때 미리 필터링을 진행하여 조인 횟수를 줄일 수 있다.

조인 조건 Pushdown

  • 메인쿼리를 실행하면서 조인 조건절 값을 건건이 뷰 안으로 밀어 넣는 기능

NL 세미 조인

  • NL조인과 같은 프로세스
  • 조인에 성공하는 순간 진행을 멈추고 메인쿼리의 다음 로우를 처리

Current 모드

  • 디스크에서 캐시로 적재된 원본(Current) 블록을 현재 상태 그대로 읽는 방식

Consistent 모드

  • 쿼리가 시작된 시점의 데이터를 읽는 방식

  • 쿼리가 시작된 이후에 다른 트랜잭션에 의해 변경된 블록을 만나면 복사본 블록을 만들고, Undo를 적용하여 쿼리가 시작된 시점으로 되돌려서 읽는다.

동시성 제어

  • 동시에 실행되는 트랜잭션 수를 최대화하면서 데이터 무결성을 유지하는 것

Write Ahead Logging

  • 데이터를 변경하기 전에 항상 로그부터 기록한다.

Log Force at Commit

  • 적어도 커밋 시점에는 Redo 로그버퍼 내용을 로그파일에 기록한다.
  • 변경한 버퍼블록들을 드스크에 기록하지 않았더라도 커밋 시점에 Rodo 로그를 디스크에 기록했다면 트랜잭션의 영속성이 보장된다.

수정가능 조인 뷰

  • 입력, 수정, 삭제가 허용되는 조인 뷰
  • 조인 뷰: FROM 절에 두 개 이상 테이블을 가진 뷰
  • 1쪽 집합과 조인하는 M쪽 집합에만 입력, 수정 ,삭제가 허용

키 보존 테이블

  • 조인된 결과집합을 통해서도 중복 값 없이 Unique 하게 식별이 가능한 테이블
  • 뷰에 rowid를 제공하는 테이블

로컬 파티션 인덱스

  • 테이블 파티션과 인덱스 파티션이 서로 1:1로 대응