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 [email protected]
5a. Ave.
II, Nivel 12
Teléfono: (502)2364-5300Fax: (502)2364-5311
Editores Generales
[email protected]
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:[email protected]
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 protected]
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
[email protected]|
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 protected]
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 protected]
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 protected]
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 [email protected].
5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12
Teléfono: (502)2364-5300Fax: (502)2364-5311
[email protected]
Página 6
Conceptos básicos Oracle 11g: Introducción
Por Lic. Francisco Barrundia
[email protected]
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 protected]
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 protected]
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 protected]
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 protected]
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 protected]
Página 11
5a. Ave. 5-55 Zona14, Edificio Euro Plaza Torre II, Nivel 12
Teléfono: (502)2364-5300Fax: (502)2364-5311
[email protected]
Página 12