Download Afinación Por Medio De Páginas Grandes - Newsletter
Document related concepts
Transcript
Newsletter – Julio 2012 Afinación Por Medio De Páginas Grandes Contenido Página: 1 Afinación por medio de Páginas Grandes 3 Introducción a Golden Gate 7 Conceptos Básicos Oracle Por: Ing. Alejandro Lau 11G5-55 Zona14,Edificio Euro Plaza Torrealau@datum.com.gt 5a. Ave. II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Editores Generales Email.info@datum.com.gt Daniel Cacía Gerber Bautista Debbie Moran Francisco Barrundia Autores Contribuyentes Alejandro Lau Luis Alonzo Francisco Barrundia 1/10 en Un sistema de base de datos Oracle está sujeto a una afinaciónPagina constante diferentes niveles como aplicación, memoria SGA y PGA, almacenamiento, etc. Entre las prácticas enfocadas al buen desempeño de la base de datos tenemos el uso de páginas grandes para la memoria SGA reservada por la instancia Oracle. Esta opción se puede aprovechar desde Oracle Database 8i, pero cobra más importancia a partir de Oracle Database 10g con plataformas de 64 bits. Consiste en utilizar páginas de memoria más grandes de lo normal, las cuales permanecen fijas y nunca son bajadas al área de swap. De este modo, los procesadores acceden más rápidamente a los buffers de Oracle, ya que con menos operaciones de lectura recuperan mucha más información. El tamaño default de página depende de la arquitectura de procesador, del sistema operativo y del total de RAM, generalmente es de 4KB. También, la forma de habilitar y el tamaño de página grande varían de una plataforma a otra. El tamaño puede ir desde 2MB y en aglunas plataformas es un tamaño fijo. ¿Cuándo utilizar páginas grandes? Considere el uso de páginas grandes si se cumple alguno de los siguientes casos: Los SGAs combinados en el servidor llegan a 8GB o más. Hay uso intensivo de memoria (muchas lecturas). 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email:info@datum.com.gt Página 1 Ventajas Con páginas grandes se necesitan menos lecturas. Como están fijas en memoria, no se necesita acceder al índice de páginas que se usa con páginas normales. No hay uso de swap para estas páginas. Menos uso de CPU por los puntos anteriores. Configuración Para utilizar páginas grandes se requiere primero de cierta configuración a nivel de sistema operativo, la cual varía de una plataforma a otra. Existe documentación específica para cada caso. Luego, puede ser necesario definir los parámetros LOCK_SGA y PRE_PAGE_SGA como TRUE y los parámetros MEMORY_TARGET y MEMORY_MAX_TARGET como FALSE (a partir de Oracle Database 11g). ¿Cómo confirmar que estoy utilizando páginas grandes? En la bitácora de la base de datos (alert log) deben aparecer entradas como las siguientes, antes de la lista de parámetros: Starting ORACLE instance (normal) Thu Apr 12 15:56:55 2007 Tip técnico del día: Large page enabled : 1 Thu Apr 12 15:56:55 2007 Que es Wrap? Large page size : 16777216 Large page request size : 16777216 LICENSE_MAX_SESSION = 0 LICENSE_SESSIONS_WARNING = 0 ........... Desde la versión 2.0 de PL/SQL existe la facilidad de WRAP, que permite encriptar código PL / SQL para que nadie pueda ver su procedimiento o paquete de código fuente. El arranque de la instancia puede ser lento con páginas grandes, debido a la asignación de páginas grandes contiguas, sumado a un período largo de servicio. En estos casos puede ser recomendable un reinicio total del servidor en vez de reiniciar solamente la instancia. Para utilizarlo: El uso de páginas grandes no es exclusivo de la instancia Oracle, también puede estar disponible para procesos en general y el PGA de Oracle, dependiendo de la plataforma. Sin embargo, el uso desmedido puede ocasionar el agotamiento de la memoria por procesos concurrentes que reclaman muchas páginas grandes. https://www.facebook.com/pages/DatumSA/269377659745551 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt WRAP INAME=.sql OUTFILE=.plb Síguenos en Facebook: Y Twitter: https://twitter.com/#!/DatumGT Página 2 Introducción a Golden Gate Por: Ing. Luis Alonzo alonzo@datum.com.gt| Introducción Oracle Golden Gate es una herramienta para integración de datos en tiempo real entre bases de datos, ya sean estas Oracle, o bien ambientes heterogéneos. Permite capturar, filtrar, transformar y replicar transacciones en tiempo real, con un mínimo impacto en el rendimiento, y manteniendo la integridad y consistencia de los datos. Entre ambientes homogéneos Oracle, podría manejarse opciones de replicación ya existentes, como Oracle Streams y Oracle Advanced Replication, ambas opciones de la edición Enterprise. Si se busca una herramienta más completa de replicación en una base de datos edición Standard, sin incurrir en el costo de migrar a un licenciamiento de edición Enterprise, Golden Gate es la opción más adecuada. Una de las principales ventajas de Golden Gate es su capacidad de integración de datos entre diferentes plataformas, versiones, y manejadores de bases de datos. Ejemplos de cómo se está aprovechando esta ventaja actualmente: 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 3 1. Minimización de tiempo fuera de servicio al migrar bases de datos de una plataforma a otra; Oracle permite la migración de bases de datos entre diferentes plataformas a través de bases de datos y tablespace transportables, pero el tiempo puede ser prohibitivo para ambientes que requieren funcionar 7x24, y existen restricciones entre las plataformas y versiones en que se puede usar esta funcionalidad. 2. Mantenimiento de Data warehouse 3. Integración de bases de datos Oracle y No Oracle; herramientas de inteligencia de negocios, reportes en línea, etc. Arquitectura Para proveer la funcionalidad descrita anteriormente, Golden Gate está formado por los siguientes procesos principales: Manager. Proceso encargado de la administración y comunicación local y remota de los procesos de Golden Gate. Extract. Este proceso captura la información necesaria para replicar las transacciones; la fuente de captura de este proceso son los logs de bitácora de la base de datos; en el caso de Oracle, los online logs, y en su defecto, los archived logs. La información capturada, puede ser filtrada en este proceso, y es enviada a un trail, ya sea local, o remoto. Trail. Es el medio donde se almacenan los cambios capturados, y que serán la fuente para replicar las transacciones. Localmente son archivos físicos que Oracle Golden Gate escribe en un formato propietario, para entregar y replicar la información. Data pump. Es un proceso que permite leer los trail files y enviarlo por medio de TCP/IP al destino remoto. Replicat. Es el proceso que aplica los cambios en el destino, y también puede filtrar los datos a replicar, ya sean estos DML’s o DDL’s. 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 4 Facilidad de uso Golden Gate cuenta con una línea de comandos, a través de la cual se puede administrar los procesos anteriormente descritos, editarlos, modificar su estructura, editar los scripts generados, filtrar la información a replicar, etc. Esto podría ser un punto de debilidad de la herramienta, ya que se requiere conocer los diferentes comandos, parámetros y propiedades de cada proceso, etc. Afortunadamente, Oracle provee una herramienta para administrar los procesos de una forma gráfica e intuitiva, Golden Gate Director: Por ejemplo, para crear un proceso de Extract en la base de datos origen, con la línea de comandos, necesitamos los siguientes comandos: 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 5 EDIT PARAM EXT01 #Agregar parámetros a archivo de configuración EXTRACT EXT01 SETENV (ORACLE_SID=ORCL) USERID ggs_admin, password ggs_admin EXTTRAIL ./dirdat/sa TABLE HR.EMP; ADD EXTRAIL ./dirdat/sa, extract EXT01, megabytes 50 ADD EXRACT EXT01, EXTTRAILSOURCE ./dirdat/sa, BEGIN NOW Mientras que con Golden Gate Director, el crear el proceso extract es posible crearlo con un par de clicks: El objetivo principal del presente artículo es informar sobre la herramienta de Oracle Golden Gate y su herramienta de administración gráfica, Oracle Golden Gate Director, para solucionar los problemas de integración de datos que puede enfrentar en su empresa, y proveerle un mejor servicio en esta y las distintas herramientas de Oracle. Es necesario mencionar que existen configuraciones previas a nivel de las bases de datos, y requisitos que deben cumplirse para hacer uso correcto de Golden Gate. Más información, en el siguiente artículo, o al correo dbms@datum.com.gt. 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 6 Conceptos básicos Oracle 11g: Introducción Por Lic. Francisco Barrundia fbarrundia@datum.com.gt 1. Objetivos El objetivo de este artículo es describir brevemente los siguientes conceptos básicos a modo de familiarización con las bases de datos ORACLE. Describir brevemente en qué consiste el modelo relacional y el lenguaje SQL Identificar cuáles son los componentes de una instancia de base de datos y cómo se accede a la base de datos. Describir las tareas básicas del administrador de base de datos ( DBA ) Describir cuáles son las herramientas de administración de base de datos disponibles para el administrador por ORACLE. 2. Base de datos relacional La base de datos Oracle es un sistema de administración de base de datos relacionales (RDBMS). El modelo relacional (de un modo sencillo) consiste en utilizar tablas bidimensionales para almacenar la información. Consta de tres elementos básicos: Tablas Conjunto de operadores para manipular esas tablas Reglas de integridad 3. Terminología de base de datos relacional Una base de datos relacional contiene varias tablas. Una tabla es la estructura básica en un RDBMS. Una tabla representa “un concepto” necesario de la vida real. (Por ejemplo, la tabla empleados). Tabla empleados: 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 7 En la estructura básica del modelo relacional se distinguen los siguientes elementos: Relación: En el modelo relacional se representa mediante una tabla con m filas y n columnas. Como las tablas son esencialmente relaciones, se utilizarán los términos matemáticos relación y tupla, en lugar de los términos tabla y fila. Atributos: Son las columnas de la tabla. Corresponden a las propiedades de las entidades Cada uno de estos atributos puede tomar valores dentro de un rango determinado, que se llama dominio. Varios atributos pueden compartir un único dominio. Dominio: Rango de valores aceptable para un atributo dado. Este rango depende exclusivamente del atributo y va a condicionar los valores posibles dentro de cada celda de la tabla. Tuplas: Es el nombre que recibe cada una de las filas de la tabla. Cardinalidad de la relación: es el número m de tuplas de la relación. Grado de la relación: Es el número n de atributos que intervienen en la relación. Una vez visto qué es una tabla o relación, vamos a enumerar sus propiedades principales: Todas las filas de una tabla están compuestas por el mismo número y tipo de atributos que, además, aparecen siempre en el mismo orden. No puede haber filas repetidas. Es decir, todas las filas de la tabla deben diferenciarse entre sí al menos en el valor de un atributo. El orden en que aparecen las filas dentro de la tabla no es relevante. 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 8 En cada celda de la tabla sólo puede aparecer un valor. Además este valor debe estar dentro del dominio de la columna correspondiente. Una tabla no puede contener dos filas iguales. Esto obliga, necesariamente, a que haya uno o varios atributos que se puedan utilizar para distinguir unas tuplas de otras. Cualquier atributo o conjunto mínimo de ellos que sirva para este propósito se denomina clave candidata. Es decir, una clave candidata permite identificar de forma única una fila de una tabla. Es posible que la única clave candidata de una relación esté formada por todos los atributos de la misma. A la clave candidata que el usuario escoge para identificar las tuplas de una relación se la denomina clave primaria. (primary key). Una propiedad fundamental de la clave primaria consiste en que, bajo ninguna circunstancia, puede adoptar el valor nulo, ya que si así lo hiciera perdería su capacidad para identificar las tuplas de la relación. El resto de claves candidatas que no han sido elegidas como clave primaria reciben el nombre de claves alternativas o secundarias. 4. Instancia Oracle Una instancia de Oracle comprende estructuras de memoria conocidas como SGA (System Global Area) y los procesos background de Oracle. La instancia de base de datos Oracle comprende también los “datafiles”, “redo log files” y los “control files”. 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 9 5. SQL (Structured Query Language) Es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar un conjunto de operaciones sobre las mismas. Se caracteriza por el manejo del álgebra relacional y el cálculo relacional. Permite recuperar información de una base de datos. Con SQL entre otras cosas podemos: Consultar datos de una base de datos Insertar, actualizar y borrar datos de una tabla Crear, reemplazar, alterar, borrar objetos Controlar el acceso a la base de datos y a sus objetos Garantizar la consistencia e integridad de la base de datos Otorgar y Revocar permisos. 6. Sentencias SQL 7. SQL para acceder a la base de datos La comunicación con el servidor de base de datos se realiza usando SQL. Las sentencias pueden ser introducidas por un usuario o ser ejecutadas por un programa. Estas sentencias son procesadas y el resultado es devuelto al usuario. 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 10 8. Tareas de administrador de base de datos Podemos considerar tareas del administrador de base de datos las siguientes: Instalar y actualizar el software de oracle Crear base de datos Realizar las actualización de la base de datos y el software Levantar y Parar la instancia de base de datos Manejar las estructuras de almacenamiento de Oracle Manejar los usuarios de Oracle Manejar los esquemas Realizar backups y recuperar la base de datos Monitorizar la base de datos Ajustar la instancia de base de datos (tunning) 9. Herramientas usadas para administrar una base de datos oracle. Oracle Universal installer ( Instalador de Oracle ) Database Configuration Assistant ( Asistente para la configuración de oracle ) Database Upgrade Assistant ( Actualizar base de datos ) Oracle Net Manager ( Para configurar la red de oracle ) Oracle Enterprise Manager ( Para administrar la base de datos ) SQL* Plus adn iSQL*PLUS ( Para realizar sentencias SQL contra la base de datos ) Recovery Manager ( Para recuperar bases de datos ) Data Pump ( Para realizar copias de seguridad, antiguo imp/exp) SQL*Loader ( Para realizar la carga de datos ) 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 11 5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12 Teléfono: (502)2364-5300Fax: (502)2364-5311 Email.info@datum.com.gt Página 12