asegurando la continuidad de su negocio luis javier torres principal solution architect oracle...
TRANSCRIPT
<Insert Picture Here>
Asegurando la Continuidad de su Negocio
Luis Javier Torres
Principal Solution Architect
Oracle México ([email protected])
Continuidad de Operación
• Garantizar la disponibilidad de la información y las aplicaciones
• Garantizar la integridad de la información y el acceso a la información correcta
Logrando la mayor disponibilidad
• Prevenir caídas antes de que ocurran
• Tolerancia a caídas para que sean transparentes al negocio
• Recuperación rápida si una caída llega a ocurrir
Arquitectura de Información
Portal
Orquestación de Procesos de Negocio
Servidores de Aplicación
Infraestructura
Monitoreo deActividades
Repositorios de Datos
Inteligencia deNegocio
Aplicaciones de Oficina
Compradas
AplicacionesPropias
Aplicacionesde nicho
Seg
urid
ad
Am
bien
te d
e D
esar
rollo
de
Apl
icac
ione
s
Oracle TimesTen In-Memory Database
Applications
Applications
Una Base de Datos en memoria optimizada para la capa de aplicación para tiempos de respuesta mucho mejores y cache de datos en tiempo real
Hedge Fund AnalyticsTop 5 Hedge Fund en N. America
Model#1
Model#1
Model#2
Model#2
……Model
#N
Model#N
On-demand loadof selected data
Real-time Market Data Updates……
Real-timeModeling ofCurrentMarket vs. History
Hedge-Fund Traders
Uso de Oracle TimesTen Rápida ejecución de analíticos
Métricas de Rendimiento Respuesta de un Modelo < 30 sec (vs. ~10 min)
Configuración Solaris con aplicaciones en C++ Sybase RDBMS con datos históricos Carga en demanda desde el RDBMS
Valor de Oracle TimesTen Profits: $10M trades típico Ventaja competitiva: tiempo = big $$$ Flexibilidad
Historical market data
Causas de no disponibilidad de los sistemas
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos y SitioEquipos y Sitio
Tolerancia a caídas a bajo costo
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos Equipos y Sitioy Sitio
Grid ClustersGrid Clusters
Protección a Fallas del SistemaTipos de Cluster
A-ZA-Z
Fail Over Cluster
A-A-EE
F-F-KK
L-L-RR
S-S-ZZ
Shared Nothing / MPP Shared Data / Share Disk
DataDataA-ZA-Z
El software de cluster conoce el estado de cada nodo
Solo un nodo esta activo
Cuando se cae el nodo activo
El software de cluster lo detecta
Y levanta el nodo secundario
Tiempo largo de recuperación
Los usuarios detectan la caída
La BD se particiona
Cada nodo tiene control sobre su información únicamente
Buena opción para un DW
La caída de un nodo no afecta a los demás
La información correspondiente al nodo caído no queda disponible automáticamente
Si se agregan mas nodos se tiene que volver a particionar la BD
El software de cluster conoce el estado de cada nodo
Cada nodo tiene acceso a toda la información
Sirve para cualquier tipo de aplicación
En caso de caída de un nodo los demás se reparten el trabajo sin interrupción
Es posible agregar mas nodos en línea
Aplicación AAplicación BAplicación CAplicación DAplicación E
Cluster Activo-Activo busca:• Consolidar información• Alta disponibilidad ( 99.99% )• Soportar más usuarios
( escalabilidad )
Ventajas:• En caso de caída de un Server, los
restantes Servers toman los usuarios y la carga automáticamente (TAF y AWM)
• Se aprovecha siempre el hardware en el cluster (Balanceo de cargas)
• Permite soportar más usuarios• Es posible agregar en línea mas
nodos para balanceo de cargas, previsión de fallas
• Aplicación en línea de parches de actualización
Protección a fallas del sistema Oracle Real Application Clusters (RAC)
Activo Activo Activo
Shared CacheShared Cache
Granjas de Servidores Low-End
Permiten la implementacion
A bajo costo
Fallas de Software y HardwareCluster y Farms de Application Server
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
LB
Recuperación de Desastres a bajo costo
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquiposEquipos y y SitioSitio Centros de RespaldoCentros de Respaldo
Soluciones de Continuidad de Negocio a Nivel Datos
• Remote Mirroring.• Clusters Extendidos.• Replicación de Datos.
• Bases de Datos en Standby.
Objetivos Protección de Datos
Mantener la disponibilidadReducir el tiempo de inactividad
Reducir el costo de implementación
Una Base de Datos
Site A
N1 N3 N4
Site B
Stretch Cluster
ClusterInterconnect
Application Access
Application Access
Clusters Extendidos
N2
Remote Mirroring
Replicación de Datos Oracle Data Guard
Broker
Base de Datosde Producción
Base de Datos LógicaStandby Abierta para
Reportes
AplicaSQLRetraso
Opcional
Transforma Redo a SQL
Indices & VMsAdicionales
Base de Datos Física Standby
RetrasoRetrasoOpcionalOpcional
DIGITAL DATA STORAGE
DIGITAL DATA STORAGE
Backup
Aplica RedoEnvió de RedoSinc o Asinc
StandbyRedo Logs
Online Redo Logs
ARCH
Archived Redo Logs
StandbyRedo Logs
Recuperación de DesastresApplication Server Guard
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
HTTPSvrHTTPSvr HTTPSvrHTTPSvr HTTPSvrHTTPSvr
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
J2EE AppJ2EE App
OAS10OAS10gg
HTTPSvrHTTPSvr HTTPSvrHTTPSvr HTTPSvrHTTPSvr
Data GuardData Guard
App Server App Server GuardGuard
PrimarioPrimario Standby FisicoStandby Fisico
HW LBRHW LBR
• CreaCrea• InstancíaInstancía• SincronizaSincroniza• Switch OverSwitch Over• Modos: Delayed Modos: Delayed
& Zero Loss& Zero Loss
Resistencia en Almacenamiento a bajo costo
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos yEquipos y SitioSitio
Almacenamiento ExternoAlmacenamiento Externo
Protección a fallas en almacenamientoAdministración Automática de Almacenamiento - ASM
Resistencia a Fallas usando Almacenamiento de Bajo
Costo
ASM Administra el espacio y los file systems asignados a la BD optimizando E/SImplementa el concepto de “pool” de almacenamientoHabilita el alojamiento de recursos con rebalanceo automáticoProvee tolerancia a fallas vía “mirroring”
Prevención y Recuperación de Corrupciones
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos yEquipos y SitioSitio
Corrupción de DatosCorrupción de Datos
Validación de Datos de punta a punta H.A.R.D.
• H.A.R.D. – Hardware Assisted Resilient Data• Previene la corrupción introducida en la
ruta de E/S entre la BD y el almacenamiento físico
• 10g HARD provee• Chequeo a todo tipo de archivos y
tamaños de bloque• DB, log, archivo, backup, etc.
• A.S.M. habilita HARD sin usar “RAW devices”
• Soportado por los mayores vendedores de almacenamiento
A.S.M.A.S.M.
OracleOracle
SAN & Virtualization
Bloques validados e información de protección se agrega al bloque
Información de protección validada por el dispositivo de almacenamiento
Volume ManagerVolume Manager
Operating SystemOperating System
Host Bus AdapterHost Bus Adapter
SAN InterfaceSAN Interface
Storage DeviceStorage Device
Protección a Falla de DatosRecuperación basada en disco
• Economías de Disco cercanas a la cintaEconomías de Disco cercanas a la cinta• Disco permite acceso random a cualquier dato Disco permite acceso random a cualquier dato • Estrategia de Recuperación Re-arquitectadaEstrategia de Recuperación Re-arquitectada
• El acceso Random permite respaldar y recuperar El acceso Random permite respaldar y recuperar solo los cambiossolo los cambios
• Respaldo y Recuperación baja de horas a Respaldo y Recuperación baja de horas a minutosminutos
2000’s - 200 GB
1980’s - 200 MB
Incremento 1000x
Reducción de Ventanas de Respaldo y Recuperación
• Automatización total de respaldo y recuperación basadas en disco
• Define y Olvida
• Respaldos nocturnos incrementales rolan el área de respaldo y recuperación
• Bloques Cambiados son rastreados en la BD de producción
• Nunca se necesita un Full scan• Dramáticamente mas rápido (20x)• Blocks validados para prevenir
corrupción de copia de respaldo
• Uso de arreglos de discos ATA de bajo costo para área de recuperación
Dos sistemas Independientes de Discos
Flash Recovery
Area
Incremento Nocturno
Aplicado yValidado
Archivo SemanalA Cinta
Base de Datos
Colapsando el costo de errores humanos
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos yEquipos y SitioSitio
Alteracion de Integridad y Alteracion de Integridad y ConfiabilidadConfiabilidad
Error Humano
• El objetivo es rapidamente analizar y reparar • Para daño localizado
• Se necesita análisis y reparación quirúrgico• Ejemplo – borrado de orden equivocada
• Para daños extendidos • Se necesita un regreso completo para evitar estar fuera de
línea prolongadamente• Ejemplo – job batch borra las ordenes de este mes
Errores Humanos
Otras Causas
Simple Mayor causa de caídas
Recuperación de Errores HumanosBase de Datos Flashback
• Una nueva estrategia para recuperación en un punto en el tiempo
• Flashback Log captura viejas versiones de bloques cambiados• Se ve como un respaldo continuo• Reaplica log para restaurar BD a la hora• Restaura solo bloques cambiados
• Es rápido - recupera en minutos, no en horas• Es fácil – comando único de restaura• Recuperación a todos los niveles
• Base de Datos, Tabla, Renglón
Boton “rewind” para la Base de DatosArchivosde Datos
FlashbackLog
Nueva versión del bloque
Escritura a Disco
RMAN> Flashback Database to ‘2:05 PM’
Navegación en el Tiempo con Flashback
Select * from Emp VERSIONS BETWEEN ‘2:00 PM’ and ‘3:00 PM’ where …
Select * from DBA_TRANSACTION_QUERY where xid = ‘000200030000002D’;
Flashback Row Versions – ver todas las versiones de un renglon entre 2 tiempos y las transacciones que cambiaron esa fila
Flashback Transaction Query – ver los cambios hechos por una transaccion
Select * from Emp AS OF ‘2:00 P.M.’ where …
Flashback Query – ver datos en un punto del tiempo
Tx 1
Tx 2
Tx 3
Flashback Database versus Recuperación Clásica a un Punto-en el-TiempoRecuperación es 100 veces mas rápida con Flashback
Flashback
Recovery
Restore
0
100
200
300
400
500
600
700
10 100 1,000 10,000
Tie
mp
o (
min
uto
s)
Tamaño de BD (GB)
2 3 4 651
114
250
627
Tiempo de Corrección = Tiempo del Error + f(DB_SIZE)
Corrección de errores humanosApplication Server Flashback
Auto-Archivos de Sistema
– Cambios al Sistema
Flashback Cluster– Restaura Cluster de App & HTTP
Servers a algun Tiempo Pasado
Flashback App Server– Restaura un App Server
especifico
Flashback Application – Restaura una Aplicación
especifica
<<
<<
<<
RepositoryRepository
Tiempos Fuera por Mantenimientos
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BDde la BD
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos yEquipos y SitioSitio
ReconfiguraciónReconfiguración
ActualizacionesActualizaciones
Cambios al Sistema – Capacidad en Demanda
• CPU• Agregar/remover CPUs en SMP en línea
• Nodos de Cluster• Agregar/remover nodos del cluster en línea• No se necesita movimiento de datos
• Memoria• Crecer y reducir shared memory y buffer
cache en línea• Auto afinación de memoria en línea
• Disco• Agregar/remover discos en línea• Automáticamente rebalancear• Mover datafiles
Rolling Patch Upgrade usando RAC
Initial RAC Configuration Clientes en A, Patch B
OraclePatch
Upgrades
OperatingSystem
Upgrades
Upgrade Complete
HardwareUpgrades
Clients Clients
Clientes en B, Patch A
Patch
1 2
34
A B A B
A BA B
B
APatch
Tiempos Fuera por Reorganización
Tiempo fueraTiempo fueraPlaneadoPlaneado
InterrupciónInterrupción por fallaspor fallas
MantenimientoMantenimientode la BD y Appde la BD y App
MantenimientoMantenimientodel Sistemadel Sistema
ErroresErroresHumanosHumanos
Falla de DatosFalla de Datos
Falla deFalla deEquipos yEquipos y SitioSitio
Redefinición y Redefinición y ReorganizaciónReorganización
• Todas las operaciones de indización pueden ser hechas en línea• Crear nuevos índices, mover índices, defragmentar índices
• Tablas pueden ser Reorganizadas & Redefinidas en línea• Contenidos de la tabla son copiados a la nueva tabla
• Defragmenta y permite cambiar ubicación, tipo de tabla, particionamiento• Contenidos pueden ser transformados cuando son copiados
• Se pueden cambiar columnas, tipos, tamaños
Source Table
Update Tracking
Transform CopyTable
TransformUpdates
GUI interface to make it
Simple
Result Table
Continuous Queries & Updates
Store Updates
Redefinición en Línea
Soluciones Oracle de Alta Disponibilidad
Fallas del Sistema
Fallas de Datos
Cambios al Sistema
Cambios a Datos
Fallas
Tiempo fuera
planeado
Real Application Clusters
ASMFlashback
RMAN & Oracle Secure BackupH.A.R.D
Data GuardStreams
Online ReconfigurationRolling Upgrades
Online Redefinition
Oracle M
AA
Best P
ractices
Maximum Availability Architecture
• Conjunto de mejores practicas para Alta Disponibilidad
Objetivo – Minimizar la complejidad en el diseño del Sistema optimo de alta disponibilidad
Basada en Tecnologías Oracle Database, Application Server, Grid Control, Oracle
Applications, Collaboration Suite
Evoluciona con las nuevas versiones y características
http://www.oracle.com/technology/deploy/availability/htdocs/maa.htm
Continuidad de Operación
• Garantizar la disponibilidad de la información y las aplicaciones
• Garantizar la integridad de la información y el acceso a la información correcta
Seguridad de la Información
EncripciónEncripción
Seguridad ySeguridad yPrivacidadPrivacidad
Seguridad Seguridad de Datosde Datos
Seguridad Seguridad de Redde Red
““Escucha”Escucha”
ManipulaciónManipulación
Seguridad de la Información
Prevenir la “escucha” y la manipulación en la Prevenir la “escucha” y la manipulación en la transmisión y recepción de informacióntransmisión y recepción de información
EncripciónEncripción
Seguridad ySeguridad yPrivacidadPrivacidad
Forzar seguridad a nivel detallado, Forzar seguridad a nivel detallado, Segrega datos por atributoSegrega datos por atributo
Protección principalmente de datos ultra-Protección principalmente de datos ultra-sensitivossensitivos
Seguridad Seguridad de Datosde Datos
Seguridad Seguridad de Redde Red
““Escucha”Escucha”
ManipulaciónManipulación
Seguridad de DatosEncripción
Cifrado en el servidor de base de datos
La situación de confidencialidad de la información almacenada en el servidor de base de datos y las aplicaciones se resolverá por medio de los permisos de la base de datos, y para la información que deba viajar cifrada desde o hacia la base de datos, se hará uso de Oracle Advanced Security.
Oracle Data Encryption (incluído en Enterprise Edition) permite cifrar la información dentro de la base de datos, de manera que si la información se llegase a ver por un usuario no autorizado, lo único que vería sería basura.
Inventarios Almacén Veracruz
Inventarios Almacén Central
Ordenes de Compra Guadalajara
Ordenes de Compra Vallejo
Oracle DB
Oracle DB puede forzar que todos los accesos de los usuarios a la información sean sólo a través de las aplicaciones y no a través de conexiones como SQLnet u ODBC; para es necesario utilizar en la base de datos la característica de “Secure Application Role”.
A cada usuario de la aplicación es necesario asociarlo a este tipo de rol y generar un procedimiento que verifique que el usuario se haya conectado desde el servidor de aplicación para habilitar el rol. En caso de que la conexión no provenga del servidor de aplicación, no se habilitará el rol, y el usuario no obtendrá la autorización para acceder a la información.
Seguridad de DatosSeguridad y Privacidad
Segmentacion de AccesoOracle Database Vault
• HR DBA ve datos de Fin.
• HR DBA realiza acciones no autorizadas durante produccion
DBA
• Database DBA ve datos de RH
HR DBA HR
Autorizacion multi-factor
create procedure…
3pm Monday HR Realm
HR
select * from HR.empCumplimiento y proteccion interna
Fin
FIN DBAElimina los riesgos de seguridad de las consolidaciones
Fin Realm
Fin
Seguridad de Red“Escucha” y Manipulacion
Advanced Security Option permite enviary recibir la información cifrada en todoslos protocolos
Integración de SoluciónProteccion de Punta a Punta
AS propaga AS propaga la Identidad a la BDla Identidad a la BD
OIDOIDIdentidades, RolesIdentidades, Roles& Autorizaciones& Autorizaciones
Autentifica Autentifica UsuarioUsuario
Cluster de ASCluster de AS
RAC de BDRAC de BD
• Recupera Recupera Autorizaciones Autorizaciones para Usuariospara Usuarios
• Conecta usuarios Conecta usuarios a esquema de la a esquema de la aplicación aplicación
Cliente se Cliente se AutentificaAutentifica
al App Serveral App Server
IM
Propagación de Identidad de AS a la BD permite:
•VPD – control de acceso detallado
Usuario A
Usuario B
Usuario A
Usuario B
AQ&