05.03.2015 Views

Oracle POstgre MySQL.pdf

Oracle POstgre MySQL.pdf

Oracle POstgre MySQL.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Luis Luna<br />

Junior Aguayo<br />

Arturo Rossodivita<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura Mysql<br />

6. Conclusión<br />

Introduccion<br />

El propósito de esta exposición es comparar la<br />

arquitectura general de los DBMS con las arquitecturas<br />

de unos tres de los DBMS mas conocidos en el ámbito<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

como son Postgres, <strong>Oracle</strong> y Mysql.<br />

Un DBMS es el sistema manejador de las bases de<br />

datos, el cual se encarga de administrar los accesos,<br />

consultas, modificaciones, etc. Realizados en una base<br />

de datos.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2. Arquitectura General<br />

- Capa de Aplicación<br />

- Capa Lógica<br />

- Capa Física<br />

Arquitectura General<br />

En todos los sistemas de bases de datos, en el nivel<br />

mas alto de abstracción tiene tres componentes<br />

principales:<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura Mysql<br />

6. Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2. Arquitectura General<br />

- Capa de Aplicación<br />

- Capa Lógica<br />

- Capa Física<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura Mysql<br />

6. Conclusión<br />

Capa de Aplicación<br />

La capa de aplicación representa la interfaz para<br />

todos los usuarios del sistema; esencialmente<br />

proporciona los medios por los cuales el mundo<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

exterior puede trabajar con el servidor de la base de<br />

datos.<br />

Tipos de Usuarios:<br />

- Sofisticados<br />

- Especializados<br />

- Sencillos<br />

- Administradores<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2. Arquitectura General<br />

- Capa de Aplicación<br />

- Capa Lógica<br />

- Capa Física<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura Mysql<br />

6. Conclusión<br />

Capa Lógica<br />

La funcionalidad de los DBMS se representa en la<br />

arquitectura de la capa lógica, es en esta porción del<br />

sistema en que hay una variedad de puestas en<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

practicas especificas de cada vendedor.<br />

Sin embargo en general existe en muy alto nivel<br />

esta compuesto por:<br />

- Un procesador de Query<br />

- Un Manejador de Transacciones<br />

- Un Manejador de Recuperación<br />

- Un manejador de Almacenamiento<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

- Capa de Aplicación<br />

- Capa Lógica<br />

- Capa Física<br />

2. Arquitectura Postgres<br />

Capa Física<br />

El DBMS es responsable del almacenamiento de<br />

una variedad de información, que se mantiene el<br />

almacenamiento secundario y está se alcanza con el<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

encargado del almacenamiento.<br />

3.Arquitectura <strong>Oracle</strong><br />

4.Arquitectura Mysql<br />

5.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Soporte Tecnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

Resumen Historico<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

-Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Soporte Tecnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

PostgreSQL es un servidor de base de datos relacional libre, liberado bajo<br />

la licencia BSD. Es una alternativa a otros sistemas de bases de datos de<br />

código abierto (como <strong>MySQL</strong>, Firebird y MaxDB), así como sistemas<br />

propietarios como <strong>Oracle</strong> o DB2.<br />

PostgreSQL es el último resultado de una larga evolución comenzada con<br />

el proyecto Ingres en la Universidad de Berkeley. El líder del proyecto,<br />

Michael Stonebraker abandonó Berkeley para comercializar Ingres en 1982,<br />

El proyecto resultante, llamado Postgres, era orientado a introducir la<br />

menor cantidad posible de funcionalidades para completar el soporte de tipos.<br />

A pesar de que el proyecto Postgres hubiese finalizado oficialmente, la<br />

licencia BSD bajo la cual Postgres había sido liberado permitió a<br />

desarrolladores de código abierto el obtener una copia del código para<br />

continuar su desarrollo.<br />

La empresa Pervasive que comercializa su motor propietario<br />

PervasiveSQL, actualmente también distribuye una versión libre basada en<br />

PostgreSQL.<br />

Noviembre<br />

2005


AGENDA<br />

Arquitectura Total del PostgreSQL<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

Arquitectura Total<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

1) Libpq son responsables de manejar la comunicación con los<br />

procesos del cliente:<br />

• establecer la conexión al postmaster.<br />

• obtención del hilo de rosca del servidor del postgre para la sesión<br />

operacional.<br />

2) El Servidor se compone de dos subsistemas: el postmaster y el<br />

servidor del postgre.<br />

El Postmaster es responsable de aceptar la petición de conexión<br />

entrante del cliente, de realizar control de la autentificación y de<br />

acceso en la petición del cliente, y de establecer a cliente a la<br />

comunicación del servidor del postgre.<br />

El servidor del Postgre maneja todos los querys y comandos del<br />

cliente.<br />

3) El Store Manager es responsable de la gestión de la memoria<br />

externa general y control de recurso en el back-end, incluyendo la<br />

gerencia de almacenador intermediario compartida, de la gerencia de<br />

archivo, del control de la consistencia y del encargado de la cerradura.<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Control de Concurrencia<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Control de Concurrencia<br />

Los hilos de rosca múltiples del PostgreSQL se pueden<br />

ejecutar concurrentemente teniendo acceso a un almacenaje<br />

de datos compartido.<br />

En PostgreSQL, los lectores no bloquean a escritores y<br />

los escritores no bloquean a lectores. Un escritor bloquea<br />

solamente a escritor si están escribiendo a la misma entrada<br />

de datos.<br />

En el caso antedicho, PostgreSQL proporciona dos<br />

soluciones (basadas en estándar de la ISO SQL): leído<br />

confiado y serializable.<br />

• En el caso de leído confiado, el escritor leerá los nuevos<br />

valores antes de realizar su escribe la operación.<br />

• En el caso de serializable, el escritor abortará si se ha<br />

modificado el valor de los datos desde que comenzó su<br />

transacción.<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Subsistemas del servidor<br />

El Host del servidor de PostgreSQL consisten en gran<br />

parte dos porciones: Postmaster y Postgres.<br />

Cuando un cliente (front-end) envía una petición para<br />

tener acceso a la base de datos en el servidor, el postmaster<br />

del servidor crea un nuevo proceso del servidor, llamado los<br />

postgres, que se comunica directamente con el cliente.<br />

Por lo tanto, el postmaster esta siempre en<br />

funcionamiento, esperando peticiones de un cliente, mientras<br />

que los postgres, que son procesos, comienzan y paran por el<br />

requerimiento de clientes.<br />

Después de que se establezca una conexión, el proceso<br />

del cliente puede enviar una pregunta en forma llana del texto<br />

al back-end.<br />

No hay análisis hecho en el front-end. El servidor después<br />

analiza la pregunta, crea un plan de la ejecución, ejecuta el<br />

plan, y transmite los tuples recuperados al excedente del<br />

cliente la conexión establecida.<br />

Noviembre<br />

2005


AGENDA<br />

Arquitectura del procesador de Query/Command<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

Arquitectura Conceptual del servidor de PostgreSQL<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Arquitectura del Servidor<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

1) El Parser chequea primero el query transmitido por el programa<br />

de uso para el sintaxis válido. Si la sintaxis está correcta, un árbol del<br />

análisis se acumula y se devuelve; si no, se vuelve un error. Entonces,<br />

el árbol del análisis se transforma en la fórmula interna usada por la<br />

base de datos back-end.<br />

2) El Trafic cop identifica el query como una pregunta para uso<br />

general o pregunta más compleja. Estas preguntas se envían a la etapa<br />

siguiente (es decir Rewriter.) Las preguntas para uso general se envían<br />

a los comandos para uso general.<br />

3) El Utility Commands manejan los querys que no requieren la<br />

dirección compleja. El vacío, copia, altera, crea la tabla, crea el tipo, y<br />

muchos otros son dirigidos por los comandos para uso general.<br />

4) El Query Rewriter es un subsistema entre el Parser y el Planer.<br />

Procesa el árbol del análisis pasado por el Trafic Cop y, aplicando<br />

cualquier regla aplicable en presente, reescribe el árbol a una forma<br />

alternativa.<br />

Noviembre<br />

2005


AGENDA<br />

Arquitectura Conceptual del servidor de PostgreSQL<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Arquitectura del Servidor<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

5) El Planer proporciona un plan óptimo de la ejecución para una<br />

pregunta dada. La idea básica del planificador es selección costeestimar-basada<br />

del mejor plan para un query.<br />

• Primero combina todas las maneras posibles de la exploración y de<br />

ensamblar las relaciones que aparecen en una pregunta.<br />

• Todas las trayectorias creadas conducen al mismo resultado y el<br />

planificador estima el coste de ejecutar cada trayectoria.<br />

• Después de todo, elige la trayectoria más barata de todos y pasa al<br />

ejecutor.<br />

6) El Ejecutor toma el plan pasado detrás por el planificador y<br />

comienza a procesar el nodo superior.<br />

Ejecuta un árbol del plan, que es una red canalizada del demand-pull<br />

de nodos de proceso.<br />

Cada nodo produce el tuple siguiente en su secuencia de la salida<br />

cada vez que se llama.<br />

En contraste, los nodos del Upper-level son exploraciones de tablas<br />

físicas, las exploraciones secuenciales o las exploraciones del índice.<br />

El ejecutor hace uso el sistema del almacenaje mientras que explora<br />

relaciones, realiza clases y ensambla, evalúa calificaciones y finalmente<br />

da detrás los tuples derivados.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Arquitectura del Servidor<br />

- Arquitectura del<br />

Query/comamand<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Arquitectura de la Utilidad de Query/Command<br />

1) Catálogo: proporciona la manipulación del catálogo<br />

del sistema, y contiene las rutinas de la creación y de la<br />

manipulación para todos los aspectos del sistema de catálogo,<br />

tales como tabla, índice, procedimiento, operador, tipo,<br />

agregado, etc. El módulo del catálogo es utilizado por todos<br />

los subsistemas del back-end.<br />

2) Acceso: define el acceso de los datos para el montón,<br />

los índices y las transacciones. Su función es tres dobleces:<br />

proporciona los datos comunes que tienen acceso a rutinas<br />

proporciona los datos que tiene acceso a la estructura en la<br />

forma de hash, heap, índice, btree, etc.;<br />

actua como encargado de la fase durante transacciones. El<br />

módulo del acceso es utilizado por todos los subsistemas del<br />

back-end.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Arquitectura del Servidor<br />

- Arquitectura del<br />

Query/comamand<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Arquitectura De la Utilidad De Query/Command<br />

3) Nodos: el módulo de nodes/lists define la creación y la<br />

manipulación de los nodos y de las listas, que son envases de petición<br />

y de datos durante el proceso de la pregunta. El submódulo de<br />

nodes/lists es utilizado por todos los subsistemas del back-end excepto<br />

poli del tráfico.<br />

4) Utils: los utils proporcionan varias utilidades al back-end, tal<br />

como inicialización, rutinas de la clase, registro de errores, rutinas del<br />

hash, etc. Es alcanzado extensamente por todos los subsistemas del<br />

back-end.<br />

5) Bootstraps: se utiliza el módulo del Bootstraps cuando<br />

PostgreSQL está funcionando por primera vez en un sistema. Se<br />

requiere este módulo porque el postgreSQL ordena comúnmente la<br />

tabla de los datos del acceso. Tales tablas de los datos no existen<br />

cuando Postgre se funciona para la primera vez.<br />

Noviembre<br />

2005


AGENDA<br />

Sistema de Catalogo<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Arquitectura del Servidor<br />

- Arquitectura<br />

Query/comamand<br />

- Sistema de Catalogo<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

PostgreSQL utiliza catálogos a un grado y a un contexto<br />

mucho mayores que el otro DBMSes.<br />

PostgreSQL utiliza no solamente catálogos para definir las<br />

tablas, pero también aplicaciones él de describir datatypes,<br />

funciones, operadores, el etc.<br />

Esta característica proporciona extensibilidad y control<br />

mucho mayores del usuario. Los datatypes definidos usuario<br />

se utilizan para asociar los nuevos artículos de datos<br />

particulares a las bases de datos especializadas;<br />

Las funciones definidas usuario pueden ser funciones<br />

estándares o funciones agregadas; Los operadores definidos<br />

usuario pueden ser utilizados en expresiones como expresión<br />

estándar. Todos los artículos del catálogo se mantienen y<br />

están alcanzados vía el subsistema del catálogo,<br />

proporcionando una organización uniforme.<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitetura Total<br />

- Subsistemas del Servidor<br />

- Almacenamiento<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Arquitectura Del Encargado Del Almacenaje<br />

Proporciona el acceso uniforme del almacenaje de<br />

datos para el back-end. Solamente un módulo del<br />

almacenaje es activo en un servidor de PostgreSQL.<br />

La funcionalidad del módulo del almacenaje incluye:<br />

• Proporcione el almacenador intermediario compartido<br />

de la memoria y del disco,<br />

• Media el acceso al encargado del archivo del núcleo<br />

• Proporcione los semáforos y archive las cerraduras.<br />

El módulo del almacenaje es utilizado por reescritura<br />

y el módulo de la generación de la trayectoria y el<br />

módulo de comando.<br />

PostgreSQL utiliza no-sobreescribir a la gestión de la<br />

memoria externa,<br />

Noviembre<br />

2005


AGENDA<br />

Arquitectura del Manejador de Almacenamiento<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Almacenamiento<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Almacenamiento<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Arquitectura del Manejador de Almacenamiento<br />

•File Manager: proporciona la gerencia de<br />

archivos generales y de archivos protegidos grandes.<br />

•Buffer Manager: proporciona la gerencia de<br />

almacenadores intermediarios compartidos.<br />

•Page Manager: algoritmo DE LRU de las<br />

aplicaciones para manejar las páginas.<br />

•Lock Manager: proporciona cerradurasde tipo<br />

”lectura” y ”escritura” para alcanzar consistencia.<br />

• IPC: realiza la sincronización del escondrijo.<br />

•Disk Manager: proporciona el interfaz para<br />

storage/disk físico.<br />

Noviembre<br />

2005


AGENDA<br />

Flujo de Trabajo del Query<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Almacenamiento<br />

- Flujos de los Query<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Arquitectura Total<br />

- Subsistemas del Servidor<br />

- Almacenamiento<br />

- Flujos de los Query<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Flujo de Trabajo de los Querys<br />

1) la secuencia de la Query del SQL se convierte en<br />

un árbol del Query .<br />

2) El árbol del Query es modificado por el rewriter<br />

de la manera siguiente: el rewriter mira para arriba<br />

palabras claves en el árbol del Query y las amplía con<br />

la definición proporcionada. (El cuadro 5 flujo del trabajo de<br />

la Query )<br />

3) Las tomas del Planer en modificado analiza el<br />

árbol, genera todas las trayectorias posibles de la<br />

Query . El Planer después evalúa las trayectorias para<br />

determinar la trayectoria óptima y establece un plan<br />

del Query para esta trayectoria.<br />

4) El plan del Query se transforma en una serie de<br />

Query ejecutables del SQL y se procesa para obtener<br />

resultados.<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

2.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

A<br />

R<br />

Q<br />

U<br />

I<br />

T<br />

E<br />

C<br />

T<br />

U<br />

R<br />

A<br />

PostgreSQL<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Soporte Técnico<br />

Ventajas y Mejoras del PostgreSQL<br />

• Una ayuda mejor que los vendedores propietarios<br />

• Ahorro significativo en proveer de personal costes<br />

• Extensible<br />

• Plataforma cruzada<br />

• Diseñado para los ambientes del alto volumen<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

Características Técnicas<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Caracteristicas Tecnicas<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Compilador ACID Completo<br />

Compilador ANSI SQL<br />

Réplica (soluciones no comerciales y comerciales) que<br />

permite la duplicación de la base de datos principal a las<br />

máquinas auxiliares múltiples.<br />

Interfaces naturales para ODBC, JDBC, C, C++, PHP, Perl,<br />

TCL, ECPG, Python, and Ruby<br />

Soporte natural para SSL<br />

Lenguaje Procedimental<br />

Hot Stand-by (soluciones comerciales)<br />

Índices funcionales y parciales.<br />

Autentificación natural para Kerberos<br />

Soporte para consultas UNION, UNION ALL y EXCEPT<br />

Soporte para cargar Extenciones de tipo SHA1, MD5, XML y<br />

otras funcionalidades<br />

Noviembre<br />

2005


AGENDA<br />

Soporte Tecnico<br />

1. Introducción<br />

2.Arquitectura General<br />

2.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Caracteristicas Tecnicas<br />

- Soporte Técnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Pervasive proporciona una empresa para el soporte<br />

tecnico de los consumidores, proveiendo de usuarios y<br />

los reveladores un recurso profesional para<br />

proporcionar la localización de averías, dirección del<br />

revelador, y mitigación del riesgo. Deje que el<br />

Premiado equipo de soporte de Pervasive lo ayude a<br />

alcanzar el éxito con su Pervasive PostgreSQL.<br />

La ayuda es vendida por la suscripción anual.<br />

Las suscripciones de la ayuda se ofrecen en varios<br />

niveles dependiendo de la necesidad de usted, el<br />

cliente<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Caracteristicas Tecnicas<br />

- Soporte Tecnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

4.Conclusión<br />

Soporte Tecnico<br />

Postgres Silver Support<br />

El Soporte de Nivel Silver ayuda a los clientes a resolver problemas con su<br />

Servidor de Base de Datos Pervasive Postgres.<br />

El Nivel Silver se apunta en los clientes que utilizan la base de datos en<br />

ambientes no-críticos<br />

Disponible durante las horas de oficina estándares<br />

Our Price: $1,999.00<br />

Postgres Gold Support<br />

El Soporte de Nivel Gold se apunta en los clientes que utilizan la base de<br />

datos en ambientes críticos<br />

Disponible durante las horas de oficina estándares<br />

Our Price: $2,999.00<br />

Postgres Platinum Support<br />

Asi como el soporte Silver y Gold, el soporte Platino ayuda a un cliente a<br />

resolver cualquier problema con su servidor Perasive Postgres. Además de las<br />

características del soporte Silver y Gold, el soporte Platino agrega la cobertura<br />

24x7 para las ediciones críticas, proveiendo de clientes la confianza para<br />

desplegar Perasive Postgres en sus ambientes críticos de la misión.<br />

Our Price: $4,999.00<br />

Noviembre<br />

2005


1. Introducción<br />

AGENDA<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

- Historia<br />

Silver<br />

- Arquitectura<br />

- Ventajas y Mejoras<br />

- Caracteristicas Tecnicas<br />

- Soporte Tecnico<br />

2.Arquitectura <strong>Oracle</strong><br />

3.Arquitectura Mysql<br />

Gold<br />

Niveles<br />

Soporte Tecnico<br />

Soporte para Usuarios Terminales<br />

•Contrato de Soporte Tecnico por 12-meses<br />

•Dos contactos nombrados (es decir su organización puede nombrar a 2<br />

empleados en su sitio de la compañía que se autoricen a entrar en contacto con<br />

Peracive para la ayuda.<br />

•Tiempos de reacción máximos sobre horas de oficina: 6 (crítico) y 24 (no<br />

crítico)<br />

•Contrato de Soporte Tecnico por 12-meses<br />

•5 Contactos Certificados<br />

•Tiempos de reacción máximos sobre horas de oficina: 2 (crítico) y 12 (no<br />

crítico)<br />

4.Conclusión<br />

Platinum<br />

•Contrato de Soporte Tecnico por 12-meses<br />

•10 Contactos Certificados<br />

•Acceso Directo al Backline<br />

•soporte 24/7 para las ediciones críticas sin un solo punto de la falta con 24/7<br />

servicio que envía (6 niveles de escalada durante no horas de oficina)<br />

•Tiempos de reacción máximos sobre horas de oficina: 1 (crítico) y 6 (no<br />

crítico)<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

INTRODUCCION<br />

Todo el mundo puede conducir un automóvil, sin<br />

necesidad de conocer cómo funciona un motor de<br />

combustión interna y todos los subsistemas asociados a<br />

él. Pero hay ciertos conceptos como aprovechamiento<br />

de la potencia, compresión, endurecimiento de la<br />

suspensión, motricidad, etc., le serán ajenos y nunca<br />

podrá sacar lo mejor del automóvil. Y si tiene algún<br />

problema se quedará tirado en la carretera.<br />

A continuación se abordara la arquitectura del<br />

SGBD <strong>Oracle</strong> y da una visión lo suficientemente<br />

profunda del mismo como para que podamos entender<br />

cómo funciona.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura<br />

- Bases de Datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

Historia<br />

<strong>Oracle</strong> surge a finales de los 70 bajo el nombre de<br />

Relational Software a partir de un estudio sobre SGBD<br />

de George Koch.<br />

Computer World definió este estudio como uno de<br />

los más completos jamás escritos sobre bases de datos.<br />

Este artículo incluía una comparativa de productos que<br />

elegía a Relational Software como el más completo<br />

desde el punto de vista técnico.<br />

Esto se debía a que usaba la filosofía de las bases de<br />

datos relacionales, algo que por aquella época era<br />

todavía desconocido.<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

ORACLE<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de Datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

5.Arquitectura Mysql<br />

<strong>Oracle</strong> es un sistema de administración de base de datos<br />

(o RDBMS), fabricado por <strong>Oracle</strong> Corporation.<br />

Se considera a <strong>Oracle</strong> como uno de los sistemas de bases<br />

de datos más completos, destacando su:<br />

Soporte de transacciones.<br />

Estabilidad.<br />

Escalabilidad.<br />

Es multiplataforma.<br />

Su mayor defecto es su enorme precio, que es de varios<br />

miles de euros (según versiones y licencias). Otro aspecto que<br />

ha sido criticado por algunos especialistas es la seguridad de<br />

la plataforma, y las políticas de suministro de parches de<br />

seguridad<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

5.Arquitectura Mysql<br />

ARQUITECTURA ORACLE<br />

Cada servidor de <strong>Oracle</strong> está constituido por una<br />

BD y una instancia.<br />

Estructura lógica: compuesta por tablespaces y un<br />

conjunto de objetos (tablas,vistas,índices...).<br />

Estructura física: tres tipos de ficheros:<br />

ficheros de datos,<br />

ficheros de rehacer<br />

ficheros de control.<br />

Una instancia es el conjunto de estructuras de<br />

memoria (SGA) y procesos:<br />

Procesos de usuario: Ejecutan el código de una<br />

aplicación.<br />

Procesos de <strong>Oracle</strong>: Atienden a los procesos de<br />

usuario y realizan el mantenimiento de la BD.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

BASES DE DATOS<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

Una Base de Datos <strong>Oracle</strong> está almacenada<br />

físicamente en ficheros, y la correspondencia entre<br />

los ficheros y las tablas es posible gracias a las<br />

estructuras internas de la BD, que permiten diferentes<br />

tipos de datos estén almacenados, pero físicamente<br />

separados.<br />

Está división lógica se hace gracias a los espacios<br />

de tablas, tablespaces.<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

5.Arquitectura Mysql<br />

ESPACIOS DE TABLAS<br />

Cada BD tiene al menos uno (SYSTEM)<br />

Los espacios de tablas se utilizan para mantener<br />

juntos los datos de usuarios o de aplicaciones para<br />

facilitar su mantenimiento o mejorar las prestaciones<br />

del sistema.<br />

De esta manera, cuando se crea una tabla se debe<br />

indicar el espacio de tablas al que se destina.<br />

Este espacio de tablas es el que contiene el<br />

diccionario de datos, por lo que conviene reservarlo<br />

para el uso del servidor, y asignar las tablas de usuario<br />

a otro.<br />

Lo razonable y aconsejable es que cada<br />

aplicación tenga su propio espacio de tablas.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

Hay varias razones que justifican que este modo de<br />

organización de las tablas esten en espacios de tablas:<br />

Un espacio de tablas puede quedarse offline debido<br />

a un fallo de disco, permitiendo que el SGBD continúe<br />

funcionando con el resto.<br />

Permiten distribuir a nivel lógico/físico los distintos<br />

objetos de las aplicaciones.<br />

Son una unidad lógica de almacenamiento, pueden<br />

usarse para aislar completamente los datos de<br />

diferentes aplicaciones.<br />

<strong>Oracle</strong> permite realizar operaciones de<br />

backup/recovery a nivel de espacio de tabla mientras la<br />

BD sigue funcionando.<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

Si este espació de tabla inicial se ha quedado<br />

pequeño <strong>Oracle</strong> puede gestionar el crecimiento<br />

dinámico de los ficheros sobre los que se asientan los<br />

espacios de tablas.<br />

Los parámetros de crecimiento del tamaño de los<br />

espacios de tablas se especifican en la creación de los<br />

mismos.<br />

Dentro de cada espacio de tabla se pueden<br />

almacenar objetos de distinta naturaleza: tablas,<br />

índices, etc. Pero no se pueden mezclar así no más.<br />

Un segmento está constituido por un conjunto de<br />

extensiones, que no son más que grupos de bloques de<br />

disco ORACLE contiguos. Cuando se borra un<br />

segmento, el espacio es devuelto al espacio de tabla.<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

Todos los datos de la BD están almacenados en<br />

segmentos. Y existen 5 tipos de segmentos:<br />

de datos<br />

de índices: permiten un acceso rápido a los datos<br />

dependiendo de la cantidad de los mismos<br />

de rollback: son objetos internos de la BD que<br />

permiten efectuar la restauración de las transacciones<br />

no validadas asegurando la consistencia de la BD.<br />

temporales<br />

de bootstrap: Se crea en SYSTEM y contiene<br />

definiciones del diccionario para sus tablas, que se<br />

cargan al abrir la BD. No requiere ninguna acción por<br />

parte del DBA (Administrador de la BD)<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

- Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

FICHEROS<br />

Cada espacio de tablas se compone de uno o más<br />

ficheros en disco. Un fichero puede pertenecer sólo a<br />

un espacio de tablas.<br />

INSTANCIAS<br />

Una instancia de BD es el conjunto de estructuras<br />

de memoria y de procesos que acceden a los ficheros<br />

de datos.<br />

Los parámetros que determinan el tamaño y<br />

composición de una instancia están almacenados en un<br />

fichero llamado init.ora. Este fichero es leido durante<br />

el arranque de la BD y puede ser modificado por el<br />

DBA.<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

5.Arquitectura Mysql<br />

Estructuras Internas de la BD<br />

Tablas, Columnas y Filas<br />

Los datos son almacenados en la BD utilizando<br />

tablas. Registros y Atributos<br />

Las tablas propiedad del usuario SYS son llamadas<br />

tablas del diccionario de datos. Proveen el catálogo<br />

del sistema que permite que la BD se gestione a sí<br />

misma.<br />

Restricciones de Tablas<br />

-Clave primaria (PRIMARY KEY)<br />

-Valor nulo no admitido (NOT NULL)<br />

-Valor por omisión (DEFAULT).<br />

-Clave ajena (FOREIGN KEY).<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Usuarios<br />

Una cuenta de usuario no es una estructura física de la<br />

BD, pero está relacionada con los objetos de la BD: los<br />

usuarios poseen los objetos de la BD. Existen dos usuarios<br />

especiales: SYS y SYSTEM.<br />

Índices<br />

Un índice es una estructura de la BD utilizada para<br />

agilizar el acceso a una fila de una tabla. Los índices se crean<br />

automáticamente cuando se define una restricción UNIQUE<br />

o PRIMARY KEY.<br />

Vistas<br />

-Se define como una consulta y es tratada como una tabla.<br />

-Una vista no almacena datos, sólo se almacena la<br />

consulta que la define.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Procedimientos y Funciones<br />

Un procedimiento es un bloque de código PL/SQL,<br />

que se almacena en el diccionario de datos y que es<br />

llamado por las aplicaciones. Se pueden utilizar para<br />

implementar seguridad, no dando acceso directamente<br />

a determinadas tablas.<br />

Paquetes<br />

Se utilizan para agrupar procedimientos y<br />

funciones. Los elementos dentro de los paquetes<br />

pueden ser públicos o privados.<br />

Disparadores<br />

Se pueden utilizar para mejorar y reforzar la<br />

integridad y la seguridad de la BD.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Privilegios y Roles<br />

Ejemplos de privilegios son INSERT, SELECT,<br />

UPDATE, EXECUTE, etc. Los privilegios se pueden<br />

otorgar a un rol, y los roles pueden ser otorgados a<br />

múltiples usuarios.<br />

Segmentos, Extensiones y Bloques<br />

Los segmentos son los equivalentes físicos de los<br />

objetos que almacenan datos. Un segmento está<br />

constituido por secciones llamadas extensiones, que<br />

son conjuntos contiguos de bloques <strong>Oracle</strong><br />

Segmento de Rollback<br />

<strong>Oracle</strong> debe tener un mecanismo para reconstruir la<br />

imágen previa a una transacción incompleta.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

5.Arquitectura Mysql<br />

Estructuras de Memoria Internas<br />

<strong>Oracle</strong> mantiene dos estructuras principales de<br />

memoria: el Área Global de Programa (Program<br />

Global Area), PGA; y el Área Global del Sistema,<br />

(System Global Area) SGA.<br />

El PGA es la zona de memoria de cada proceso<br />

<strong>Oracle</strong>. No está compartida y contiene datos e<br />

información de control de un único proceso.<br />

El SGA es la zona de memoria en la que la BD<br />

<strong>Oracle</strong> guarda información sobre su estado. Esta<br />

estructura de memoria está disponible para todos los<br />

procesos, por eso se dice que está compartida.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

5.Arquitectura Mysql<br />

Área Global del Sistema, SGA<br />

Buffers de BD, Database Buffer Cache<br />

Es el caché que almacena los bloques de datos<br />

leidos, tales como tablas, índices y clusters. Los<br />

bloques modificados se llamas bloques sucios.<br />

Buffer Redo Log<br />

Los registros Redo describen los cámbios<br />

realizados en la BD y son escritos en los ficheros redo<br />

log para que puedan ser utilizados en las operaciones<br />

de recuperación de la BD. Pero antes de ser escritos en<br />

los ficheros redo log son escritos en un caché de la<br />

SGA llamado redo log buffer.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

5.Arquitectura Mysql<br />

Área de SQL Compartido, Shared SQL Pool<br />

En esta zona se encuentran las sentencias SQL que<br />

han sido analizadas. El analisis sintáctico (error de<br />

escritura en los queries) de las sentencias SQL lleva su<br />

tiempo y <strong>Oracle</strong> mantiene las estructuras asociadas a<br />

cada sentencia SQL analizada durante el tiempo que<br />

pueda para ver si puede reutilizarlas (que quiere decir<br />

esto si ya las tiene en memoria no hace falta buscar<br />

dicha sentencia si no reutilizar la que esta en la zona de<br />

SQL compartido). Antes de analizar una sentencia<br />

SQL, <strong>Oracle</strong> mira a ver si encuentra otra sentencia<br />

exactamente igual en la zona de SQL compartido.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

Área Global de Programa<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

El Program Global Area es un área de memoria<br />

utilizada por un proceso <strong>Oracle</strong>. Esta zona de memoria<br />

no se puede compartir.<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

- Estructuras de Proc<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Estructuras de Proceso<br />

El servidor se vale de una serie de procesos que son<br />

el enlace entre las estructuras físicas y de memoria,<br />

continuación se describen cada proceso y el papel que<br />

juega en la gestión de la BD.<br />

Noviembre<br />

2005


AGENDA<br />

Los Procesos que gestionan los recursos de la BD :<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

- Estructuras de Proc<br />

5.Arquitectura Mysql<br />

6.Conclusión<br />

Escritor de la BD (DBWR).<br />

Escritor de registros (LGWR).<br />

Punto de control (CKPT).<br />

Supervisor del sistema (SMON).<br />

Supervisor del proceso (PMON).<br />

Archivador (ARCH).<br />

Recuperador (RECO).<br />

Bloqueo (LCK).<br />

Despachador (Dnnn).<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

Estructuras Externas<br />

Por estructuras externas se entienden los ficheros<br />

que utiliza el servidor de BD. Estos ficheros guardan<br />

información tanto de los datos almacenados en la BD<br />

como la necesaria para gobernar la propia BD.<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

- Estructuras de Proces<br />

- Estructuras Externas<br />

Ficheros de la BD<br />

En estos ficheros reside la información de la BD<br />

Ficheros redo log<br />

En ellos se graba toda operación que se efectue en<br />

la BD y sirven de salvaguarda de la misma<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

Ficheros de control<br />

Mantienen la información física de todos los<br />

ficheros que forman la BD, con su camino incluido; así<br />

como el estado actual de la BD.<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Estructuras Internas<br />

- Estructuras de memoria<br />

Internas<br />

- Estructuras de Proces<br />

- Estructuras Externas<br />

El Fichero INIT.ORA<br />

<strong>Oracle</strong> provee de un fichero de parámetros de<br />

inicialización llamado init.ora. Este fichero contiene<br />

los parámetros del sistema <strong>Oracle</strong> y debe ser utilizado<br />

por el DBA para configurar el SGDB y adecuarlo a<br />

una determinada explotación.<br />

Noviembre<br />

2005


Noviembre<br />

2005


AGENDA<br />

REQUERIMIENTOS DEL SISTEMA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

5.Arquitectura Mysql<br />

Estacion de Trabajo:<br />

Procesador Pentium 166 MHz o Superior<br />

Minimo 128 Mb RAM*, 1 Gb Disco Duro<br />

Entre 298 y 587 Mb disponible de espacio en disco,<br />

dependiendo de la opcion que escoja<br />

Sistema Operativo: Windows NT 4.0, Windows 2000,<br />

Windows98 or Windows95<br />

Para una cuenta de Servidor:<br />

Minimo 64 Mb RAM, de los cuales 32 Mb estarán<br />

disponibles para el System Global Area (SGA)<br />

Aproximadamente 140 Mb en el SYSTEM tablespace para<br />

los paquetes del repositorio, procedimeintos y vistas<br />

entre 20 y 325 Mb en otras tablespaces, para los datos del<br />

repositorio<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

LICENCIA ORACLE<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

-En el Mundo<br />

5.Arquitectura Mysql<br />

Licencia <strong>Oracle</strong> para estudiantes por 5.000<br />

pesetas<br />

“Por el dinero que un joven se gasta en un fin de<br />

semana, alrededor de 5.000 pesetas, ofrecemos a los<br />

universitarios españoles la posibilidad de adquirir la<br />

licencia de su base de datos y de las herramientas de<br />

desarrollo” ésta es la iniciativa de <strong>Oracle</strong> para los<br />

estudiantes que deseen obtener un CD-ROM con la<br />

base de datos Personal <strong>Oracle</strong>7 y las herramientas de<br />

desarrollo <strong>Oracle</strong> Developer/2000.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3.PostgreSQL<br />

4.Arquitectura <strong>Oracle</strong><br />

-Historia<br />

- <strong>Oracle</strong><br />

- Arquitectura <strong>Oracle</strong><br />

- Bases de datos <strong>Oracle</strong><br />

- Estructura de la BD<br />

-Arquitectura<br />

- Requerimientos<br />

- Licencia<br />

- En el Mundo<br />

5.Arquitectura Mysql<br />

ORACLE EN EL MUNDO<br />

Esta compañía se ubicó en 1995 en el segundo lugar como<br />

compañía más admirada de software y servicios, situándose<br />

Microsoft en la primera posición.<br />

A lo largo de los últimos diez años, la compañía ha<br />

experimentado un crecimiento sostenido, con una media de<br />

crecimiento anual del orden del 20 al 30%.<br />

En lo que respecta a las ganancias, y durante su último año<br />

fiscal, <strong>Oracle</strong> osciló el 50%, posicionándose por encima de<br />

Intel, Motorola, Microsoft, HP, Apple, Sun, IBM y Novell.<br />

Una de las especialidades de esta compañía de software,<br />

es la creación de los sistemas de facturación para grandes<br />

volúmenes de información, tales como los usados por las<br />

compañías telefónicas, de gas, de electricidad, etc., para la<br />

cobranza de sus servicios. Entre los próximos proyectos de<br />

esta compañía, se destaca la reestructuración del Banco de<br />

Previsión Social junto con la compañía IBM.<br />

6.Conclusión<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

<strong>MySQL</strong><br />

Inicialmente, <strong>MySQL</strong> carecía de elementos<br />

considerados esenciales en las bases de datos, tales<br />

como seguridad, integridad, etc. A pesar e ello atajo a<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

los desarrolladores web por su somplicidad.<br />

La licencia GPL de <strong>MySQL</strong> obliga a distribuir<br />

cualquier producto derivado bajo esa misma licencia.<br />

Si un desarrollador desea incorporar <strong>MySQL</strong> en su<br />

producto pero no desea distribuirlo bajo licencia GPL,<br />

puede adquirir la licencia comercial de <strong>MySQL</strong> que le<br />

permite hacer justamente eso.<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

<strong>MySQL</strong><br />

Capa de Aplicación:<br />

La capa de aplicacion de <strong>MySQL</strong> es donde los<br />

clientes y los usuarios obran recíprocamente con el<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

<strong>MySQL</strong> RDBMS. Hay tres componentes en esta capa<br />

como puede ser visto en el diagrama acodado de la<br />

arquitectura de <strong>MySQL</strong> en el cuadro 3. Estos<br />

componentes ilustran las diversas clases de usuarios<br />

que puedan obrar recíprocamente con el <strong>MySQL</strong><br />

RDBMS, que son los administradores, los clientes y<br />

los usuarios de la pregunta. Los administradores<br />

utilizan el interfaz y las utilidades administrativos<br />

Noviembre<br />

2005


AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Capa Lógica:<br />

Fue encontrado que <strong>MySQL</strong> tiene de hecho una<br />

arquitectura lógica que sea virtualmente idéntica a la que esta'<br />

representada en el cuadro 2. La sección siguiente detalla estos<br />

Es Por la el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

subsistemas y las interacciones dentro de ellas.<br />

Procesador QUERY<br />

La mayoría extensa de interacciones en el sistema ocurre<br />

cuando un usuario desea visión o manipular los datos<br />

subyacentes en el almacenaje .<br />

Precompiler Encajado de DML<br />

Cuando una petición se recibe de un cliente en la capa de<br />

uso, es la responsabilidad del precompiler encajado de DML<br />

(lengua de manipulación de datos) extraer las declaraciones<br />

relevantes del SQL encajadas en los comandos del API del<br />

cliente, o traducir al cliente ordena en las declaraciones<br />

correspondientes del SQL.<br />

Noviembre<br />

2005


AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Recopilador de DDL<br />

Las peticiones de tener acceso a las bases de datos de <strong>MySQL</strong><br />

recibidas de un administrador son procesadas por el recopilador de<br />

DDL (idioma de definición de datos). El recopilador de DDL compila<br />

los comandos (que son declaraciones del SQL) de obrar<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

recíprocamente directamente con la base de datos. El administrador y<br />

las utilidades administrativas no exponen un interfaz, y por lo tanto se<br />

ejecutan directamente al servidor de <strong>MySQL</strong>. Por lo tanto, el<br />

precompiler encajado de DML no lo procesa, y éste explica la<br />

necesidad de un recopilador de DDL.<br />

Programa de análisis de Query<br />

El paso siguiente implica el analizar de la pregunta de <strong>MySQL</strong>. En<br />

esta etapa, el objetivo del programa de análisis de la pregunta es crear<br />

una estructura arborescente del análisis basada en la pregunta para<br />

poderla entender fácilmente por los otros componentes más adelante<br />

en la tubería.<br />

Noviembre<br />

2005


AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Preprocesador Query<br />

La pregunta analiza el árbol, según lo obtenido del programa de<br />

análisis de la pregunta, después es utilizada por el preprocesador de la<br />

pregunta comprobar el sintaxis del SQL y comprobar la semántica de<br />

la pregunta de <strong>MySQL</strong> para determinarse si la pregunta es válida.<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

Encargado De Security/Integration<br />

Una vez que la pregunta de <strong>MySQL</strong> se juzgue para ser válida, el<br />

servidor de <strong>MySQL</strong> necesita comprobar el Access Control List para<br />

saber si hay el cliente.<br />

Optimizador De Query<br />

<strong>MySQL</strong> utiliza el optimizador de la pregunta para ejecutar<br />

preguntas del SQL tan rápidamente como sea posible.<br />

Consecuentemente, ésta es la razón por la que el funcionamiento de<br />

<strong>MySQL</strong> es rápido comparado al otro RDBMS. La tarea del<br />

optimizador de la pregunta de <strong>MySQL</strong> es analizar la pregunta<br />

procesada para considerar si puede aprovecharse de algunas<br />

optimizaciones que permitan que procese la pregunta más rápidamente<br />

Noviembre<br />

2005


Es Es la mas la mas Es compatible la mas y compatible la y que la que mas mas y la programas que lleva programas lleva dentro dentro lleva dentro<br />

AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Motor De la Ejecución<br />

Una vez que el optimizador de la pregunta de <strong>MySQL</strong> haya<br />

optimizado la pregunta de <strong>MySQL</strong>, la pregunta se puede entonces<br />

ejecutar contra la base de datos. Esto es realizada por el motor de la<br />

ejecución de la pregunta, que después procede a ejecutar las<br />

declaraciones Es Por mas el momento compatible del no SQL dispone y la que y de mas tiene programas acceso compilados lleva a dentro la capa física de la base de<br />

datos de <strong>MySQL</strong><br />

Gestor de transacciones<br />

En fecha la versión <strong>MySQL</strong> 4.0.x, ayuda fue agregado para las<br />

transacciones en <strong>MySQL</strong>. Una transacción es una sola unidad del<br />

trabajo que tiene unos o más comandos de <strong>MySQL</strong> en ella. El gestor<br />

de transacciones es responsable de cerciorarse de que la transacción<br />

está registrada y ejecutada atómico.<br />

Encargado Del Control Concurrencia<br />

apropiados de datos en la base de datos del encargado de recurso.<br />

Una vez que se adquiera la cerradura, sólo las operaciones en una<br />

transacción pueden manipular los datos. Si una diversa transacción<br />

intenta manipular los mismos datos bloqueados, el encargado del<br />

concurrencia-control rechaza la petición hasta que la primera<br />

transacción es completa.<br />

Noviembre<br />

2005


AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Gerencia De Recuperación<br />

Encargado Del Registro<br />

El encargado del registro es responsable de registrar la operación<br />

de e mismo ejecutada en la base de datos. Hace tan almacenando el<br />

disco del entrar a través del encargado del almacenador intermediario.<br />

Es la mas compatible y la que mas programas lleva dentro<br />

Las operaciones en el registro se almacenan como comandos de<br />

<strong>MySQL</strong>. Así, en el caso de un fallo del sistema, ejecutar cada<br />

comando en el registro traerá detrás la base de datos a su estado<br />

estable pasado.<br />

Encargado De la Recuperación<br />

El encargado de la recuperación es responsable de restaurar la base<br />

de datos a su estado estable pasado. Hace tan usando el registro para<br />

la base de datos, que se adquiere del encargado del almacenador<br />

intermediario, y ejecutando cada operación en el registro. Desde los<br />

registros del encargado del registro todas las operaciones realizadas en<br />

la base de datos (del principio de la vida de la base de datos),<br />

ejecutando cada comando en el fichero de diario recuperarían la base<br />

de datos a su estado estable pasado.<br />

Noviembre<br />

2005


AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Gestión de la memoria externa<br />

El almacenaje se hace físicamente en un cierto tipo de almacenaje<br />

secundario, no obstante el acceso dinámico de este medio no es<br />

práctico. Así, todo el trabajo se hace a través de un número de<br />

almacenadores intermediarios. Los almacenadores intermediarios<br />

residen Es la mas en compatible memoria y la que principal mas programas y virtual lleva dentro y son manejados por un<br />

encargado del almacenador intermediario. Este encargado trabaja<br />

conjuntamente con dos otras entidades del encargado relacionadas con<br />

el almacenaje: el encargado de recurso y el encargado del almacenaje.<br />

Encargado Del Almacenaje<br />

En el nivel más bajo existe el encargado del almacenaje. El papel<br />

del encargado del almacenaje es mediar peticiones entre el encargado<br />

del almacenador intermediario y el almacenaje secundario. El<br />

encargado del almacenaje hace peticiones a través del regulador de<br />

disco subyacente (y a veces del sistema operativo) de recuperar datos<br />

del disco físico y los divulga de nuevo al encargado del almacenador<br />

intermediario.<br />

Noviembre<br />

2005


AGENDA<br />

<strong>MySQL</strong><br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Encargado Del Buffer<br />

El papel del encargado del almacenador intermediario es asignar<br />

los recursos de la memoria para el uso de la visión y los datos de la<br />

manipulación. El encargado del almacenador intermediario toma en<br />

peticiones ajustadas a formato y decide cuánto memoria a asignar por<br />

almacenador Es la mas compatible intermediario y la que mas y programas cuánta lleva almacenadores dentro intermediarios a<br />

asignar por la petición. Todas las peticiones se hacen del encargado de<br />

recurso.<br />

Encargado De Recurso<br />

El propósito del encargado de recurso es aceptar peticiones del<br />

motor de la ejecución, puesto les en peticiones de la tabla, y solicita las<br />

tablas del encargado del almacenador intermediario. El encargado de<br />

recurso recibe referencias a los datos dentro de la memoria del<br />

encargado del almacenador intermediario y vuelve estos datos a las<br />

capas superiores<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

-Ventajas<br />

- Desventajas<br />

6. Conclusión<br />

Ventanas de <strong>MySQL</strong>:<br />

- Por ser cliente servidor puedes crear respaldos sin tener que<br />

cerrar todas los objetos bloqueados por usuarios, si sera<br />

multiusuario ni le pienses mas.<br />

- Access no soporta tablas de mas de 4GB, <strong>MySQL</strong> hasta de 1<br />

Terabyte.<br />

Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

- Es multiplataforma.<br />

- Hay muchos mas ejemplos de acceso a la BD con JSP o Servlets<br />

en la red<br />

- Configuracion es simple.<br />

- Aprovecha la potencia de sistemas multiprocesador,gracias a su<br />

implementacion de multihilos,lo cual lo hace una base de datos muy<br />

veloz.<br />

- Soporta gran cantidad de tipos de datos para las columnas<br />

- Dispone de API’S de gran cantidad de lenguajes(php,<br />

c++,perl,java…)<br />

- Gran compatibilidad entre sistemas<br />

- Soporta hasta 32 indices por tabla<br />

- Gestion de usuarios y paswords,manteniendo un muy buen nivel<br />

de seguridad en los datos<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

- Ventajas<br />

- Desventajas<br />

6. Conclusión<br />

Desventanas de <strong>MySQL</strong>:<br />

- Los procedimientos almacenados fueron implementos<br />

hasta la version 5, la cual no se considera muy estable.<br />

- Si vas a ingrear datos desde la pagina tienes que<br />

chequear la integridad ya Mysql no lo Hace<br />

- Subconsultas: tal vez esta sea una de las caracteristicas<br />

que mas se echan de menos,aunque gran parte de las veces se<br />

necesitan,es posible de reescribirlas de manera que no sean<br />

necesarias.<br />

- No posee Triggers y procedures, se tiene pensado<br />

insertar procedures, mas no los triggers ya que reducen de<br />

forma significativa el rendimiento de la base de datos,<br />

incluso en aquelas consultas que no lo activan.<br />

Noviembre<br />

2005


Es Por la mas el momento compatible no dispone y la que de mas programas compilados<br />

lleva dentro<br />

Noviembre<br />

2005


AGENDA<br />

Cuadro Comparativo entre Arquitecturas OpenSource<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Cuadro Comparativo<br />

Versión<br />

Plataformas<br />

<strong>MySQL</strong><br />

5<br />

Linux, Solaris,<br />

HP-UX, MacOs,<br />

AIX, SCO, IRIX,<br />

FreeBSD,<br />

NetBSD,<br />

OpenBSD,<br />

Windows, BSDI,<br />

DEC, OS/2,<br />

Compaq Tru64,<br />

Novell NetWare.<br />

PostgreSQL<br />

8.x<br />

Linux, Solaris,<br />

HP-UX, AIX,<br />

IRIX, FreeBSD,<br />

OpenBSD,<br />

NetBSD,<br />

MacOs, SCO<br />

OpenServer,<br />

SCO Unixware,<br />

BeOS, BSDI,<br />

Compaq Tru64,<br />

QNX, Windows<br />

MaxDB<br />

7.5<br />

Linux,<br />

Solaris, HP-<br />

UX, AIX,<br />

Windows<br />

Firebird<br />

1.5.x<br />

Linux,<br />

Solaris,<br />

freeBSD,<br />

HP-UX,<br />

MacOS,<br />

Windows<br />

Ingres<br />

Ingres R3<br />

Linux, Solaris,<br />

HP-UX, AIX,<br />

Compaq Tru64,<br />

OpenVMS<br />

Windows<br />

7. Conclusión<br />

SQL<br />

Standard<br />

Medio<br />

Alto<br />

Medio<br />

Alto<br />

Medio<br />

Velocidad<br />

Media/A<br />

lta<br />

Media<br />

?<br />

Medi<br />

a/Alta<br />

Media/Alta<br />

Estabilidad<br />

Alta/Mu<br />

y Alta<br />

Alta<br />

Media<br />

/Alta<br />

Medi<br />

a<br />

?<br />

Integridad<br />

de Datos<br />

Sí<br />

Sí<br />

Sí<br />

Sí<br />

Sí<br />

Seguridad<br />

Alta<br />

Media/Alta<br />

Media<br />

?<br />

Alta<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

Soporte de<br />

vistas<br />

Soporte de<br />

Esquemas<br />

Soporte de<br />

procedimientos<br />

almacenados<br />

Sí (sin índices)*<br />

Sí*<br />

Sí (no permite<br />

algunas<br />

instrucciones)*<br />

Sí<br />

Sí<br />

Sí<br />

(pl/pgSQL,<br />

pl/Perl,<br />

pl/TCL,<br />

pl/Python,<br />

pl/sh)<br />

Sí<br />

Sí<br />

Sí<br />

Sí<br />

No<br />

Sí<br />

Sí<br />

Sí<br />

Sí<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Cuadro Comparativo<br />

7. Conclusión<br />

Interfaces de<br />

programación<br />

ODBC, JDBC,<br />

C/C++, .NET/Mono,<br />

ADO.Net, OLEDB,<br />

Delphi, Perl,<br />

Python, PHP,<br />

Embedded (C<br />

precompiler),<br />

Embeded in Java<br />

ODBC,<br />

JBDC,<br />

C/C++,<br />

Embeded<br />

SQL (in C),<br />

Tcl/Tk,<br />

Perl,<br />

Python,<br />

PHP, .NET<br />

ODBC<br />

,JDBC,<br />

C/C++,<br />

Precompile<br />

r<br />

(Embedded<br />

SQL), Perl,<br />

Python,<br />

PHP<br />

ODBC,<br />

JDBC,<br />

C/C++, PHP,<br />

Python, Perl,<br />

Kylix, Delphi,<br />

.NET/Mono,<br />

ADO<br />

ODBC, JDBC,<br />

C/C++, .NET,<br />

Perl, Python,<br />

PHP, Cobol,<br />

Fortran<br />

Tipos de tablas<br />

InnoDB (default),<br />

MYISAM,<br />

BerkeleyDB,<br />

MERGE, Derived<br />

1 Tipo<br />

EVT, tablas<br />

procedimen<br />

tales, vistas<br />

actualizable<br />

s y tablas<br />

derivadas<br />

?<br />

BTREE, ISAM,<br />

HASH, HEAP,<br />

HEAPSORT,<br />

PARTITION<br />

Balanceo de<br />

cargas<br />

Sí<br />

No<br />

No<br />

No<br />

Sí<br />

Tablespaces<br />

Sí<br />

Si<br />

No<br />

?<br />

No<br />

Clustering<br />

Sí<br />

No<br />

No<br />

No<br />

Sí<br />

Noviembre<br />

2005


AGENDA<br />

CONCLUSION<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

Podemos afirmar que los dbms en linea general<br />

tienen gran similitud en cuanto a su estructura, la<br />

difrencia viene en el manejo de los usuarios, las<br />

sentencias de codigo, la seguridad y la integidad de los<br />

datos, etc. Sin embargo con el mismo fin y en<br />

ocaciones con similitudes en los mecanismos de<br />

manejo de los mismos.<br />

En cuanto a la diferencia entre las bases de datos o<br />

los dbms comerciales o propietarios y los OpenSource,<br />

esta en el soporte ofrecido y en algunos casos en la<br />

calida, existe la tendencia a que el software propietario<br />

en cuanto a bases de datos se refiere tiende a satisfacer<br />

mas las necesidades de las empresas que requieren<br />

gran cantidad de almacenamiento, y las bases de datos<br />

OpenSource son la mas recomendadas para uso<br />

personal..<br />

Noviembre<br />

2005


AGENDA<br />

1. Introducción<br />

2.Arquitectura General<br />

3. Arquitectura Postgres<br />

4. Arquitectura <strong>Oracle</strong><br />

5. Arquitectura <strong>MySQL</strong><br />

6. Conclusión<br />

- Referencias<br />

Referencia<br />

• Soporte Tecnico<br />

http://www.pervasivepostgres.com/support/index.asp<br />

• PostgreSQL Oficial Site<br />

http://www.postgresql.org/about/awards<br />

<strong>MySQL</strong><br />

1. Atkinson, Leon. Core <strong>MySQL</strong>: The Serious Developer’s<br />

Guide. New Jersey: Prentice Hall Publishing,<br />

2002.<br />

2. Date, C.J. An Introduction to Database Systems. Menlo Park:<br />

Addison-Wesley Publishing Company, Inc,<br />

1986.<br />

3. Dubois, Paul. <strong>MySQL</strong>. New York: New Riders Publishing,<br />

2000.<br />

4. Frost, R.A. Database Management Systems. New York:<br />

Granada Technical Books, 1984.<br />

5. Garcia-Molina, Hector. Database System Implementation. New<br />

Jersey: Prentice Hall, 2000.<br />

6. Garlan, David. Shaw, Mary. "An Introduction to Software<br />

Architecture". Pittsburgh, PA USA: School of<br />

Computer Science, Carneigie Mellon University, 1994.<br />

Noviembre<br />

2005

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!