Você está na página 1de 33

REPBLICA BOLIVARIANA DE VENEZUELA INSTITUTO UNIVERSITARIO DE TECNOLOGIA JUAN PABLO PEREZ ALFONZO I U T E P A L AMPLIACION PUERTO CABELLO

Autores: Jesus Arias


C.I24304302

Seccin:1451

Sistemas administradores de bases de datos


Surgi a la necesidad de contar con un sistema de administracin para controlar tanto los datos como los usuarios. Este sistema basado en un computador que maneja una base de datos o una coleccin de bases de datos es realizado con un sistema llamado DBMS (Database management system). El DBMS es un conjunto de aplicaciones de software para administrar bases de datos, que permite: Un fcil acceso a los datos. El acceso a la informacin por parte de mltiples usuarios. La manipulacin de los datos encontrados en la base de datos. El DBMS puede dividirse en tres subsistemas: El sistema de administracin de archivos: almacena informacin en un medio fsico. El DBMS interno: ubica la informacin en orden. El DBMS externo: representa la interfaz del usuario.

Evolucin de Base de Datos


Inicialmente, en los aos 40, los sistemas de archivos generados a travs de lenguajes de programacin no propietarios como Cobol y Fortran, permiten almacenar los datos a travs de archivos planos con funciones bsicas de lectura y escritura sobre ellos. En 1964, se conciben los primeros gestores de base de datos, por medio de los cuales se pretende dar un viraje a los sistemas de archivos, los cuales se limitan a la estructuracin del almacenamiento fsico de los datos. Con los DBMS se crea el concepto de Administracin de los datos, por medio de actividades integradas que permiten verlos fsicamente en un solo almacenamiento pero lgicamente se manipulan a travs de esquemas compuesto por estructuras donde se establecen vnculos de integridad, mtodos de acceso y organizacin fsica sobre los datos, permitiendo as obtener valores agregados de utilizacin tales como: manejo de usuarios. seguridad. atomicidad e independencia fsica y lgica de los datos. El primer gestor de bases de datos comercial es el Integrated Data Store (IDS), este se crea bajo el concepto del modelo de datos de Red; luego se desarrolla el Informacin Management System (IMS), sobre el concepto del modelo de datos jerrquico. Estos DBMSs eran accesados normalmente por lenguajes de programacin como cobol usando interfaces de bajo nivel haciendo que las tareas de creacin de aplicaciones y mantenimiento de los datos fuesen controlables, pero an complejas. A medida que evolucionaban los DBMS, los lenguajes de programacin tambin lo hacan. En 1967 surge el primer lenguaje de programacin orientado a objetos Simula, el cual fue propuesto para simulacin de actividades. En este los procedimientos podan ser asociados a un tipo para representar el comportamiento de una instancia, introduciendo as el concepto de clase. Simula soporta paralelismo, permitiendo muchas

entidades interactivas en una simulacin. Adems comparte objetos acoplando datos y procedimientos. En los aos 80 surgen varios productores de DBMS Relacionales (RDBMS) como Oracle, Informix, Ingres y DB2, adems de otros lenguajes orientados a objetos como el C++, Java o antes llamado Oak, Eiffel, y Smalltalk adoptando y mejorando el concepto de clase pero su desarrollo se hace independiente de los DBMSs. Comenzando los aos 80 se siente la necesidad de que los DBMS actuales manipulen objetos complejos y estructuras como las usadas en sistemas CAD y CASE, entre otras. A partir de esto se da inicio a dos grandes tendencias: los Object Relational Database Management System (ORDBMS) los cuales se proyectan como una extensin de los RDBMS hacia el paradigma OO, y los Object Oriented Database Management System (OODBMS) estaran disponibles para almacenar y manipular las clases, los objetos, la asociacin entre ellos y sus mtodos. As, finalizando los aos 80 se crean los OODBMSs por medio de productores como O2, ObjectDesign y Objectivity, entre otros. Pero realmente se puede decir que estos no se hicieron tan comerciales como los existentes RDBMS ya que el concepto de orientacin a objetos se segua manejando muy a nivel del lenguaje de programacin, sin que se trabajaran estructuras de almacenamiento orientadas a objetos dependientes de estos. As, en 1991 surge la Object Database Management Group (ODMG) el cual estandariza los OODBMSs a partir del ODMG-93 y luego en 1992 el comit ANSI X3H2 inicia un trabajo en SQL3, del cual surgen los DBMS objeto relacional ORDBMS. Este trabajo fue programado para finalizarse en 1995, pero an se sigue trabajando en este con un tiempo lmite de terminacin, en el ao 1999.

Esquema de un DBMS

Lenguajes del DBMS


En la estructura bsica de un sistema manejador de base de datos se enuncian dos lenguajes que permiten trabajar sobre la base de datos. Estos lenguajes estndar son: Data Definition language (DDL) o Lenguaje de Definicin de Datos: por medio de este el DBMS identifica las descripciones de los elementos de los esquemas, almacena la descripcin del esquema en el catlogo del DBMS y especifica el esquema conceptual e Store Definition language (SDL) o Lenguaje de definicin de almacenamiento: es utilizado por el DBMS para especificar el esquema interno que corresponde a la base de batos almacenada. View Definition language (VDL) o Lenguaje de Definicin de Vistas: es utilizado por el DBMS para especificar las vistas del usuario y sus correspondencias con el esquema conceptual. En las bases de batos relacionales, el SQL representa una combinacin de los anteriores. Data Manipulation language (DML) o Lenguaje de Manipulacin de Datos: permite la manipulacin de las operaciones de insercin, eliminacin y modificacin. Tipos de DML's: + De alto Nivel o No por procedimientos: SQL. + De bajo Nivel o por procedimientos.

Usuarios de un Sistema Manejador de Base de Datos


Personal del DBA Usuarios Espordicos Programadores de Aplicaciones Usuarios paramtricos

Transaccin
Es un conjunto de rdenes que se ejecutan formando una unidad de trabajo, es decir, en forma indivisible o atmica. Un SGBD se dice transaccional, si es capaz de mantener la integridad de los datos, haciendo que estas transacciones no puedan finalizar en un estado intermedio. Cuando por alguna causa el sistema debe cancelar la transaccin, empieza a deshacer las rdenes ejecutadas hasta dejar la base de datos en su estado inicial, como si la orden de la transaccin nunca se hubiese realizado.

Modelo relacional
Es el ms utilizado, ya que permite una mayor eficacia, flexibilidad y confianza en el tratamiento de los datos. La mayor parte de las bases de datos y sistemas de informacin actuales se basan en el modelo relacional ya que ofrece numerosas ventajas y rpido aprendizaje por parte de usuarios que no tienen conocimientos profundos sobre sistemas de bases de dados. En el modelo relacional se representa el mundo real mediante tablas relacionadas entre s por columnas comunes. Las bases de datos que pertenecen a esta categora se basan en el modelo relaciones, cuya estructura principal es la relacin, es decir, una tabla bidimensional compuesta por lneas y columnas. Cada lnea, que en terminologa relacional se llama tupla, representa una entidad que nosotros queremos memorizar en la base de datos. Las caractersticas de cada entidad estn definidas por las columnas de las relaciones, que se llaman atributos, entidades con caractersticas comunes, es decir, descritas por el mismo conjunto de atributos, formarn parte de la misma relacin.

Modelo en red
Permite la representacin de muchos a muchos, de tal forma que cualquier registro dentro de la base de datos puede tener varias ocurrencias superiores a l. El modelo de red evita redundancia en la informacin, a travs de la incorporacin de un tipo de registro denominado el conector. En el modelo en red se representa el mundo real mediante registros lgicos que representan a una entidad y que se relacionan entre s por medio de flechas.

Modelo jerrquico
Puede representar dos tipos de relaciones entre los datos: relaciones de uno a uno y relaciones de uno a muchos. Este modelo tiene forma de rbol invertido en el que una rama puede tener varios hijos, pero cada hijo slo puede tener un padre.

Modelos de Datos
Se definen como un conjunto de elementos y smbolos que permiten estandarizar y traducir anlisis a un lenguaje semntico y sistemtico que dispone de reglas de control y evaluacin del comportamiento del dato en el transcurso del tiempo, tanto en su almacenamiento como en su utilizacin. Estos modelos de datos, hacen posible que la lgica de un negocio pueda ser estructurada de forma tangible a travs de un esquema fsico que representa el almacenamiento de los datos bajo las reglas del negocio y de un sistema gestor de base de datos que permitir la persistencia de estos a travs del tiempo. Los Modelos de Datos, tambin llamados modelos lgicos, se han clasificado en dos grandes grupos debido al tratamiento de los datos: Basados en Objetos y basados en Registros. Estos dos grupos de modelos representan dos estados de la interpretacin de los requerimientos de usuario:

Basados en Objetos: un problema de la vida real maneja concepciones abstractas o concretas, tangibles o intangibles, a las cuales se les ha dado el nombre de "objetos", calificados a partir de un valor significativo dentro de los parmetros de una forma o estilo de vida; dichos objetos se modelan a travs de propuestas que fueron estructuradas para as poder estandarizar la forma de manipularlos. Dentro de estos modelos tenemos: + + + + Modelo Modelo Modelo Modelo Entidad Relacin (MER) Orientado a Objetos (MOO) Semntico Deductivo

Basados en Registros: Otra forma de tratar lgicamente la informacin suministrada por un sistema es a travs de los "Registros", originalmente concebidos por los sistemas de archivos, lo cual dio pie a la estructuracin de modelos lgicos tales como: + Modelo Relacional (MR) + Modelo de Red + Modelo Jerrquico

Sistemas Administradores (Gestores) de Bases de Datos


Una vez terminado el diseo lgico a travs de modelos basados en registros, se da inicio al diseo fsico de la base de datos. Para esto es muy importante conocer los Sistemas Administradores de Bases de Datos (DBMS) los cuales permiten almacenar y controlar los datos a la vez, por medio de lenguajes propios de estos. Diferentes DBMS se especializaron en la utilizacin de modelos de datos especficos como es el caso de los RDBMS que trabajan con el modelo relacional, los ORDBMS que trabaja con el modelo relacional extendido y algunos elementos del paradigma orientado a objetos, y por ltimo se encuentran los OODBMS que trabajan con el modelo orientado a objetos.

Algebra relacional
Es un conjunto de operaciones que describen paso a paso como computar una respuesta sobre las relaciones, tal y como stas son definidas en el modelo relacional, denominada de tipo procedimental, a diferencia del clculo relacional que es de tipo declarativo. Tambin describe el aspecto de la manipulacin de datos, en estas operaciones se usan como una representacin intermedia de una consulta a una base de datos y, debido a sus propiedades algebraicas, sirven para obtener una versin ms optimizada y eficiente de dicha consulta.

Archivo
Es un conjunto de bits almacenado en un dispositivo, identificado por un nombre y la descripcin de la carpeta o directorio que lo contiene. Los archivos informticos se llaman as porque son los equivalentes digitales de los archivos en tarjetas, papel o microfichas del entorno de oficina tradicional. Los archivos informticos facilitan una manera de organizar los recursos usados para almacenar permanentemente datos en un sistema informtico. En lo que concierne al sistema operativo, un archivo es, en la mayora de los casos, simplemente un flujo unidimensional de bits, que es tratado por el sistema operativo como una nica unidad lgica. Un archivo de datos informtico normalmente tiene un tamao, que generalmente se expresa en bytes; en todos los sistemas operativos modernos, el tamao puede ser cualquier nmero entero no negativo de bytes hasta un mximo dependiente del sistema.

Clasificacin de los archivos


Los elementos de un archivo pueden ser de cualquier tipo, simples o estructurados o segn su funcin. SEGN SU FUNCION Se define por: Archivos Permanentes: son aquellos cuyo registros sufren pocas o ninguna variacin a lo largo del tiempo, se dividen en: Constantes: estn formados por registros que contienen campos fijos y campos de baja frecuencia de variacin en el tiempo. De Situacin: son los que en cada momento contienen informacin actualizada. Histricos: contienen informacin acumulada a lo largo del tiempo de archivos que han sufridos procesos de actualizacin o bien acumulan datos de variacin peridica en el tiempo.

Archivos de Movimiento: son aquellos que se utilizan conjuntamente con los maestros y contienen algn campo comn en sus registros con aquellos, para el procesamiento de las modificaciones experimentado por los mismos. Archivo de Maniobra o Transitorio: son los archivos creados auxiliares creados durante la ejecucin del programa y borrados habitualmente al terminar el mismo. SEGN SUS ELEMENTOS. Los principales archivos de este tipo son: Archivo de Entrada: una coleccin de datos localizados en un dispositivo de entrada. Archivo de Salida: Una coleccin de informacin visualizada por la computadora. Archivo de Programa: un programa codificado en un lenguaje especifico y localizado o almacenado en un dispositivo de almacenamiento. Archivo de Texto: una coleccin de caracteres almacenados como una unidad en un dispositivo de almacenamiento.

Base de datos relacional


Es una base de datos que cumple con el modelo relacional, el cual es el modelo ms utilizado en la actualidad para implementar bases de datos ya planificadas. Permiten establecer interconexiones entre los datos que estn guardados en tablas y a travs de dichas conexiones relacionar los datos de ambas tablas, de ah proviene su nombre: "Modelo Relacional". Las bases de datos relacionales estn constituidas por una o ms tablas que contienen la informacin ordenada de una forma organizada. Cumplen las siguientes leyes bsicas: Generalmente, contendrn muchas tablas. Una tabla slo contiene un nmero fijo de campos. El nombre de los campos de una tabla es distinto. Cada registro de la tabla es nico. El orden de los registros y de los campos no est determinados. Para cada campo existe un conjunto de valores posible.

Diseo de las bases de datos relacionales


El primer paso para crear una base de datos, es planificar el tipo de informacin que se quiere almacenar en la misma, teniendo en cuenta dos aspectos: la informacin disponible y la informacin que necesitamos. La planificacin de la estructura de la base de datos, en particular de las tablas, es vital para la gestin efectiva de la misma. El diseo de la estructura de una tabla consiste en una descripcin de cada uno de los campos que componen el registro y los valores o datos que contendr cada uno de esos campos. Los campos son los distintos tipos de datos que componen la tabla, por ejemplo: nombre, apellido, domicilio. La definicin de un campo requiere: el nombre del campo, el tipo de campo, el ancho del campo, etc. Los registros constituyen la informacin que va contenida en los campos de la tabla, por ejemplo: el nombre del paciente, el apellido del paciente y la direccin de este. Generalmente los diferente tipos de campos que su pueden almacenar son los siguientes: Texto (caracteres), Numrico (nmeros), Fecha / Hora, Lgico (informaciones lgicas si/no, verdadero/falso, etc.), imgenes. En resumen, el principal aspecto a tener en cuenta durante el diseo de una tabla es determinar claramente los campos necesarios, definirlos en forma adecuada con un nombre especificando su tipo y su longitud.

Objetos de la Base de Datos


) Tablas: unidad donde crearemos el conjunto de datos de nuestra base de datos. Estos datos estarn ordenados en columnas verticales. AquI definiremos los campos y sus caracterIsticas. Ms adelante veremos qu es un campo. ) Consultas: aquI definiremos las preguntas que formularemos a la base de datos con el fin de extraer y presentar la informacion resultante de diferentes formas (pantalla, impresora...) Formulario: elemento en forma de ficha que permite la gestion de los datos de una forma ms comoda y visiblemente ms atractiva. Informe: permite preparar los registros de la base de datos de forma personalizada para imprimirlos. Macro: conjunto de instrucciones que se pueden almacenar para automatizar tareas repetitivas.

) ) )

) Modulo: programa o conjunto de instrucciones en lenguaje Visual Basic

Concepto Bsico de una Base de Datos


Los sistemas de base de datos se disean para manejar grandes cantidades de informacion. El manejo de los datos implica tanto la definicion de estructuras para el almacenamiento como la creacion de mecanismos para el manejo de la informacion. Adems, el sistema de base de datos debe de cuidar la seguridad de la informacion almacenada en la base de datos, previniendo caIdas del sistema o intentos de acceso no autorizados. Uno de los objetivos principales de una base de datos es proporcionar a los usuarios una vision abstracta de los datos. Es decir, el sistema oculta ciertos detalles relativos a la forma en que se almacenan y mantienen los datos. Esto se logra definiendo tres niveles de abstraccion en los que puede considerarse la base de datos: fIsico, conceptual y de vision. En el nivel fIsico se describe como se almacenan los datos en cuanto a detalles de estructuras de datos complejas del nivel ms bajo. En el nivel conceptual, que es el siguiente nivel ms alto de abstraccion, se describe cules son los datos reales que estn almacenados en la base de datos y qu relaciones existen entre los datos. El nivel de vision es ms alto, en el cual se describe solo una parte de la base de datos y se presentan vistas diferentes de la misma base de datos a los usuarios.

Multitarea
Es una caracterIstica de los sistemas operativos modernos. Permite que varios procesos sean ejecutados al mismo tiempo compartiendo uno o ms procesadores. En otras palabras son capaces de dar servicio a ms de un usuario a la vez, ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones remotas en una red de comunicaciones.

Multiusuario
Es un sistema operativo o programa que permite proveer servicio y procesamiento a mltiples usuarios. En contraposicion a los sistemas monousuario, que proveen servicio y procesamiento a un solo usuario, en la categorIa de multiusuario se encuentran todos los sistemas que cumplen simultneamente las necesidades de dos o ms usuarios, que comparten los mismos recursos. Actualmente este tipo de sistemas se emplean especialmente en redes, pero los primeros ejemplos de sistemas multiusuario fueron sistemas centralizados que se compartIan a travs del uso de mltiples dispositivos de interfaz humana. Los recursos que se comparten son por lo regular una combinacion de: Procesador. Memoria. Almacenamiento secundario (almacenaje en disco duro). Programas. Perifricos como impresoras, plotters, scanner, etc. De tal modo que los mltiples usuarios tienen la impresion de utilizar un ordenador y un sistema operativo unificado, que les estn dedicados por completo.

Multiproceso
Es conocido como el uso de mltiples procesos concurrentes en un sistema en lugar de un nico proceso en un instante determinado. Como la multitarea que permite a mltiples procesos compartir una nica CPU, mltiples CPUs pueden ser utilizados para ejecutar mltiples hilos dentro de un nico proceso. El multiproceso para tareas generales es, a menudo, bastante difIcil de conseguir debido a que puede haber varios programas manejando datos internos a la vez. Los programas tIpicamente se escriben asumiendo que sus datos son incorruptibles. Sin embargo, si otra copia del programa se ejecuta en otro procesador, las dos copias pueden interferir entre sI intentando ambas leer o escribir su estado al mismo tiempo. Para evitar este problema se usa una variedad de tcnicas de programacion incluyendo semforos y otras comprobaciones y bloqueos que permiten a una sola copia del programa cambiar de forma exclusiva ciertos valores.

Integridad Referencial
Es un sistema de reglas que utilizan la mayorIa de las bases de datos relacionales para asegurarse que los registros de tablas relacionadas son vlidos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad.

Redundancia
Es una propiedad de los mensajes, consistente en tener partes predictibles a partir del resto del mensaje y que por tanto en sI mismo no aportan nueva informacion o repiten parte de la informacion. En numerosas aplicaciones, la redundancia es una estrategia ampliamente usada para evitar malentendidos o errores de decodificacion. Por tanto, un dato se actualizar logicamente por el usuario de forma nica, y el sistema se preocupar de cambiar fIsicamente todos aquellos campos en los que el dato estuviese repetido, en caso de existir redundancia fIsica.

Inconsistencia
Las causas de inconsistencia en un sistema pueden ser accidentales o intencionales, como los programas y archivos son creados por diferentes personas a travs del tiempo, estos pueden tener diferentes formatos y escritos en diferentes lenguajes de programacion, la informacion puede estar duplicada en los diversos lugares.

Tupla
Es una secuencia ordenada de objetos, esto es, una lista con un nmero limitado de objetos. Las tuplas se emplean para describir objetos matemticos que tienen estructura, es decir que son capaces de ser descompuestos en un cierto nmero de componentes. Por ejemplo, un Grafo dirigido se puede definir como una tupla de (V, E) donde V es el conjunto de nodos y E es el subconjunto de V V que denota los vrtices del grafo.

Tabla
Se refiere al tipo de modelado de datos, donde se guardan los datos recogidos por un programa. Su estructura general se asemeja a la vista general de un programa de Hoja de clculo. Las tablas se componen de dos estructuras: Registro: es cada una de las filas en que se divide la tabla. Cada registro contiene datos de los mismos tipos que los dems registros. Ejemplo: en una tabla de nombres y direcciones, cada fila contendr un nombre y una direccion. Campo: es cada una de las columnas que forman la tabla. Contienen datos de tipo diferente a los de otros campos. En el ejemplo anterior, un campo contendr un tipo de datos nico, como una direccion, o un nmero de telfono, un nombre, etc.

Entidad
Es la representacion de un objeto o concepto del mundo real que se describe en una base de datos. Por ejemplo, nombres de entidades pueden ser: Alumno, Empleado, ArtIculo, etc. Cada entidad est constituida por uno o ms atributos. Por ejemplo, la entidad "Alumno" podrIa tener los atributos: nombre, apellido, ao de nacimiento, etc. En el modelo de entidad-relacion se emplean dos tipos de entidades: entidad fuerte y entidad dbil. Las entidades fuertes tienen atributos claves, en tanto las entidades dbiles no tienen atributos claves propios.

Campo
Es un espacio de almacenamiento para un dato en particular. En las bases de datos, un campo es la mInima unidad de informacion a la que se puede acceder; un campo o un conjunto de ellos forman un registro, donde pueden existir campos en blanco, siendo ste un error del sistema. Un campo puede ser: Campo genrico: Aquel campo que posee un dato nico para una repeticion de entidad. Puede servir para la bsqueda de una entidad en especIfico. Alfanumricos: Contiene cifras y letras. Presentan una longitud limitada (255 caracteres). Numricos: Existen de varios tipos principalmente como enteros y reales. Booleanos: Admite dos valores, "Verdadero" y "Falso" (True-False).

Atributos
Es una especificacion que define una propiedad de un Objeto, elemento o archivo. Donde puede referirse o establecer el valor especIfico para una instancia determinada de los mismos. Por ejemplo, se podrIa tener una entidad llamada "Alumno" que puede estar constituida por uno o ms atributos, que interesan para almacenarse en la base de datos. Los atributos pueden ser: nombre, apellido, ao de nacimiento, etc. En SQL un atributo es llamado columna.

Ventajas de Modelo Orientado a Archivo


) Fomenta la reutilizacion y extension del codigo. ) Permite crear sistemas ms complejos. ) Relacionar el sistema al mundo real. ) Facilita la creacion de programas visuales. ) Construccion de prototipos ) Agiliza el desarrollo de software ) Facilita el trabajo en equipo ) Facilita el mantenimiento del software

Desventajas de Modelo Orientado a Archivo


) Limitaciones para el programador. ) Tamao excesivo en las aplicaciones resultantes. ) Velocidad de ejecucion.

Ventajas de Modelo Orientado a Base de Datos


) Mayor capacidad de modelado ) Ampliabilidad ) Lenguaje de consulta ms expresivo. ) Adecuacion a las aplicaciones avanzadas de base de datos. ) Mayores prestaciones.

Desventajas de Modelo Orientado a Base de Datos


) Carencia de un modelo de datos universal. ) Carencia de experiencia. ) Carencia de estndares. ) Competencia. ) La optimizacion de consultas compromete la encapsulacion.

Bases de Datos Inteligentes


Se derivan de la integracion de la tecnologIa de bases de datos con tcnicas desarrolladas en el campo de la inteligencia artificial. Las bases de datos inteligentes se describen como una base de datos que contiene el conocimiento sobre el contenido de la informacion. Es un sistema de manejo de bases de datos el cual ejecuta la validacion y el proceso de la informacion a travs de programas de aplicacion tradicionales. El grupo de criterio de validacion puede ser guardado con cada campo de informacion, tanto puede ser los valores mInimos o mximos que pueden ser entrados o enlistados en las entradas posibles. Algunas bases de datos inteligentes pueden incluir reglas que pueden ser aplicadas a la informacion entrante o saliente. Mientras la base de datos est consciente de su contenido, puede responder efectivamente a las peticiones complejas de su usuario.

Lenguaje de Manipulacion de Datos


Es un lenguaje proporcionado por el sistema de gestion de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de consulta o manipulacion de los datos, organizados por el modelo de datos adecuado. El lenguaje de manipulacion de datos ms popular hoy dIa es SQL, usado para recuperar y manipular datos en una base de datos relacional. Otros ejemplos de DML son los usados por bases de datos IMS/DL1, CODASYL u otras.

Lenguaje de Definicion de Datos


Es un lenguaje proporcionado por el sistema de gestion de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de definicion de las estructuras que almacenarn los datos asI como de los procedimientos o funciones que permitan consultarlos. El lenguaje de programacion SQL, el ms difundido entre los gestores de bases de datos, admite las siguientes sentencias de definicion: CREATE, DROP y ALTER, cada una de las cuales se puede aplicar a las tablas, vistas, procedimientos almacenados y triggers de la base de datos. Otras que se incluyen dentro del DDL, pero que su existencia depende de la implementacion del estndar SQL que lleve a cabo el gestor de base de datos son GRANT y REVOKE, los cuales sirven para otorgar permisos o quitarlos, ya sea a usuarios especIficos o a un rol creado dentro de la base de datos.

Tipo de Usuario
Podemos definir a los usuarios como toda persona que tenga todo tipo de contacto con el sistema de base de datos desde que este se disea, elabora, termina y se usa. Los usuarios que accedan a una base de datos pueden clasificarse como: Programadores de aplicaciones: los profesionales en computacion que interactan con el sistema por medio de llamadas en lenguaje de manipulacion de datos (DML), las cuales estn incorporadas en un programa escrito en un lenguaje de programacion. Usuarios sofisticados: los usuarios sofisticados interactan con el sistema sin escribir programas. En cambio escriben sus preguntas en un lenguaje de consultas de base de datos. Usuarios especializados: algunos usuarios sofisticados escriben aplicaciones de base de datos especializadas que no encajan en el marco tradicional de procesamiento de datos. Usuarios ingenuos: los usuarios no sofisticados interactan con el sistema invocando a uno de los programas de aplicacion permanentes que se han escrito anteriormente en el sistema de base de datos, podemos mencionar al usuario ingenuo como el usuario final que utiliza el sistema de base de datos sin saber nada del diseo interno del mismo. Por ejemplo: un cajero.

Lenguaje de Definicion de Almacenamiento


La mayorIa de las bases de datos se almacenan en las llamadas memorias secundarias, especialmente discos duros, aunque, en principio, pueden emplearse tambin discos opticos, memorias flash, etc. Las razones por las cuales las bases de datos se almacenan en memorias secundarias son: En general, las bases de datos son demasiado grandes para entrar en la memoria primaria. La memoria secundaria suele ser ms barata que la memoria primaria. La memoria secundaria es ms til para el almacenamiento de datos permanente, puesto que la memoria primaria es voltil.

Lenguaje de Definicion de Vista


Es una base de datos es un resultado de una consulta SQL de una o varias tablas; tambin se le puede considerar una tabla virtual. Las vistas tienen la misma estructura que una tabla: filas y columnas. La nica diferencia es que solo se almacena de ellas la definicion, no los datos. Los datos que se recuperan mediante una consulta a una vista se presentarn igual que los de una tabla. De hecho, si no se sabe que se est trabajando con una vista, nada hace suponer que es asI. Al igual que sucede con una tabla, se pueden insertar, actualizar, borrar y seleccionar datos en una vista. Aunque siempre es posible seleccionar datos de una vista,

en algunas condiciones existen restricciones para realizar el resto de las operaciones sobre vistas. Una vista se especifica a travs de una expresion de consulta que la calcula y que puede realizarse sobre una o ms tablas. Sobre un conjunto de tablas relacionales se puede trabajar con un nmero cualquiera de vistas. La mayorIa de los SGBD soportan la creacion y manipulacion de vistas.

Cardinalidad
Es un conjunto de relaciones en el que participan dos o ms entidades, expresando cuantas entidades se relacionan con otras. Cada elemento de la entidad participa en la construccion del modelo Entidad - Relacion. La cardinalidad en un conjunto de relaciones de entidades se expresa de la siguiente forma: Uno a Uno (1:1): es una entidad de A se relaciona nicamente con una entidad en B y viceversa. Uno a varios (1:N): es una entidad en A se relaciona con cero o muchas entidades en B. Pero una entidad en B se relaciona con una nica entidad en A. Varios a Uno (N:1): es una entidad en A se relaciona exclusivamente con una entidad en B. Pero una entidad en B se puede relacionar con 0 o muchas entidades en A. Varios a Varios (N:M): es una entidad en A se puede relacionar con 0 o muchas entidades en B y viceversa.

Registro
Es un conjunto de campos que contienen los datos que pertenecen a una misma repeticion de entidad. Se le asigna automticamente un nmero consecutivo que en ocasiones es usado como Indice aunque lo normal y prctico es asignarle a cada registro un campo clave para su bsqueda. La estructura implIcita de un registro y el significado de los valores de sus campos exige que dicho registro sea entendido como una sucesion de datos, uno en cada columna de la tabla. La fila se interpreta entonces como una variable relacional compuesta por un conjunto de tuplas, cada una de las cuales consta de dos Items: el nombre de la columna relevante y el valor que esta fila provee para dicha columna.

Funciones de una base de datos


Una base de datos tIpica conlleva la existencia de tres tipos de usuario con relacion a su diseo, desarrollo y funcionalidad que son: El administrador de bases de datos (DBA): disea y mantiene la base de datos. El desarrollador de aplicaciones (programador): implementa las transacciones e interfaces. Los usuarios finales que consultan y editan la informacion de la base de datos mediante un programa desarrollado a su medida. Por lo tanto, podemos decir que el proposito de una base de datos es doble, pues tiene que responder a consultas sobre los datos que contiene, y ejecutar transacciones con la informacion. Adems debe permitir consultas que se formula como una expresion logica sobre la informacion y hace relaciones definidas en el esquema de la base de datos, el resultado es la identificacion de un subconjunto logico de la base de datos, es decir, una seleccion de registros que cumplen la condicion logica. Para llevar a cabo tareas, el administrador de bases de datos tiene a su disposicion la principal herramienta de una base de datos, que es el sistema gestor de bases de datos y a travs de ste se realizan todas las operaciones con los datos, de forma que al administrador de bases de datos no le preocupa la manera en que los datos se encuentran almacenados fIsicamente, pudindose concentrar en los aspectos conceptuales en cuanto a diseo, desarrollo y mantenimiento.

Arquitectura de una Base de Datos


Tiene como objetivo separar los programas de aplicacion de la base de datos para que el sistema sea til. Ya que muchos usuarios de sistemas de bases de datos no estn familiarizados con computadoras, los desarrolladores esconden la complejidad a los usuarios a travs de varios niveles de abstraccion para simplificar la interaccion de los usuarios con el sistema.
Por eso existen 3 diferentes niveles de abstraccion para simplificar la interaccion de los usuarios con el sistema:

Nivel interno: tiene un esquema que describe la estructura fIsica de almacenamiento de base de datos. Emplea un modelo fIsico de datos y los nicos datos que existen estn realmente en este nivel. Nivel conceptual: tiene un esquema que describe la estructura de toda la base de datos para una comunidad de usuarios. Oculta los detalles fIsicos de almacenamiento y trabaja con elementos logicos como entidades, atributos y relaciones. Nivel externo o de vistas: tiene varios esquemas que describe la vision que tiene de la base de datos a un grupo de usuarios, ocultando el resto.

Bases de datos distribuidas


Es un conjunto de mltiples bases de datos logicamente relacionadas las cuales se encuentran distribuidas en diferentes espacios logicos e interconectados por una red de comunicaciones. Dichas bases de datos distribuidas tienen la capacidad de realizar procesamientos autonomos, esto permite realizar operaciones locales o distribuidas. Un sistema de bases de datos distribuidos (SBDD) es un sistema en el cual mltiples sitios de bases de datos estn ligados por un sistema de comunicaciones de tal forma que, un usuario en cualquier sitio puede acceder los datos en cualquier parte de la red exactamente como si estos fueran accedidos de forma local. Un sistema distribuido de bases de datos se almacenan en varias computadoras. Los principales factores que distinguen un SBDD de un sistema centralizado son los siguientes: Hay mltiples computadores, llamados sitios o nodos. Estos sitios deben de estar comunicados por medio de algn tipo de red de comunicaciones para transmitir datos y ordenes entre los sitios.

Diferencia entre un dbms y una base de datos


La base de datos es una coleccion de archivos interrelacionados almacenados en conjunto sin redundancia y la dbms es un conjunto de numerosas rutinas de software interrelacionadas cada una de ellas es responsable de una determinada tarea.

Componentes de un sistema de base de datos


Un sistema de base de datos est compuesto por: ) ) ) ) Datos Equipos Programas Personas

Funciones de los componentes de una base de datos


Un sistema de base de datos es algo ms que simples datos o que un conjunto de datos en combinacin con unos programas de gestin. Un sistema de base de datos est formado por los siguientes componentes: ) Datos: las caracterIsticas ms importantes de la informacin en estos sistemas es que va a estar integrada y compartida. Integrada: puede considerarse como una unificacin de varios ficheros de datos, que son tratados como uno solo, y en el que se ha eliminado totalmente, o en parte, la redundancia de datos. Compartida: pueden compartirse entre varios usuarios distintos. Es posible que varios de estos usuarios accedan al mismo tiempo al mismo elemento de informacin. ) Equipo (Hardware): es un conjunto de dispositivos fIsicos utilizados para almacenar y procesar los datos. Tales son:
)

Ordenadores Volmenes de almacenamiento. Otros dispositivos

Programas (Software): un sistema de base de datos incluye dos tipos de programas: Software de propsito general: maneja todas las solicitudes de acceso a la base de datos formuladas por los usuarios y los programas de aplicacin.
Software de aplicacin: manipula la base de datos con el fin de llevar a cabo una funcin especIfica en la gestin de la empresa. Puede estar desarrollado en un lenguaje de programacin estndar, tal como COBOL o C, o en un lenguaje propio de los S.G.B.D denominado lenguajes de cuarta generacin.

) Personal: en un sistema de base de datos intervienen un nmero importante de usuarios, que podemos clasificar en tres grupos: Administrador de la base de dato: Son los encargados de disear la estructura de la base de datos y los responsables de que el sistema funcione correctamente. Programadores de aplicaciones: se encargan de desarrollar las aplicaciones que manejan datos de la base de datos. Usuarios finales: son personas que no tienen por qu tener conocimientos informticos y que pueden manipular los datos con la ayuda de las aplicaciones, o bien de lenguajes de consulta no procedimentales, tipo SQL, o bien, mediante herramientas basadas en sistemas de mens

Inconveniente de los sistemas de gestin de bases de datos


) Complejidad: son conjuntos de programas muy complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder sacar un buen partido de ellos. Tamao: son programas complejos y muy extensos que requieren una gran cantidad de espacio en disco y de memoria para trabajar de forma eficiente. Coste econmico del SGBD: el coste varIa dependiendo del entorno y de la funcionalidad que ofrece. Adems, hay que pagar una cuota anual de mantenimiento. Coste del equipamiento adicional: tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir ms espacio de almacenamiento. Adems, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una mquina ms grande o una mquina que se dedique solamente al SGBD. Todo esto har que la implantacin de un sistema de bases de datos sea ms cara. Coste de la conversin: en algunas ocasiones, el coste del SGBD y el coste del equipo informtico que sea necesario adquirir para su buen funcionamiento, es insignificante comparado al coste de convertir la aplicacin actual en un sistema de bases de datos. Este coste incluye el coste de ensear a la plantilla a utilizar estos sistemas y, probablemente, el coste del personal especializado para ayudar a realizar la conversin y poner en marcha el sistema. Este coste es una de las razones principales por las que algunas empresas y organizaciones se resisten a cambiar su sistema actual de ficheros por un sistema de bases de datos. Prestaciones: un sistema de ficheros est escrito para una aplicacin especIfica, por lo que sus prestaciones suelen ser muy buenas. Sin embargo, los SGBD estn escritos para ser ms generales y ser tiles en muchas aplicaciones, lo que puede hacer que algunas de ellas no sean tan rpidas como antes.

) )

) Vulnerable a los fallos: El hecho de que todo est centralizado en el SGBD hace que el sistema sea ms vulnerable ante los fallos que puedan producirse

Lenguaje de 3ra y 4 generacin


3ra Generacin Los lenguajes de programacin de tercera generacin son la gama para el mbito computacional donde se logra un alto rendimiento con respecto a lenguajes de generaciones anteriores. Dichos lenguajes son utilizados por especialistas, programadores, y otros para desarrollar programas y sistemas que requieren de un procedimiento especIfico para la computadora. Entre ellos se encuentran C, Fortran, Smalltalk, Ada, C++, C#, Cobol, Delphi, Java, etc. 4 Generacin Los lenguajes de programacin de cuarta generacin son los lenguajes en los cuales en lugar de escribir cmo deben obtenerse los resultados se especifican cuales resultados son los que se quiere obtener. Por ejemplo los lenguajes de consulta de base de datos, como el SQL, son considerados lenguajes de cuarta generacin.

Tendencias futuras
La explotacin efectiva de la informacin dar ventaja competitiva a las organizaciones. Las bases de datos orientadas a objetos empleadas para diseo y manufactura asistida por computadora CAD/CAM sern utilizados a un mismo nivel que las bases de datos relacionales de la actualidad. Los lenguajes de consulta (SQL) permitirn el uso del lenguaje natural para solicitar informacin de la Base de Datos, haciendo ms rpido y fcil su manejo.

Diferentes Estructuras de base de datos


Aunque las bases de datos pueden parecerse a simple vista como un archivo de informacin, en realidad consisten en varios archivos lgicamente interrelacionados pero fIsicamente diferentes. A continuacin las diferentes estructuras de base de datos: ) Modelo relacional de datos: en el nivel conceptual, el modelo relacional de datos est representado por una coleccin de relaciones almacenadas. Cada registro de tipo conceptual en un modelo relacional de datos se implanta como un archivo almacenado distinto. Sub-modelo de datos: cada uno consta de uno a ms escenarios para describir los datos requeridos por una aplicacin dada. Un escenario puede incluir datos de una o ms tablas de datos. Cada programa de aplicacin est provisto de un buffer donde el DBMS puede depositar los datos recuperados de la base para su procesamiento, o puede guardar temporalmente sus salidas antes de que el DBMS las escriba en la base de datos. Esquema de almacenamiento: en el nivel interno, cada tabla base se implanta como un archivo almacenado. Para las recuperaciones sobre las claves principal o

secundaria se pueden establecer uno o ms Indices para accesar un archivo almacenado. ) Sub-lenguaje de datos: es un lenguaje de manejo de datos para el sistema relacional, el lgebra relacional y clculo relacional, ambos lenguajes son "relacionalmente completos", esto es, cualquier relacin que pueda derivarse de una o ms tablas de datos, tambin se puede derivar con u solo comando del sublenguaje.

Base de datos orientada a objetos


Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del modelo de objetos: Encapsulacin, Herencia y Polimorfismo. En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definicin de la base de datos. La base de datos est constituida por objetos, que pueden ser de muy diversos tipos, y sobre los cuales se encuentran definidas unas operaciones. Las bases de datos orientadas a objetos pueden manejar informacin binaria como objetos multimedia de una forma eficiente Las bases de datos orientadas a objetos se disean para trabajar bien en conjuncin con lenguajes de programacin orientados a objetos como Java, C#, Visual Basic.NET y C++.

Panorama Actual de Base de Dato Orientado a Objetos


La interoperabilidad entre diferentes sistemas de informacin ha sido uno de los aspectos ms crIticos en la operacin cotidiana de muchas organizaciones. La necesidad de interoperabilidad surge a raIz de los cambios organizacionales que sufren las empresas modernas, alianzas estratgicas, compartimiento de informacin, y absorcin de pequeas y medianas industrias por grandes corporativos son slo algunos de los panoramas que provocan esta situacin. En la ltima dcada esta preocupacin se vio incrementada con la proliferacin de diferentes bases de datos con diferentes modelos de datos que corren en diferentes plataformas. En estos ambientes, los usuarios estn limitados en el acceso uniforme de la informacin. Los sistemas de bases de datos mltiples (tambin conocidos como bases de datos federadas o bases de datos heterogneas) son sistemas computacionales que hacen disponible la informacin desde diversas fuentes, y donde esas fuentes de informacin pueden ser heterogneas, distribuidas y autnomas.

Identidad de Objetos
Un sistema de BDOO provee una identidad nica a cada objeto independiente almacenado en la base de datos. Esta identidad nica suele implementarse con un identificador de objeto nico, generado por el sistema. El valor de un identificador de objeto no es visible para el usuario externo, sino que el sistema lo utiliza a nivel interno para identificar cada objeto de manera nica y para crear y manejar las referencias entre objetos. La principal propiedad que debe tener un OID es la de ser inmutable; es decir, el valor del OID para un objeto en particular nunca debe cambiar. Esto preserva la identidad del objeto del mundo real que se est presentando. Tambin es preferible que cada OID se utilice slo una vez; esto es aunque un objeto se elimine de la Base de datos, su OID no se deber asignar a otro objeto. Estas dos propiedades implican que el OID no debe depender del valor de ningn atributo del objeto, pues estos valores pueden cambiar. Tambin suele considerarse inapropiado basar el OID en la direccin fIsica del objeto en el almacenamiento, ya que una reorganizacin de los objetos de la base de datos podrIa cambiar los OID. Sin embargo, algunos sistemas sI usan la direccin fIsica como OID para aumentar la eficiencia de la obtencin de los objetos. Si la direccin fIsica cambia, puede colocarse un apuntador indirecto en la direccin anterior, dando la nueva ubicacin fIsica del objeto. Un sistema de BDOO debe contar con algn mecanismo para generar los OID con la propiedad de inmutabilidad.

Estructura de un Objeto
Un objeto puede considerarse como una especie de cpsula dividida en tres partes: Las relaciones: permiten que el objeto se inserte en la organizacin y estn formadas esencialmente por punteros a otros objetos. Las propiedades: distinguen un objeto determinado de los restantes que forman parte de la misma organizacin y tiene valores que dependen de la propiedad de que se trate. Las propiedades de un objeto pueden ser heredadas a sus descendientes en la organizacin. Los mtodos: son las operaciones que pueden realizarse sobre el objeto, que normalmente estarn incorporados en forma de programas que el objeto es capaz de ejecutar y que tambin pone a disposicin de sus descendientes a travs de la herencia.

Constructores de Objeto
En las BDOO, los valores de los objetos complejos se pueden construir a partir de otros objetos mediante ciertos constructores de tipos. Una forma de representar tales objetos es considerar a cada objeto como tripleta (i, c, v), donde i es un identificador de objeto nico, c es un constructor y v es el valor del objeto. Puede haber varios constructores, segn el modelo de datos y el sistema. Los tres constructores bsicos son: Constructores de tomos. Constructores de tuplas. Constructores de conjuntos.

Encapsulamiento de Operaciones
La estructura interna de los objetos debe estar oculta al usuario de un objeto, no necesita conocerla para interactuar con l. Los objetos se conciben como una cpsula cuyo interior est oculto y no puede ser alterado directamente desde el exterior. A la estructura interna de un objeto se la denomina implementacin y a la parte visible, la que se presenta al exterior, interfaz. La interfaz se define por sus atributos y operaciones. La implementacin de una operacin se conoce como mtodo. La implementacin de un atributo se realiza generalmente con variables de instancia. El encapsulamiento comporta las siguientes ventajas: La modificacin interna de un objeto para corregirlo o mejorarlo no afecta a sus usuarios. La dificultad inherente a la modificacin de la implementacin de un objeto sea independiente del tamao total del sistema. Esto permite que los sistemas evolucionen con mayor facilidad. Al elevar el nivel de abstraccin se disminuye el nivel de complejidad de un sistema. Es posible modelar sistemas de mayor tamao con menor esfuerzo. Constituye un mecanismo de integridad. La dispersin de un fallo a travs de todo el sistema es menor, puesto que al presentar una divisin entre interfaz e implementacin, los fallos internos de un objeto encuentran una barrera en el encapsulamiento antes de propagarse al resto del sistema. Permite la sustitucin de objetos con la misma interfaz y diferente implementacin. Esto permite modelar sistemas de mayor tamao con menor esfuerzo.

Metodos de Encapsulamiento
En programacin modular, y ms especIficamente en programacin orientada a objetos, se denomina encapsulamiento al ocultamiento del estado, es decir, de los datos miembro, de un objeto de manera que slo se puede cambiar mediante las operaciones definidas para ese objeto. Cada objeto est aislado del exterior, es un mdulo natural, y la aplicacin entera se reduce a un agregado o rompecabezas de objetos. El aislamiento protege a los datos asociados a un objeto contra su modificacin por quien no tenga derecho a acceder a ellos, eliminando efectos secundarios e interacciones. De esta forma el usuario de la clase puede obviar la implementacin de los mtodos y propiedades para concentrarse slo en cmo usarlos. Por otro lado se evita que el usuario pueda cambiar su estado de maneras imprevistas e incontroladas. Como se puede observar de los diagramas, las variables del objeto se localizan en el centro o ncleo del objeto. Los mtodos rodean y esconden el ncleo del objeto de otros objetos en el programa. Al empaquetamiento de las variables de un objeto con la proteccin de sus mtodos se le llama encapsulamiento. La encapsulacin da lugar a que las clases se dividan en dos partes: 1) Interface: captura la visin externa de una clase, abarcando la abstraccin del comportamiento comn a los ejemplos de esa clase. 2) Implementacin: comprende la representacin de la abstraccin, asI como los mecanismos que conducen al comportamiento deseado.

Persistencia de Encapsulamiento
Se llama persistencia de los objetos a su capacidad para guardarse y recuperarse desde un medio de almacenamiento. La persistencia en Base de Datos relacionales se suele implementar mediante el desarrollo de funcionalidad especIfica utilizando la tecnologIa JDBC o mediante frameworks que automatizan el proceso a partir de mapeos como es el caso de Hibrnate. Si bien existen ms alternativas de persistencia, en este tutorial abordaremos estas dos alternativas ya que son las ms frecuentemente utilizadas.

JerarquIa de Clases
Consideremos las figuras planas cerradas como el rectngulo, y el cIrculo. Tales figuras comparten caracterIsticas comunes como es la posicin de la figura, de su centro, y el rea de la figura, aunque el procedimiento para calcular dicha rea sea completamente distinto. Podemos por tanto, disear una jerarquIa de clases, tal que la clase base denominada Figura, tenga las caracterIsticas comunes y cada clase derivada las especIficas.

Herencia
La herencia es un intento de adaptacin de estos diagramas al paradigma orientado a objetos. La herencia es un tipo de relacin entre una entidad padre y una entidad hijo. La entidad hijo hereda todos los atributos y relaciones de la entidad padre. Por tanto, no necesitan ser representadas dos veces en el diagrama. La relacin de herencia se representa mediante un tringulo interconectado por lIneas a las entidades. La entidad conectada por el vrtice superior del tringulo es la entidad padre. Solamente puede existir una entidad padre. Las entidades hijo se conectan por la base del tringulo. La Herencia puede hallarse en el nivel de los tipos o en el nivel de las tablas. En primer lugar se considerar la herencia de los tipos y despus en el nivel de las tablas.

Relaciones Anidadas
El modelo relacional anidado es una extensin del modelo relacional en la que los dominios pueden ser atmicos o de relacin. Por tanto, el valor de las tuplas de los atributos puede ser una relacin, y las relaciones pueden guardarse en otras relaciones. Los objetos complejos, por tanto, pueden representarse mediante una nica tupla de las relaciones anidadas.

Objetos Complejos
Los objetos se consideran complejos porque requieren un rea de almacenamiento sustancial y no forman parte de los tipos de datos estndar que suelen ofrecer los SGBD. Puesto que el tamao de los objetos es considerable, un SGBD podrIa obtener una porcin del objeto y proporcionarla al programa de aplicacin antes de obtener todo el objeto.

El SGBD podrIa tambin usar tcnicas de almacenamiento intermedio y cach para obtener por anticipado porciones del objeto, antes de que el programa de aplicacin necesite tener acceso a ellas. Como un SGBOO permite a los usuarios crear nuevos tipos, y como un tipo incluye tanto estructura como operaciones, podemos considerar que un SGBOO tiene un sistema de tipos extensibles. Podemos crear bibliotecas de nuevos tipos definiendo su estructura y operaciones, incluso con tipos complejos. Muchos SGBDOO pueden almacenar y obtener objetos no estructurados extensos en forma de cadenas y caracteres o de bits, que se pueden pasar tal cual al programa de aplicacin para que las interprete.

GemStone
La sintaxis del lenguaje de consulta de GemStone es diferente de SQL, este lenguaje es bastante limitado en trminos de poder expresivo. Solo se puede tener consultas sobre colecciones de objetos cuyas clases hayan sido definidas. La clausula constraints de la clase cuya instancia es la coleccin consultada no debe estar vacIa. Las consultas se llevan a cabo por medio de un mensaje especial select. Este mensaje tiene como argumento una cadena que denota la combinacin lgica de los predicados que definen la consulta. Estas pueden contener combinaciones lgicas de predicados y expresiones de camino.

O2
Es un lenguaje de consulta que permite reestructurar el resultado de una consulta de una forma altamente sofisticada, definido con una sintaxis que recuerda a la sintaxis de SQL. Sin embargo no es compatible con SQL. O2 es un lenguaje independiente, y no puede ser utilizado dentro de mtodos ni dentro del lenguaje de aplicacin CO2. Este lenguaje se usa principalmente desde interfaces graficas interactivas, las cuales ofrecen un pequeo entorno especIficamente para las consultas. Este entorno permite, por lo general, formular las consultas, salvarlas asignndoles un nombre y visualizar el resultado.

Iris
Es conocido como OSQL, es el ms similar a AQL en trminos de funcionabilidad. Ms especIficamente, tambin tiene mecanismos de cursor para tener acceso secuencial a los resultados de una consulta. En OSQL se puede llamar en una consulta a funciones definidas por el usuario, obviamente el sistema verifica que se le pasen a la funcin argumentos con el tipo correcto para asegurar que la consulta es correcta.

Orion
Ofrece un programa de utilidad para ayudar al usuario a determinar las referencias inconsistentes en un objeto complejo. El programa controla recursivamente todo los objetos sensibles a la notificacin referidos directa o indirectamente desde un objeto dado. En orion hay dos maneras principales de notificar los cambios: usando mensajes y usando banderas. En el enfoque basado en mensaje, el sistema notifica los cambios en los objetos enviando a los usuarios los mensajes apropiados. En el enfoque basado en banderas, el sistema simplemente actualiza una estructura de datos y los usuarios son notificados de los cambios solo cuando estos acceden al objeto modificado.

Diseo de BDOO por transformacin de EER-OO

Lenguaje Orientado a Objetos


La programacin orientada a objetos, intenta simular el mundo real a travs del significado de objetos que contiene caracterIsticas y funciones. Los lenguajes orientados a objetos se clasifican como lenguajes de quinta generacin. Como su mismo nombre indica, la programacin orientada a objetos se basa en la idea de un objeto, que es una combinacin de variables locales y procedimientos llamados mtodos que juntos conforman una entidad de programacin. En la programacin orientada a objetos, encapsular significa, reunir y controlar el grupo resultante como un todo y no individualmente. La abstraccin es un trmino externo al objeto, que controla la forma en que es visto por los dems. En la programacin la modularidad se considera de la siguiente manera: Un programa grande siempre ser ms complicado que la suma de varios programas pequeos, con lo que se considera ventajoso dividir un gran sistema en diversos mdulos. En la programacin tenemos la jerarquIa, la cual consiste en la clasificacin y organizacin de las abstracciones segn su naturaleza. El ms claro ejemplo de jerarquIa es la herencia.

Lenguaje de Programacin Persistente


Permite objetos para continuar existiendo despus de que el programa ha estado cerrado se llaman lenguajes de programacin persistentes. El nico producto comercial que aparece hacer esto en el momento es JADE, solamente se anticipa que los lenguajes de programacin persistentes llegarn a ser ms populares en el futuro. Un lenguaje de programacin persistente es un lenguaje de programacin ampliado con las construcciones para manejar datos persistentes. Distingue con el SQL encajado por lo menos de dos maneras: En una lengua persistente del programa, el lenguaje de interrogacin se integra completamente con la lengua del anfitrin y ambo parte el mismo tipo sistema. Cualquier cambio del formato requerido en bases de datos se realiza transparente.

Base de Datos Deductivas


Por lo regular usa un lenguaje declarativo para especificar reglas. Con lenguaje declarativo se quiere decir un lenguaje que define lo que un programa desea lograr, en vez de especificar los detalles de cmo lograrlo. Una mquina de inferencia dentro del sistema puede deducir hechos nuevos a partir de la base de datos interpretando dichas reglas. El modelo empleado en las bases de datos deductivas est Intimamente relacionado con el modelo de datos relacional, y sobre todo con el formalismo del clculo relacional. Tambin est relacionado con el campo de la programacin lgica y el lenguaje Prolog. Los trabajos sobre bases de datos deductivas basados en lgica han utilizado Prolog como punto de partida. Con un subconjunto de Prolog llamado Datalog se definen reglas declarativamente junto con un conjunto de relaciones existentes que se tratan como literales en el lenguaje.

Una Base de Datos especificaciones: hechos y reglas.

Deductiva

utiliza

dos

tipos

de

Los hechos: se especifican de manera similar a como se especifican las relaciones, excepto que no es necesario incluir los nombres de los atributos. En una Base de Datos Deductiva, el significado del valor del atributo en una tupla queda determinado exclusivamente por su posicin dentro de la tupla. Las reglas: especifican relaciones virtuales que no estn almacenadas realmente, pero que se pueden formar a partir de los hechos aplicando mecanismos de inferencia basados en las especificaciones de las reglas. La principal diferencia entre las reglas y las vistas es que en las primeras puede haber recursin y por tanto pueden producir vistas que no es posible definir en trminos de las vistas relacionales estndar.

Notacin Prolog
Es un lenguaje conversacional, es decir, el sistema mantiene un dilogo continuo con el programador desde el inicio de la sesin hasta el final de la misma. Este dilogo toma generalmente la forma de un interrogatorio, a lo largo del cual el programador plantear preguntas al sistema Prolog. Por su parte, el sistema Prolog responder cada una de las preguntas formula.

Notacin Datalog
Es un lenguaje lgico que es la forma ms simple de lgica desarrollada para el modelo relacional. Datalog sin recursin tiene el mismo poder expresivo que el lgebra relacional. Datalog es una versin similar a Prolog en su sintaxis adecuada para las bases de datos, pero su semntica operacional es diferente y se diferencia en: Datalog no admite sImbolos de funcin en los argumentos. El significado de los programas Datalog sigue el punto de vista de teorIa de modelos. Prolog, en cambio, se basa en un significado computacional que se desvIa de los significados de la teorIa de modelos y de la teorIa de pruebas.

Interpretacin de Reglas
Podemos usar dos metodologIas diferentes para poder interpretar el significado terico de las reglas, estos son, por la teorIa de demostracin y por la teorIa de modelos. Sin embargo en los sistemas prcticos, es el mecanismo de inferencia que tiene el sistema el que define la interpretacin exacta, y esta puede diferir de los modelos tericos que acabamos de mencionar. Este mecanismo de inferencia es un procedimiento computacional y por lo tanto provee una interpretacin computacional del significado de las reglas.

Programacin Lgica
La programacin lgica consiste en la aplicacin del corpus de conocimiento sobre lgica para el diseo de lenguajes de programacin. Se ha convertido en el pilar de una nueva generacin de lenguajes de programacin. Junto con la programacin funcional forma parte de lo que se conoce como programacin declarativa, en los cuales los lenguajes tradicionales se intenta resolver un problema mediante sentencias, en la programacin lgica se trabaja de forma descriptiva, estableciendo relaciones, y no indicando un cmo sino un qu hacer.

Programacin en Datalog
Es un conjunto de clausulas separadas de alguna forma convencional, por ejemplo por punto y coma. Dentro de este programa el propsito principal es soportar especIficamente formulaciones de axiomas deductivos.

Sistema LDL
Lenguaje Lgico de Dato (LDL) se inici en 1984 con dos objetivos primarios: Crear un sistema que extendiera el modelo relacional y a la vez aprovechara algunas de las caracterIsticas positivas de un SGBDR. Mejorar la funcionalidad de un SGBD de modo que operara como un SGBD deductivo y adems permitiera la creacin de aplicaciones de propsito general. Ahora el sistema resultante es un SGBD deductivo que se encuentra en el mercado. El sistema LDL ha intentado combinar la capacidad de expresin y deduccin de prolog con la funcionalidad y los recursos de un SGBD de propsito general. La desventaja principal que experimentaron los primero sistemas que acoplaron Prolog a un SGBDR es que Prolog es un lenguaje de navegacin en tanto que en los SGBDR el usuario formula una consulta correcta y deja al sistema la optimizacin de su ejecucin. Para lidiar con este inconveniente los diseadores de LDL optaron por convertir el Prolog a un lenguaje lgico declarativo de aplicacin general, produciendo un lenguaje que es diferente en sus constructores y estilo de programacin en los siguientes aspectos: Las reglas se compilan en LDL. Existe una nocin de esquema de la base de hechos en LDL en tiempo de compilacin. Esta base se actualiza libremente en tiempo de ejecucin. LDL no sigue la tcnica de resolucin y unificacin que se emplea en los sistemas Prolog basados en backwards-chaining. El modelo de ejecucin de LDL es ms simple, basado en la operacin de comparacin y el clculo del menor punto fijo. Estos operadores, a su vez, utilizan extensiones simples del algebra relacional.

Sistema Gestores de Base de Datos


Son software muy especIfico, dedicados a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Los hechos general de los sistemas de gestor de bases de datos es el de manejar de manera clara, sencilla y ordenada un conjunto de datos que posteriormente se convertirn en informacin relevante para una organizacin.

Base de Datos Activas


Son los sistemas de bases de datos dentro del proceso de desarrollo, los cuales se han convertido en un producto estratgico de primer orden; en el afn de ofrecer una respuesta a las necesidades planteadas por los usuarios y por las aplicaciones avanzadas, donde se necesitan herramientas semnticamente ms ricas que las provistas por las Bases de Datos Relacionales, aparecen recientes aplicaciones de estos que consisten en ofrecer recursos para definir Reglas Deductivas y Activas que permiten deducir, inferir u obtener informacin nueva a partir de los datos almacenados o sucesos condicionados. La meta de estas aplicaciones es incorporar a las Bases de Datos Relacionales los beneficios de la lgica y la reaccin espontnea ante sucesos predefinidos como instrumentos para la formalizacin integrada de los aspectos estticos y dinmicos del modelado de aplicaciones.

Base de Datos Multimedia


Es una base de datos que los medios de comunicacin primaria alberga uno o ms tipos de archivo como Txt (documentos), JPG (imgenes), Swf (videos), Mp3 (audio) y vagamente se dividen en principales categorIas: Los medios de comunicacin estticos: independiente del tiempo, es decir, imgenes y escritura. Los medios de comunicacin dinmica: dependiente del tiempo, es decir, de vIdeo y sonido bytes.

Bases de datos cientIficas


Contienen informacin destinada a los investigadores de cualquier mbito cientIfico. A su vez, este grupo puede dividirse en: Bases de datos multidisciplinares: abarcan varias disciplinas cientIficas o tcnicas. Bases de datos especializadas: recopilan y analizan documentos pertinentes para una disciplina o sub-disciplina concreta: investigacin biomdica, farmacutica, quImica, agroalimentaria, social, humanIstica, etc.

Base de Datos Espaciales


Es un arreglo ordenado de datos georreferenciados relacionados entre sI, clasificados y agrupados segn sus caracterIsticas; bajo control de redundancias e integrados para el desarrollo de aplicaciones y anlisis sobre la informacin. En este tipo de bases de datos es imprescindible establecer un cuadro de referencia para definir la localizacin y relacin entre objetos, ya que los datos tratados en este tipo de bases de datos tienen un valor relativo, no es un valor absoluto. Los sistemas de referencia espacial pueden ser de dos tipos: Georrefenciados: aquellos que se establecen sobre la superficie terrestre. Son los que normalmente se utilizan, ya que es un dominio manipulable, perceptible y que sirve de referencia No georreferenciados: son sistemas que tienen valor fIsico, pero que pueden ser tiles en determinadas situaciones.

Base de Datos Temporal


Es un sistema de gestin de base de datos (DBMS) el cual implementa y trata con especial nfasis aspectos temporales, teniendo un modelo de datos temporal y una versin temporal del lenguaje de consulta estructurado, (SQL). Entre las diversas propuestas de implementacin, la ms extendida es TSQL2. Especificando ms profundamente, los aspectos temporales normalmente incluyen tiempo de validez y tiempo de transaccin. La combinacin de estos dos atributos forman un dato bitemporal. Tiempo de validez indica el perIodo en el cual un hecho es verdad en el mundo real. Tiempo de transaccin indica el perIodo en el cual un hecho est guardado en la base de datos. Dato Bitemporal es la combinacin del tiempo de validez y el tiempo transaccional. Estos dos perIodos no tienen que ser idnticos para un mismo hecho. Imagine una base de datos temporal guardando datos sobre el siglo veinte. El tiempo de validez sobre esos hechos estar comprendido entre el ao 1901 y el ao 2000, sin embargo el tiempo transaccional empezar cuando insertemos esos hechos en la base de datos, por ejemplo, 25 de diciembre del 2006.

Você também pode gostar