ACFS y ASM Preferred Read

Desde la 12c Oracle esta potenciando de manera considerabe el ACFS. Desde la 12.1 es posible ya alojar los ficheros de la base de datos sobre este Filesystem que corre por encima de ASM. Si no me equivoco ODA (Oracle Database Apliance) por defecto crea la base de datos sobre ACFS y Exadata tabmbien lo soporta.

Desde principios del año he estado ayudando a un cliente a migrar unos RAC que tiene de 11.2.0.4 a 12.1.0.2. Le comenté al cliente acerca de ACFS que sería buena opción para ellos por el mero hecho de que prefieren ver los ficheros con los comandos de sistema operativo, es buena opcion porque el origen era Linux y ACFS en Linux funciona realmente bien. En AIX no lo tengo muy claro porque he tenido varis episodios de problemas de rendimiento de ACFS sobre AIX y despues de parches y parches siguen sin funcionar como uno desee.

Pues bien, todos los RAC de este cliente utiliza mirroring de ASM por su definicion de arquitectura, todos los datos se escriben a dos cabinas de discos para tener una redundancia fisica. Estaban utilizando extensivamente los Preferred Reads de ASM en 11.2 y teniamos dudas de que si esta funcionalidad funciona con ACFS, teniamos dudas porque es un Filesystem Posix y no teniamos muy claro si las lecturas se podia redireccionar como queremos.

Hice unas pruebas en una maqueta y comprobé que si puede usar Preferred Read el ACFS.

 

Diskgroup ACFSDATA02 con dos Failgroups, X1_ACFSDATA02 y X2_ACFSDATA02. Las pruebas se han lanzado desde el nodo 2 y este es el resultado:

 

Antes de generar lecturas:

select inst_id, GROUP_NUMBER,DISK_NUMBER,FAILGROUP,NAME,READS,WRITES from gv$asm_disk where GROUP_NUMBER = 6 order by inst_id, FAILGROUP, name

   INST_ID GROUP_NUMBER DISK_NUMBER FAILGROUP     NAME                    READS     WRITES
---------- ------------ ----------- ------------- ------------------ ---------- ----------
         1            6           0 X1_ACFSDATA02 X1_ACFSDATA02_0001         17          1
         1            6           1 X2_ACFSDATA02 X2_ACFSDATA02_0001          6          1
         2            6           0 X1_ACFSDATA02 X1_ACFSDATA02_0001         46       5640
         2            6           1 X2_ACFSDATA02 X2_ACFSDATA02_0001       2422       5640

Despues de generar las lecturas:

select inst_id, GROUP_NUMBER,DISK_NUMBER,FAILGROUP,NAME,READS,WRITES from gv$asm_disk where GROUP_NUMBER = 6 order by inst_id, FAILGROUP, name

   INST_ID GROUP_NUMBER DISK_NUMBER FAILGROUP     NAME                    READS     WRITES
---------- ------------ ----------- ------------- ------------------ ---------- ----------
         1            6           0 X1_ACFSDATA02 X1_ACFSDATA02_0001         17          1
         1            6           1 X2_ACFSDATA02 X2_ACFSDATA02_0001          6          1
         2            6           0 X1_ACFSDATA02 X1_ACFSDATA02_0001         46       5640
         2            6           1 X2_ACFSDATA02 X2_ACFSDATA02_0001       3252       5941

Podemos observar que las lecturas se ha reliazado integramente sobre el Failgroup X2_ACFSDATA02_0001, pasando de 2422 lecturas a 3252.

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s