Arquitectura Multitenant en Oracle 12c

Post on 13-Jan-2017

488 views 6 download

Transcript of Arquitectura Multitenant en Oracle 12c

Deiby GómezOracle Certified Master 12c & 11gNUVOLA – Solving is our Passion.dgomez@nuvolacg.com / www.nuvolacg.com

Arquitectura Multitenant en Oracle 12c

AGENDA• CDB vs no-CDB• ¿Qué es una PDB?• ¿Qué es el Root?• ¿Qué es el Seed?• Instancia en un CDB• Diccionario en un CDB• Común vs Local• Cloud y Oracle Multitenant

CDB vs non-CDB• Una aplicación por base de datos• Muchos DBAs Administrando muchas BDs

CDB vs non-CDB• Una Instancia por Base de Datos

Cuando el número de BDs aumenta….

• Procesos duplicados• Memoria duplicada• Metadata duplicada• Usuarios duplicados• Poca rapidez de aprovisionamiento

CDB vs non-CDB• Una BD, muchas Aplicaciones• Un CDB puede “contener” muchas Bases de Datos

CDB vs non-CDB• Un Contenedor, muchas bases de datos• Una instancia por contenedor• Desconectar y Conectar • Aislamiento entre Bases de Datos

CDB vs non-CDB• Una instancia por Contenedor• Todas las BDs comparten la misma instancia

¿Qué es una PDB?• Pluggable Database (PDB)• Contiene los datos del negocio• Conectar y Desconectar• Posee su propia metadata• Prosee sus propios usuarios• Espacio temporal propio (opcional)• Comparte Redologs• Comparte Instancia• Comparte Datos Undo• Posee aislamiento

¿Qué es el Root?• Contiene usuarios globales• Contiene metadata global• No se debe usar para datos del negocio• Se usa para realizar operaciones globales• El Root no es la base de datos Contenedora (CDB)• El root es llamado CDB$ROOT

¿Qué es el Seed?• También llamado PDB$SEED• Se usa como un template para crear más PDBs• Oracle no soporta la apertura del PDB$SEED

Instancia en un CDB• La instancia se comparte para todas las PDBs• Hay parámetros personalizables por PDBs

Diccionario en un CDB

Metadatos de Oracle…

… mezclados con los metadatos del usuario.

Diccionario en un CDB

Cada PDB tiene su propio diccionario de Datos

Común vs Local

Común

Local

Usuarios ComunesRoles ComunesPrivilegios asignados comúnmente

Usuarios LocalesRoles LocalesPrivilegios asignados localmente

Nota: Roles comunes pueden contener privilegios locales y comunes

Común vs Local

Privilegio cedido comúnmentePrivilegio cedido localmentePrivilegio cedido localmente

Común vs Local

Común vs Local

Común

Usuarios ComunesRoles Comunes

Privilegios asignados comúnmente

C##<nombre>c##<nombre>CONTAINER=ALL

CONTAINER=ALL

LocalUsuarios LocalesRoles LocalesPrivilegios asignados comúnmente

CONTAINER=CURRENT

common_user_prefix

Cloud y Oracle Multitenant

Remote Cloning• From nonCDB • From another PDB

Deiby Gómezdgomez@nuvolacg.com

www.nuvolacg.com