Download componentes software libre bases de datos

Document related concepts
Transcript
COMPONENTES SOFTWARE
LIBRE
BASES DE DATOS
Carlos Cano Escuder
[email protected]
ÍNDICE
Ø COMPONENTE DE SOFTWARE LIBRE
Ø Proyecto GNOME
Ø BONOBO
Ø BASES DE DATOS
ØMySQL
ØPostgres
Ø GNOME-DB
COMPONENTES SOFTWARE LIBRE
INTRODUCCIÓN
Ø Evolución lógica de arquitecturas previas.
Ø Reutilización del código.
Ø Cajas negras, cápsulas en forma de código objeto.
Ø Conocimiento de la interfaz de comunicación.
COMPONENTES SOFTWARE LIBRE
CARACTERÍSTICAS
Ø
Principal característica ? Menor complejidad de
las aplicaciones.
q Reduciendo la cantidad de información que un
programador necesita conocer sobre el sistema que
trabaja.
q Implementación de
definida.
una interfaz muy bien
COMPONENTES SOFTWARE LIBRE
EJEMPLOS
Los principales sistemas de componentes software son:
• Bonobo: GNOME (Con mayor repercusión)
• KParts: KDE
• UNO: Universal Network Objects
• XPCOM: Cross Platform Component Object Model;
• Modelo
de
Componentes
Multiplataforma, OpenDoc
de
Objetos
COMPONENTES SOFTWARE LIBRE
Acerca de GNOME
Ø El proyecto GNOME (acrónimo de GNU Network
Object Model Environment.
Ø Ejecución en sistemas operativos tipo UNIX.
Ø Ámbito: Desde pequeñas utilidades hasta potentes
sistemas.
COMPONENTES SOFTWARE LIBRE
Características Gnome:
• LIBRE
• AMIGABLE PARA EL USUARIO
• AMIGABLE PARA EL DESARROLLADOR
• INTERNACIONAL
• AVANZADO
• ACCESIBLE
COMPONENTES SOFTWARE LIBRE
Futuro de GNOME
Ø Ofrecer una plataforma de desarrollo completa y
moderna.
Ø Bonobo el sistema de componentes desarrollado para
el proyecto GNOME.
COMPONENTES SOFTWARE LIBRE
Acerca de Bonobo
Ø
Sistema de componentes del proyecto GNOME.
“Se eligió Bonobo como nombre para el sistema, pues los
bonobos son unos monos que se aparean varias veces al
día, lo que se ajustaba perfectamente a un sistema de
componentes en el que diferentes partes se insertan
dentro de otras. Desgraciadamente, estos animales están
ahora mismo en peligro de extinción”
COMPONENTES SOFTWARE LIBRE
Acerca de Bonobo
Bonobo es un sistema libre basado en software
libre, todo el código está completamente abierto y es
totalmente gratuito sin estar sujeto a ninguna licencia
propietaria.
Cualquier persona puede beneficiarse de este sistema,
programar con él, acceder al código, etc.…
COMPONENTES SOFTWARE LIBRE
Acerca de Bonobo
Ø
Bonobo está basado en CORBA. Mecanismo
mediante el cual los distintos componentes software
interactúan entre sí.
q Ejecución y utilización en máquinas heterogéneas.
q Permite tener componentes distribuidos en distintas
máquinas, distintos sistemas operativos y distintos
lenguaje de programación.
BASES DE DATOS
INTRODUCCIÓN
Ø Gestores de bases de datos Postgres y mySQL.
q Código abierto (OpenSource).
q Soportadas en entornos Linux.
Ø Mayor aceptación.
BASES DE DATOS
MySQL
Ø Servidor de bases de datos (SGBD).
Ø SQL (lenguaje estructurado de consulta de bases de
datos).
Ø MySQL es una implementación cliente/servidor.
CARACTERÍSTICAS:
Ø Alta velocidad.
Ø Consumo de muy pocos recursos, tanto de CPU como de
memoria.
BASES DE DATOS
MySQL
VENTAJAS:
Ø Mayor rendimiento. Mayor velocidad tanto al conectar con
el servidor como al servir selects y demás.
Ø Mejores utilidades de administración (backup, recuperación
de errores, etc.).
Ø Aunque se cuelgue, no suele perder información ni
corromper los datos.
Ø Mejor integración con PHP.
Ø No hay límites en el tamaño de los registros.
Ø Mejor control de acceso,
Ø MySQL se comporta mejor que Postgres a la hora de
modificar o añadir campos a una tabla "en caliente".
BASES DE DATOS
MySQL
INCONVENIENTES:
ØNo soporta transacciones, "roll-backs" ni subselects.
ØNo considera las claves ajenas. Ignora la integridad
referencial, dejándola en manos del programador de la
aplicación.
Ø Soporte de portales WEB.
Ø Deficiencias para realizar miles de transacciones en tiempo
real.
BASES DE DATOS
Postgres
Ø Administrador de bases de datos relaciónales.
Ø Control de concurrencia multi-versión.
Ø Soporta casi toda la sintaxis SQL.
CARACTERÍSTICAS:
Ø Mayor nivel que MySQL, a la altura de Oracle, Sybase o
Interbase.
Ø Esta basado en un sistema objeto-relación.
BASES DE DATOS
Postgres
VENTAJAS:
ØPor su arquitectura de diseño, escala muy bien al
aumentar el número de CPUs y la cantidad de RAM.
ØSoporta transacciones y desde la versión 7.0, claves
ajenas (con comprobaciones de integridad referencial).
ØTiene mejor soporte para triggers y procedimientos en
el servidor.
ØSoporta un subconjunto de SQL92 MAYOR que el que
soporta MySQL. Además, tiene ciertas características
orientadas a objetos.
BASES DE DATOS
Postgres
INCONVENIENTES:
ØConsume BASTANTES más recursos y carga más el
sistema.
ØLímite del tamaño de cada fila de las tablas a 8k!!! (se
puede ampliar a 32k recompilando, pero con un coste
añadido en el rendimiento).
ØEs de 2 a 3 veces más lenta que MySQL.
ØMenos funciones en PHP.
GNOME-DB
INTRODUCCIÓN
Ø Proyecto, dentro de GNOME.
Ø Arquitectura para el acceso a todo tipo de fuentes de
datos.
Ø Esta basada en CORBA.
Ø Especifican la interacción entre clientes de bases de
datos y proveedores de datos.
GNOME-DB
INTRODUCCIÓN
Ø Resuelve las diferencias entre las distintas fuentes de
datos.
Ø Consulta dinámica de las capacidades de la base de
datos.
q Diccionario de datos.
GNOME-DB
Gnome-DB y Bonobo
Ø GNOME-DB se basa
componentes de Bonobo .
en
la
arquitectura
Ø Acceso a multitud de bases de datos diferentes.
Ø Librerías para los desarrolladores.
Ø Aplicaciones distribuidas: Corba.
Ø Reutilización del código: GNOME-Office.
de
GNOME-DB
Partes de Gnome-DB
ØLibgda: Que implementa el acceso a los distintos
servidores de BBDD soportados (Oracle, MySQL,
PostgreSQL, InterBase, etc).
ØLibgnomedb: Que es una librería de "widgets"
orientados a bases de datos, como por ejemplo, rejillas
de datos, listas, cajas de texto, etc.
ØGNOME-DB: Que es una aplicación, del estilo de la ya
conocida MS-Access, o de la menos conocida TOAD, que
ofrece un bonito y potente interfaz gráfico a todas las
funcionalidades de libgda/libgnomedb.
GNOME-DB
Funcionamiento:
ØGDA (GNU Data Access) Componente Bonobo para
acceso a los datos.
q Conjunto de interfaces CORBA.
Ø Servidor CORBA: Este implementara los interfaces
CORBA que permitirán el acceso desde los clientes GDA
a la fuente de datos.
Ø Clientes
CORBA.
GDA:
Cargan
los
diferentes
servidores
GNOME-DB
Ejemplo Funcionamiento
Fig. 1 Creación Fuente de Datos
GNOME-DB
Ejemplo Funcionamiento
Fig. 2 Creación Fuente de Datos
GNOME-DB
Utilización:
Varias aplicaciones hacen ya uso de estas librerías
para sus accesos a datos:
ØgASQL: Herramienta de administración de bases de
datos..
ØGNOME Office: Es una "suite" ofimática.
ØGlade: Diseñador de pantallas.
ØGNU Enterprise: Suministrando la infraestructura
necesaria para la informatización de cualquier empresa.
Referencias:
[1] www.gnome-db.org -> Página principal de proyecto
Gnome-DB.
[2] www.es.gnome.org -> Página del GNOME hispano, con
información en castellano del proyecto GNOME.
[3]www.opensources.com/es/ -> Página Web que contiene
documentos sobre Arquitectura de componentes libres
[4]www.barrapunto.com
-> Página con artículos de
actualidad referentes al mundo del software libre
[5] lucas.hispalinux.es -> Página con documentos sobre
linux, realizados por colaboradores de hispalinux
[6] www.mysql.com -> Página principal de MySQL en la
cual podemos encontrar referencias de la base de datos.
[7] www.postgresql.org -> Página que nos redirecciona a
mirrors de la página principal de PostgreSQL