OracleMania en Español Volumen 1 - Page 7

ARTICULO especial

base de datos

7

únicamente tendrá 1/7. La ventaja de utilizar “Resource Manager” es que, los valores “share” que utilizamos no son estáticos, esto quiere decir que, por ejemplo, si la PDB “salespdb” está obteniendo mucha carga de trabajo debido a horas pico, podrá obtener muchos más recursos que los 3/7 que inicialmente se le asigno, esto solo es posible, si los recursos no están siendo demandados por las demás PDBs a las cuales ya se les ha garantizado un porcentaje de recursos, de lo contrario dichos recursos serán desasignados y asignados a la PDB que está demandando sus recursos. Otra manera de interpretar el valor del parámetro “share” es como los recursos garantizados que cada PDB tendrá. Esto es escalable, pues como bien sabemos, no todas nuestras bases de datos tienen sus horas picos a la misma hora, unas las tienen de noche cuando se ejecutan reportes muy robustos, otras las tienen durante el día por sus transacciones y así sucesivamente. Al poder utilizar recursos temporalmente de las otras PDBs, le permite a una PDB escalar los recursos utilizados .

En la imagen ariiba se puede apreciar que dentro de un CDB existe un plan de recursos, el cual a su vez tiene 3 directivas, una para cada PDB. Para cada una de las tres PDBs en el CDB se les ha asignado 1 “share” de recursos, eso quiere decir que en total son 3 “shares” asignados, por lo tanto, cada PDB tendrá 1/3 del total de los recursos.

Cuando se utiliza “Resource Manager” tenemos la ventaja de declarar una directiva de facto, la cual será asignada a todas las nuevas PDBs que sean conectadas al CDB. Continuando con el ejemplo anterior, supongamos que ahora se crea una nueva PDB dentro del CDB, esta PDB será llamada “pdb4”, en el momento de agregarla, dicha PDB tomará la directiva de facto, que en este ejemplo es de 1 “share”. Automáticamente el “Resource Manager” entiende que ahora son 4 shares en total por lo tanto, cada PDB tendrá ¼ de la totalidad de los recursos del sistema.

Una vez habiendo asignado los recursos del sistema dentro de todas las PDBs existentes en nuestro CDB, podemos ahora repartir los recursos asignados en una determinada PDB dentro de todos los usuarios que esa PDB mantiene. Esta distribución de los recursos dentro de una PDB determinada es realizada mediante los “Grupos Consumidores”. Dichos Grupos Consumidores no son más de una forma de agrupar sesiones de los usuarios. Por ejemplo, si el usuario “Nassyam” es asignado al Grupo Consumidor “OLTP”, según la imagen de abajo, se puede afirmar que cada sesión del usuario cual solamente puede manejar 75% de los recursos asignados a la PDB. Como se puede ver, en los planes de recursos a nivel de PDB también se manejan las Directivas, y mantienen el mismo concepto que se indicó en los planes de recursos a nivel del CDB.

Valores de facto para parámetros de directivas

Directivas de facto en un CDB

A continuación se presentan las directivas que vienen de facto dentro de un CDB, dichas directivas son simples y no son adecuadas para asignarlas a PDBs y usuarios que mantiene los datos del negocio.

SQL> SELECT plan, pluggable_database, shares, utilization_limit, parallel_server_limit

FROM dba_cdb_rsrc_plan_directives

ORDER BY plan;

• Los panes que inician con el prefijo “ORA$” son planes que

ya vienen de facto en Oracle 12c.

• La directiva “ORA$DEFAULT_PDB_DIRECTIVE” indica la

directiva por defecto que se le asignará cuando nuevas PDBs

se conecten al CDB.