Asynchronous I/O

EXEM Knowledge Base

Jump to: navigation, 찾기

목차

[편집] 개요

Asynchronous I/O는 다음과 같은 범주로 나누어진다.

  1. Kernel Based Asynchronous I/O(KAIO): Kernel 레벨에서 Asynch I/O가 지원되는 것을 의미한다. Asynch I/O를 수행하기 위한 부가적인 Process나 Thread가 불필요하기 때문에 성능면에서 가장 유리하다. KAIORaw Device에서만 지원되며, 일반 File System에서는 지원되지 않는다. 단, VxFS(Veritas File System)의 Quick I/O 옵션을 사용하면 일반 File System에 대해서도 KAIO를 사용할 수 있다.
  1. Thread Based Asynchronous I/O(TAIO): 여러 개의 Process나 Thread를 이용해서 Asynch I/O를 흉내내는 것을 의미한다. 일반적인 상황에서는 성능에 유리하지만, Oracle과 같이 쓰기 작업이 매우 왕성한 경우에는 Process나 Thread 자체의 오버헤드 때문에 오히려 성능 저하 현상을 초래할 수 있다. VxFs의 Quick I/O를 사용하는 않는 일반적인 File System에 대해서는 TAIO가 수행된다. Oracle에서 TAIO를 사용할 지의 여부는 Oracle, OS의 버전과 종류에 따라 결정된다.

[편집] 상세 정보

Asynchronous I/ORaw Device와 VxFS의 Quick I/O에서 가장 잘 작동한다. 일반 File System에 대한 Asynch I/O는 OS Kernel Parameter를 적절히 튜닝함으로써 성능을 극대화할 수 있다. 자세한 정보는 외부 참조를 참조한다.

[편집] 관련 정보

  1. DISK_ASYNCH_IO 파라미터
  2. FILESYSTEM_IO_OPTIONS 파라미터
  3. DB_WRITER_PROCESSES 파라미터
  4. DBWR_IO_SLAVES 파라미터

[편집] 외부 참조

  1. Metalink Doc# 139272.1 - HP-UX: Asynchronous i/o
  2. Tuning Asynchronous Disk I/O(AIX)
  3. Asynchronous I/O (aio) on RedHat Advanced Server 2.1 and RedHat
  4. VERITAS Quick I/O