Fundamentos de administracion_oracle_10g

Post on 13-Jun-2015

2.322 views 0 download

Transcript of Fundamentos de administracion_oracle_10g

UNIVERSIDAD LATINA DE COSTA RICA, Campus HerediaIngeniería en Sistemas Computacionales

Programa del Curso:ISC430 – Bases de Datos I. (Periodo 2010-02)

Profesor: Julio Cesar Sánchez Lobo Estudiante: Walter Cubero L.

Oracle 10g

Conceptos Fundamentales de la Base de Datos

Contenido

¿Qué es Oracle 10g?

¿Cómo funciona? (arquitectura)

Sus principales características

Funciones del administrador (DBA)

¿Qué es Oracle 10g?

¿Cómo funciona? (arquitectura)

Sus principales características

Funciones del administrador (DBA)

¿Qué es Oracle y qué es 10g?

• Es una base de datos relacional, en su décima versión (por eso el 10)

• La “g” es por “grid computing”.*• Producto líder mundial en bases de datos

(98/100 empresas Fortune).• Surgió a finales de los 70’s como un proyecto de

Larry Ellison para implementar la teoría de Edgar Codd

Edgar Frank Codd (Ted)

Agosto 1923, Abril 2003

Artículo: “A Relational Model of Data for Large Shared Data Banks” (1970, IBM)

Lawrence “Larry” Ellison

Agosto 1944

70’s creó una base de datos para un proyecto de la CIA, basado en teoría de Codd.

En 1977 fundó Oracle Corporation

*Es una tecnología innovadora que permite utilizar de forma coordinada todo tipo de recursos (entre ellos cómputo, almacenamiento y aplicaciones específicas)

¿Qué más es Oracle 10g?

• Es mucho más que sólo relacional.• Se distingue por su constante innovación.• Famosa por su precio (oracle = el caro) y su

esquema de licenciamiento.• La versión 10g tiene 5 ediciones (por tamaño y

precio):– Enterprise, Standard, Standard One, Personal y Express.– La versión “express” es gratis, pero limitada.

Base de datos relacional

“conjunto de datos relacionados y almacenados que cumple con el modelo relacional”

+“un Sistema de información para

gestionar esos datos” (RDBMS)

Modelo relacional• BD = conjunto de “relaciones”• Agrupa datos en tablas (filas y columnas)

Tabla

Filas

Columnas

1834 Gabriela Solís 18.Oct.1985

1833 Alberto Salas 09.Dic.1983

1832 María Arias 04.Jun.1985

1831 Tomás Cruz 22.Ene.1987

Modelo relacional• Tablas se relacionan por datos comunes• No hay relaciones físicas (ventaja)

18311831

1831

Llave primariaLlave foránea

Uso de llaves primarias y foráneas Uso de lenguaje SQL (DDL, DML y consultas)

estudiantescursos matriculados

Modelo relacional

• Normalización (diseño)– Conjunto de reglas aplicadas al modelo– Evita la redundancia innecesaria– Facilita actualización de los datos– Protege la integridad de los datos

¿Qué es Oracle 10g?

¿Cómo funciona? (arquitectura)

Sus principales características

Funciones del administrador (DBA)

¿Cómo funciona? (arquitectura física)

Procesos de servidor PGA

Procesos de usuario

Instancia

SGA Shared Pool

Data buffer cache

Large Pool

Redo Log buffer

Sh. SQL y PL/SQL

Data Dict. cache

PMONSMON DBWR CKPT LGWR ARCH

BD Oracle 10g

Parameter File

Password File

Archived Log Files

Control Files

Data F

iles

Redo

Log

Fi

les

DBWR = escribe bloques de datos del SGA a los data files.

SMON = recupera la instancia al arrancar. Aplica cambios de Redo Logs, abre la base de datos y aplica Rollback de transacciones de los usuarios.

PMON = recupera recursos de sesiones que han fallado.

ARCH = genera archivos con cambios en los datos si está en modo ARCHIVELOG

¿Cómo funciona? (arquitectura lógica)• Todos los objetos ocupan espacio en la BD• Bloque es la unidad mínima almacenamiento

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

2K2K 2K 2K 2K

Extent 80K 20KSegmento 100 K

Segmento 30 K

Segmento 30 K

Segmento 20 K

Segmento 20 K

Tablespace 200 K

Tablespace 1 Tablespace 2 Tablespace 3

Data files (archivos físicos de datos)

Concepto de TransacciónRapidamente

Concepto de TransacciónRapidamente

¿Qué es Oracle 10g?

¿Cómo funciona? (arquitectura)

Sus principales características

Funciones del administrador (DBA)

Principales funciones

• Grid computing• Alta disponibilidad• Integridad de datos• Seguridad• Escalabilidad y rendimiento• Respaldo y recuperación• Manejo de contenido• Inteligencia de negocios• Integración de información

“Grid computing”

• Integración y uso colectivo de recursos (heterogéneos o no) como servidores, bases de datos, software y redes

• Crecer es “sencillo” y “barato”• “Runs faster, costs less and never breaks.”• Beneficios:

– Balanceo de cargas– Reducción de costos– Alta disponibilidad

Alta disponibilidad

• Ambientes sin puntos únicos de fallo• Si un nodo falla, su carga se pasa a otros

nodos (backup) y se recupera el sistema a un estado “normal”

• Entre menos microsegundos se tarde, se tiene mayor “disponibilidad”

• La recuperación y restauración es transparente para los usuarios

Integridad de datos

• Reglas que deben cumplir los datos.• Definidas por DBA o diseñador aplicación.• Oracle lo implementa mediante:

– Restricciones de integridad (llaves, reglas)– Disparadores de base de datos (DB Triggers)

• Ante un intento de violación, Oracle envía un mensaje de error y deshace la transacción.

Insert, Delete, Update

Seguridad de sistema y datos

• Sistema (System security) – claves, vigencia password, cantidad de disco usado, recursos del

sistema.• Datos (Data security)

– Acceso a los esquemas y a qué acciones– Auditoría de las acciones de cada usuario– Encriptado de datos

• Mecanismos:– Autenticación de redes, bd y aplicaciones– Limitación de acceso y acciones por privilegios y roles (flexible y

fácil)– Políticas de seguridad– Pistas de auditoría

Escalabilidad y rendimiento

• Escalabilidad : Capacidad de crecer sin perder calidad en el servicio brindado

• Rendimiento : cuántas tareas hago en cuánto tiempo

• Objetivos:– Maximizar concurrencia (espera mínima)– Consistencia de lectura (transaccionalidad)– Mecanismos de bloqueo – RAC (Real Application Clusters)– Portabilidad

RAC y portabilidad

• RAC (Real Application Clusters)– Cluster: grupo de tablas almacenadas juntas, porque

se usarán juntas. Acceso a disco.– Varias instancias Oracle corriendo sobre varios

servidores en “cluster”. • Portabilidad

– Idéntico código base entre “plataformas”.– Transparencia entre aplicaciones.– Permite migrar hardware sin perder información y

funcionalidad.

Respaldo y recuperación

“Perder” la menor cantidad de datos, sin perder la consistencia.

Volver a operar en el menor tiempo posible. Respaldo es una copia de datos. Respaldos físicos y lógicos. Oracle tiene varios mecanismos para:

› “Recovery” según el tipo de falla› Disponibilidad de datos durante respaldos para no detener

la operación de la BD

Respaldo y recuperación

• Tipos de falla:– Errores de usuarios– Errores de sentencias– Fallo en un proceso– Fallo en la instancia– Fallo de hardware (discos)

• Recuperación puede ser parcial o total.• Disponibilidad de las partes “no dañadas”

mientras se recupera.

Estructuras (recuperación)

• Respaldos físicos (data files)– Recovery Manager (RMAN) o por el S.O.– Online backups (ARCHIVELOG) *¿inconsistente?

• Respaldos lógicos– Herramientas Export e Import– Flexibilidad (parcial o total)– Portable entre sistemas operativos

Aplicación de ARCHIVELOGs

El modo archivelog de una base de datos Oracle protege contra la pérdida de datos cuando se produce un fallo en el medio físico.Se puede realizar una copia de seguridad mientras la base de datos está levantada.

Inteligencia de negocios (BI)• BI = tecnología para apoyar la toma de decisiones de negocios, usando data

warehouse• Un “Data Warehouse” es una bd relacional diseñada para consultas y análisis,

en vez de procesamiento de transacciones.

Bases de datos transaccionales

Otras Bases de datos

Otras fuentes

Data warehouse

Aplicaciones

Incluye herramientas para extracción, transporte, transformación y carga de datos

Procesamiento analítico en línea (OLAP) Herramientas de análisis para los clientes

“Content management”

• Tipos de datos para contenidos de Internet:– Datos relacionales, OO, XML, audio, vídeo

• XML: varios “developer’s kits”.– Genera documentos XML desde sentencias SQL.– “Utilities” en Java y C++ para facilitar tareas

• LOB’s (texto, imágenes, vídeo, sonido)• Oracle UltraSearch (indexa web sites, mailing lists, tablas,

portales y otros para búsquedas)• Oracle interMedia (aplicaciones web y wireless con

multimedia)• Oracle Spatial (contenido de ubicación)

Integración de información• Sistema distribuido: red de sistemas que se

intercomunican de forma “transparente”.• Múltiples bd operan como una sola.• Primeros con “two phase commit”.

Oracle 10g

Oracle 10g

Oracle 10g

Usuario cree que trabaja con una BD, pero datos pueden estar distribuidos

Transparencia de ubicación (aplicaciones y datos). Transparencia de transacción. Optimizador distribuido (consultas). Replicación y distribución de datos.

Aplicaciones

Desarrollo de aplicaciones

• Soporta varios lenguajes para desarrollo de aplicaciones diversas.

• Oracle SQL (SQL Plus) y PL/SQL– Disparadores– Procedimientos y funciones almacenados

• Java (Orientación a objetos).• Application Programming Languages (API’s)

– C, C++, Java, COBOL, PL/SQL y Visual Basic– Uso de ODBC

¿Qué es Oracle 10g?

¿Cómo funciona? (arquitectura)

Sus principales características

Funciones del administrador (DBA)

Funciones comunes del DBA

• Instalar software de Oracle• Crear bases de datos Oracle• Ejecutar “upgrade” de la base de datos• Subir y bajar la instancia (y la bd)• Administrar estructuras de almacenamiento• Administrar usuarios y seguridad• Administrar objetos de esquemas (tablas, índices,

tablas, vistas, etc.)• Hacer respaldos y recuperaciones• Monitorear proactiva y preventivamente• Monitorear y afinar el rendimiento

Herramientas del DBA

• Hay varias herramientas de apoyo:– Oracle Universal Installer (OUI)– Database Configuration Assistance (DBCA)– Database Upgrade Assistance (DUA)– Oracle Net Manager– Paquetes para “tuning” (performance)– Oracle Enterprise Manager

• Usuarios SYS y SYSTEM para el DBA

Oracle Enterprise Manager

Opciones de administración

Rendimiento de la instancia

Información de sesiones

Análisis de sentencia SQL

Creación de usuarios

Consulta de datos

Bitácoras (auditoría)

Análisis de TABLESPACES

Preguntas | Gracias