Maison > base de données > tutoriel mysql > Analyse AIO dans Oracle

Analyse AIO dans Oracle

一个新手
Libérer: 2017-09-08 10:50:42
original
1220 Les gens l'ont consulté

Les E/S asynchrones Linux (AIO) sont une fonctionnalité améliorée fournie dans le noyau Linux. Il s'agit d'une fonctionnalité standard du noyau Linux 2.6. L'idée de base derrière AIO est de permettre à un processus de lancer de nombreuses opérations d'E/S sans bloquer ni attendre la fin d'une opération. Le processus peut récupérer les résultats de l'opération d'E/S ultérieurement ou lorsqu'il est averti que l'opération d'E/S est terminée.

E/S synchrone : le thread démarre une opération d'E/S, puis entre immédiatement dans l'état d'attente, et ne se réveille que lorsque l'opération d'E/S est terminée pour continuer l'exécution.
IO asynchrone : le thread envoie une requête IO au noyau, puis continue de traiter d'autres choses. Une fois que le noyau a terminé la requête IO, il informera le thread que l'opération IO est terminée

1. -- Vérifiez si le système utilise des E/S asynchrones . Slab est l'allocateur de mémoire Linux et des structures de mémoire liées à AIO ont été allouées.

more /proc/slabinfo |grep kio
[root@localhost ~]# grep kio /proc/slabinfo
kioctx 0 0 384 10 1 : tunables 54 27 0 : slabdata 0 0 0
kiocb 0 0 256 15 1 : tunables 120 60 0 : slabdata 0 0 0
Copier après la connexion

Vérifiez que la ligne kiocb affiche 0, indiquant que les IO asynchrones ne sont pas démarrées.

2. Vérifiez si l'io asynchrone est activé dans la base de données

(11G)SYS@qixindb> show parameter disk_asynch_io
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
disk_asynch_io boolean TRUE
(11G)SYS@qixindb> show parameter filesystem
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
filesystemio_options string none
Copier après la connexion
filesystemio_options 的四种值:
ASYNCH: enable asynchronous I/O on file system files, which has no timing requirement for transmission.
在文件系统文件上启用异步I/O,在数据传送上没有计时要求。
DIRECTIO: enable direct I/O on file system files, which bypasses the buffer cache.
在文件系统文件上启用直接I/O,绕过buffer cache。
SETALL: enable both asynchronous and direct I/O on file system files.
在文件系统文件上启用异步和直接I/O。
NONE: disable both asynchronous and direct I/O on file system files.
在文件系统文件上禁用异步和直接I/O。
Copier après la connexion

3. Oracle a lié le package aio

<🎜. >
[oracle@localhost ~]$ /usr/bin/ldd $ORACLE_HOME/bin/oracle | grep libaio
libaio.so.1 => /lib64/libaio.so.1 (0x0000003e13000000)
Copier après la connexion
Remarque : la vérification montre qu'Oracle a lié le package aio


4. Ajustez les paramètres de la base de données pour activer aio

Le paramètre filesystemio_options dans la base de données est défini sur aucun. cet asynchrone n'est pas configuré dans Oracle IO,
Ici, vous pouvez ajuster le paramètre filesystemio_options dans la base de données pour setall

SQL> alter system set filesystemio_options = setall scope=spfile; 
SQL> alter system set disk_asynch_io = true scope=spfile; 
SQL> shutdown immediate;
SQL> startup;
Copier après la connexion
Vérifiez si aio est efficace


<🎜. >

Supplémentaire : des attentes de tampon gratuites apparaissent Lorsque l'attente d'événements ou que io n'est pas assez forte, vous pouvez envisager d'activer aio.
[oracle@localhost ~]$ more /proc/slabinfo |grep kio
kioctx 130 160 384 10 1 : tunables 54 27 8 : slabdata 16 16 0
kiocb 16 30 256 15 1 : tunables 120 60 8 : slabdata 2 2 1
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal