maximizando nuestra productividad con nuevas opciones de …€¦ · dml 10g 11g 12c •...
TRANSCRIPT
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Maximizando nuestra productividad con nuevas opciones de Oracle Database 19cAgosto 2019
MBA Ing CIP. Francisco RiccioArquitecto de Soluciones Oracle
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Panorama genera: Afinamiento de Base de DatosAnálisis de
Procesamiento del S.O y del Hypervisor
Revisión de Parámetros del S.O y su Certificación
con la Base de Datos
Validación del Tiempo de Respuesta del Almacenamiento
Revisión de la Conectividad
LAN y SAN
Diseño del Arreglo y Configuración de Discos en el Almacenamiento
Revisión de Parámetros de la Base de Datos
Detectar SQL Problemáticos y Analizar sus Planes de Ejecución
Coordinación con el Fabricante ante un BUG
en la Base de Datos
Entendimiento del Modelo de Datos
Revisión de Conectores de Aplicación hacia
la Base de Datos
Detectar Fragmentación en Base de Datos
Realizar Entrevistas con los Usuarios de Negocio
Evaluar: Índices, Tablas Particionadas,
Paralelismo, Estadística
Conocer las Malla de Operaciones de TI
Maximizar la actual Infraestructura en
beneficio del desempeño
Revisar el archivo de LOG de la Base de Datos
Analizar Métricas de la Base de Datos
Analizar Nuevas Funcionalidades de Base
de Datos
Pro
ceso
s d
e N
ego
cio
Crí
tico
s D
eten
ido
s
N E
scen
ario
s q
ue
An
aliz
ar e
n C
ort
o T
iem
po
Detectar SQL Problemáticos y Analizar sus Planes de Ejecución
Maximizar la actual Infraestructura en
beneficio del desempeño
Evaluar: Índices, Tablas Particionadas,
Paralelismo, Estadística
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Actividades Recurrentes: Mejorar el Desempeño
DatabaseAdministrator
Preocupado en Ejecutar la Recolección de Estadísticas
sobre Tablas
Horas invertidas en analizar como mejorar las consultas
SQL a través de Índices
Generar Eficiencias sobre la Infraestructura Actual
Desplegada
No permitir la re-ejecución de un plan de ejecución
perjudicial de una sentencia SQL
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Oracle Database 19c
12.2.0.312.2.0.212.2.0.1
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Soporte de Oracle Database
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Oracle Database 19c - Mejora Continua
12.2.0.3
High speed data ingestion
Active Data Guard DMLRedirect
Automatic Indexing
Hybrid Partition Tables
JSON Improvements
SALESTABLE
Q1 Q2 Q3
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Añadiendo múltiples funciones …
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en la Recolección de EstadísticasReal Time Statistics
DML 10g 11g 12c
• Programación de Ejecución de Estadísticas• Estadísticas sobre Índices nuevos• Estadísticas sobre Cargas Masivas (CTAS,
INSERT INTO AS SELECT)
Real Time Statistics
Recolección de Estadísticas Ligeras automáticas cuando ocurra cierta cantidad de operaciones DML o una importación sobre una tabla.
DBMS_STATS
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en la Recolección de EstadísticasReal Time Statistics - DEMO
Desactivar la Funcionalidad:
_optimizer_gather_stats_on_conventional_dml = FALSE_optimizer_gather_stats_on_load = FALSE
(No Recomendado) = FALSE
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesAutomatic Indexes
SPM
ADDM +
SQL Access Advisor(Disponible a Nivel de
PDB – 19c)
NOSEGMENT&
PUBLISHED
Métodos y Opciones Disponibles …
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesAutomatic Indexes
Captura
Identificar
VerificarDecidir
Monitorear
• La nueva funcionalidad se basa en lospatrones conocidos de Afinamiento del consultas SQL
• Identifica automáticamente índicescandidatos y valida cada uno de ellos antes de ser implementados
• El proceso es completamente automático
• La implementación es un proceso complejopero a la vez completamente transparente
• Todas las actividades de afinamiento son auditadas para la generación de reportes
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesNetsuite Workload
• Comparación de procesos funcionales de Netsuite y comparado contra una base de datos con Automatic Indexes.• 17,542 Sentencias, 1,852 tablas, 8,151 índices (creados durante años de evaluación)
TiempoEjecución
(seg)
Expertos AutomaticIndexes
11551172
ÍndicesUsados
Expertos
AutomaticIndexes
1733
4663
Se alcanzó un desempeño similar pero con menor cantidad de índices para la misma carga
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesAutomatic Indexes
Configuración:
DBMS_AUTO_INDEX.CONFIGURE (‘Parámetro’,’Valor’)
Parámetro Objetivo
AUTO_INDEX_SCHEMA,<NOMBRE ESQUEMA>,FALSE|TRUE TRUE: Se considera la creación automática de índices en el esquema.
AUTO_INDEX_SPACE_BUDGET,% Especifica el porcentaje de uso de espacio que puede ser utilizado para la creación de Índices Automáticos.Por defecto es: 50%.
AUTO_INDEX_RETENTION_FOR_AUTO,n días Mantiene por un período de n días los índices en estado UNUSABLE.Por defecto es: 373 días
AUTO_INDEX_RETENTION_FOR_MANUAL,n días Mantiene por un período de n días los índices que no han sido utilizados y fueron creados por el DBA manualmente.Por defecto Oracle no elimina los índices creados por el DBA que no tengan utilización.
AUTO_INDEX_REPORT_RETENTION,n días Permite almacenar por una cantidad de días los análisis y beneficios que tuvieron los índices analizados durante la fase de validación.Por defecto, se almacena por 31 días.
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesAutomatic Indexes
Revisión:
• DBA_AUTO_INDEX_EXECUTIONS• DBA_AUTO_INDEX_STATISTICS• DBA_AUTO_INDEX_IND_ACTIONS• DBA_AUTO_INDEX_VERIFICATIONS
Reportes:
• DBMS_AUTO_INDEX.REPORT_ACTIVITY• DBMS_AUTO_INDEX.REPORT_LAST_ACTIVITY
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesAutomatic Indexes - Demo
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Optimización en el Análisis de Creación de ÍndicesAutomatic Indexes - Demo
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
No permitir la re-ejecución de Planes de Ejecución PerjudicialesSQL Quarantine
• Planes de Ejecución SQL que consumenexcesivos recursos son aislados
• Son prevenidos de ejecutarse de nuevo
• Mejora la capacidad de respuesta general del sistema al evitar que las sentencias SQL “aisladas" se vuelvan a enviar continuamente
• El DBA puede Monitorear las sentenciasaisladas a través de la vista V$SQL
• Controlado por DBMS_SQLQ or DBMS_RESOURCE_MANAGER
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
No permitir la re-ejecución de Planes de Ejecución PerjudicialesSQL Quarantine – Implementación (DEMO)
PlanSQL
Automático (Resource Manager)
Manual (DBMS_SQLQ)
Manual (DBMS_SQLQ)
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
SQL Quarantine – Implementación (DEMO)Automático (Resource Manager)
Grupo Consumidor
DirectivaPlan de
Resource Manager
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
SQL Quarantine – Implementación (DEMO)
El plan configurado de Resource Manager permitirá que el usuario FRICCIO no pueda consumir más de 50% de procesamiento de los cores asignados a la base de datos considerando un 100% de consumo. Además estará limitado a ejecutar consultas no mayores a 300 segundos (5 minutos), en caso contrario su consulta será anulada.
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
SQL Quarantine – Implementación (DEMO)
El plan configurado de Resource Manager permitirá que el usuario FRICCIO no pueda consumir más de 50% de procesamiento de los cores asignados a la base de datos considerando un 100% de consumo. Además estará limitado a ejecutar consultas no mayores a 300 segundos (5 minutos), en caso contrario su consulta será anulada.
Configurando las reglas de una Sentencia SQL en Cuarentena:
Constantes:
CPU_TIME ELAPSED_TIME IO_MEGABYTES
IO_LOGICAL IO_REQUESTS ENABLED
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
SQL Quarantine – Implementación (DEMO)
Listado de las Cuarentenas Identificadas:
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Eficiencia sobre los Ambientes de ContingenciaActive Data Guard : DML Redirection
Base de Datos Primaria(Multitenant)
Base de Datos StandbyActive Data Guard
(Multitenant)
Replicación (Real Time Apply)
Operaciones DML
1
2Transacción se direcciona a la base de datos Primaria
La Transacción regresa al Standby Database vía su mecanismo de Replicación3
4
Se confirma la Transacción
Parámetros:
ADG_REDIRECT_DMLADG_REDIRECT_PLSQL
Oracle DB
10gR2
Oracle DB
11gR1
Oracle DB
12cR1
Oracle DB 9i
Data Guard(Ambiente
100% Pasivo)
Real Time Apply Active Data Guard Soporte Tablas Temporales
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Eficiencia sobre Otras Opciones de AlmacenamientoHybrid Partitioned Tables
• Oracle Partitioning da la posibilidad ahora de almacenar particiones tantoen la base de datos como fuentes externas.
• Las particiones de tipo externas pueden residir en file systems tradicionales, HDFS o Object Storage.
• Este modelo soporta el guardar gran cantidad de datos sobre nuevasalmacenamiento de menor costo manteniendo su lectura en línea.
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Eficiencia sobre Otras Opciones de AlmacenamientoHybrid Partitioned Tables
Q4_2018Q3_2018Q2_2018Q1_2018Q4_2017Q3_2017Q2_2017Q1_2017Q4_2016
ORDERS
OBJECT STORAGE
TABLE PARTITIONED BY QUARTER
SQL HOT DATACOLD DATA
UPDATES
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Eficiencia sobre Otras Opciones de AlmacenamientoHybrid Partitioned Tables - Implementación
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. |
Conclusión
Maximizar la Productividad del DBA
Real Time Statistics
Automatic Indexes
SQL Quarantine
Data GuardDML Redirect
Hybrid Partitioned
Table
Referencias:
https://www.oracle.com/technetwork/es/articles/database-performance/real-time-statistics-5478488-esa.htmlhttps://www.oracle.com/technetwork/es/articles/sql/automaticindexing-odb19-5459040-esa.htmlhttps://www.oracle.com/technetwork/es/articles/sql/cuarentena-planes-odb19-5486042-esa.htmlhttps://www.oracle.com/technetwork/es/articles/database-performance/operaciones-dml-datag-5493494-esa.html