Professional Documents
Culture Documents
Profesora: Prez Y.
Integrantes: Esplua Adriana C.I: 19.566.594 Porras Irmaris C.I: 19.296.636 5to Semestre De Ing. de Sistemas
2. Evolucin
Inicialmente, en los aos 40s, los Sistemas de Archivos generados a travs de lenguajes de programacin no propietarios como Cobol y Fortran (vigentes en la actualidad), 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 (DBMS: Database Management System), 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, entre otros. El primer gestor de bases de datos (DBMS) comercial, IDS: Integrated Data Store , se crea bajo el concepto del Modelo de Datos de Red (Bachgman, 1965); luego se desarrolla el IMS: Information Management System , sobre el concepto del Modelo de Datos Jerrquico. Estos DBMSs eran accesados normalmente por lenguajes de programacin como Cobol usando interfases 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. Luego se genera una nueva nocin, donde las bases de datos deben almacenar por medio de una estructura tabular llamada relacin o tabla (Codd,1970), compuesta por filas y columnas, accesando dichas relaciones a travs de un lenguaje de alto nivel no procedural (declarativo). De esta forma en los aos 80s surgen varios productores de DBMS Relacionales (RDBMS) como Oracle, Informix, Ingres y DB2, adems de otros lenguajes orientados a objetos como el C++, Java (antes el Oak), Eiffel, y Smalltalk adoptando y mejorando el concepto de clase pero su desarrollo se hace independiente de los DBMSs. Comenzando los aos 80s ya 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 ORDBMS (Object Relational Database Management System) los cuales se proyectan como una extensin de los RDBMS hacia el paradigma OO, y los OODBMS (Object Oriented Database Management System) estaran disponibles para almacenar y manipular las clases, los objetos, la asociacin entre ellos
y sus mtodos. As, finalizando los aos 80s 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 ODMG (Object Database Management Group) 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.
3. Esquema de un DBMS
DDL (Data Definition language): Lenguaje de Definicin de Datos. Por medio de este
el DBMS identifica las descripciones de los elementos de los esquemas y almacena la descripcin del esquema en el catlogo del DBMS. SDL (Store Definition language): Lenguaje de definicin de almacenamiento. Es utilizado por el DBMS para especificar el esquema interno que corresponde a la Base de Datos Almacenada. VDL (View Definition language): 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 Datos Relacionales, el SQL, representa una combinacin de los anteriores. DML (Data Manipulation language): 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.
6. Transacciones
En un Sistema de Gestin de Bases de Datos (SGBD), 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 (llamado punto de integridad), como si la orden de la transaccin nunca se hubiese realizado. Para esto, el lenguaje de consulta de datos SQL (Structured Query Language), provee los mecanismos para especificar que un conjunto de acciones deben constituir una transaccin.
BEGIN TRAN: Especifica que va a empezar una transaccin. COMMIT TRAN: Le indica al motor que puede considerar la transaccin completada con xito. ROLLBACK TRAN: Indica que se ha alcanzado un fallo y que debe restablecer la base al punto de integridad.
En un sistema ideal, las transacciones deberan garantizar todas las propiedades ACID; en la prctica, a veces alguna de estas propiedades se simplifica o debilita con vistas a obtener un mejor rendimiento.
7. Modelo Relacional
Es un modelo de datos basado en la lgica de predicados y en la teora de conjuntos. Es el modelo ms utilizado en la actualidad para modelar problemas reales y administrar datos dinmicamente. Tras ser postuladas sus bases en 1970 por Edgar Frank Codd, de los laboratorios IBM en San Jos (California), no tard en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de relaciones. Estas relaciones podran considerarse en forma lgica como conjuntos de datos llamados tuplas. Pese a que sta es la teora de las
bases de datos relacionales creadas por Edgar Frank Codd, la mayora de las veces se conceptualiza de una manera ms fcil de imaginar, esto es, pensando en cada relacin como si fuese una tabla que est compuesta por registros (cada fila de la tabla sera un registro o tupla), y columnas (tambin llamadas campos).
8. Modelo de Red
Es un Modelo de base de datos concebido como un modo flexible de representar objetos y su relacin
9. Modelo Jerrquico
Es un modelo de datos en el cual los datos son organizados en una estructura parecida a un rbol. La estructura permite a la informacin que repite y usa relaciones padre/Hijo: cada padre puede tener muchos hijos pero cada hijo slo tiene un padre. Todos los atributos de un registro especfico son catalogados bajo un tipo de entidad.
13. Archivo
Un archivo es un elemento de informacin conformado por un conjunto de registros. Estos registros a su vez estn compuestos por una serie de caracteres o bytes. Actualmente las organizaciones estn utilizando bases de datos para generar resultados o para compartir dicha informacin con otros sistemas. Sin embargo, los principales componentes de la base de datos son los archivos. Las formas en las cuales pueden organizarse los archivos, son archivos secuenciales o archivos directos. En los archivos secuenciales los registros estn almacenados en una secuencia que dependen de algn criterio definido.
La velocidad de acceso, El tamao de la informacin, El tipo de la informacin, Facilidad de acceso a la informacin, Facilidad para extraer la informacin requerida, El comportamiento del manejador de bases de datos con cada tipo de informacin.
No obstante que pueden desarrollarse sistemas de procesamiento de archivo e incluso manejadores de bases de datos basndose en la experiencia del equipo de desarrollo de software logrando resultados altamente aceptables, siempre es recomendable la utilizacin de determinados estndares de diseo que garantizan el nivel de eficiencia ms alto en lo que se refiere a almacenamiento y recuperacin de la informacin. De igual manera se obtiene modelos que optimizan el aprovechamiento secundario y la sencillez y flexibilidad en las consultas que pueden proporcionarse al usuario.
datos estarn ordenados en columnas verticales. Aqu definiremos los campos y sus caractersticas. Ms adelante veremos qu es un campo. Consultas: aqu definiremos las preguntas que formularemos a la base de datos con el fin de extraer y presentar la informacin resultante de diferentes formas (pantalla, impresora). Formulario: elemento en forma de ficha que permite la gestin de los datos de una forma ms cmoda 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. Mdulo: programa o conjunto de instrucciones en lenguaje Visual Basic
tener espacios en blanco en el medio. La descripcin de un campo, permite aclarar informacin referida a los nombres del campo. El tipo de campo, permite especificar el tipo de informacin que cargramos en dicho campo, esta puede ser:
Texto: para introducir cadenas de caracteres hasta un mximo de 255 Memo: para introducir un texto extenso. Hasta 65.535 caracteres Numrico: para introducir nmeros Fecha/Hora: para introducir datos en formato fecha u hora Moneda: para introducir datos en formato nmero y con el signo monetario Auto numrico: en este tipo de campo, Access numera automticamente el contenido S/No: campo lgico. Este tipo de campo es slo si queremos un contenido del tipo S/No, Verdadero/Falso, etc. Objeto OLE: para introducir una foto, grfico, hoja de clculo, sonido, etc. Hipervnculo: podemos definir un enlace a una pgina Web Asistente para bsquedas: crea un campo que permite elegir un valor de otra tabla o de una lista de valores mediante un cuadro de lista o un cuadro combinado. Registro: es el conjunto de informacin referida a una misma persona u objeto. Un registro vendra a ser algo as como una ficha. Campo clave: campo que permite identificar y localizar un registro de manera gil y organizada.
20. Multitarea
Es la capacidad de un sistema operativo para ejecutar varios procesos al mismo tiempo corriendo sobre un procesador o sobre varios. Quienes hayan experimentado con sistemas MSDOS durante la dcada del 80 recordarn su incapacidad para realizar este tipo de actividades, algo que fue superado con los primeros Windows de Microsoft, aunque la multitarea era comn en otros sistemas operativos muchos aos antes, tal es el caso de Unix y derivados. Las multitareas se dividen en nulas, cooperativas, preferentes y reales. En el caso de las nulas, estamos hablando de un sistema operativo que, a pesar de carecer de esta caracterstica, puede imitar del alguna forma el comportamiento en espacio de usuario o utilizando algunos trucos.
21. Multiusuario
Se refiere a un concepto de sistemas operativos, pero en ocasiones tambin puede aplicarse a programas de ordenador de otro tipo (ej. aplicaciones de base de datos). En general se le llama multiusuario a la caracterstica de un sistema operativo o programa que permite proveer servicio y procesamiento a mltiples usuarios simultneamente (tanto en paralelismo real como simulado). En contraposicin a los sistemas monousuario, que proveen servicio y procesamiento a un solo usuario, en la categora 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 compartan a travs del uso de mltiples dispositivos de interfaz humana (ej. una unidad central y mltiples pantallas y teclados). Los recursos que se comparten son por lo regular una combinacin de:
Procesador. Memoria. Almacenamiento secundario (almacenaje en disco duro). Programas. Perifricos como impresoras, plotters, scanners, etc.
De tal modo que los mltiples usuarios tienen la impresin de utilizar un ordenador y un sistema operativo unificado, que les estn dedicados por completo.
22. Multiprocesamiento
Multiprocesamiento o multiproceso es tradicionalmente 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.
25. Tupla
Es una secuencia ordenada de objetos, esto es, una lista con un nmero limitado de objetos (una secuencia infinita se denomina en matemtica como una familia). 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.
26. 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 direccin.
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 direccin, o un nmero de telfono, un nombre, etc.
27. Entidad
Es la representacin de un objeto o concepto del mundo real que se describe en una base de datos. Una entidad se describe en la estructura de la base de datos empleando un modelo de datos. Por ejemplo, nombres de entidades pueden ser: Alumno, Empleado, Artculo, etc. Cada entidad est constituida por uno o ms atributos. Por ejemplo, la entidad "Alumno" podra tener los atributos: nombre, apellido, ao de nacimiento, etc. En el modelo de entidad-relacin 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.
28. Campo
Es cada uno de los diferentes datos que constituyen un registro lgico.
29. Atributos
Un atributo representa la propiedad de inters de una entidad. Los atributos se describen en la estructura de la base de datos empleando un modelo de datos. Por ejemplo: se podra tener una entidad llamada Alumno. Esta entidad puede estar constituida por uno o ms atributos, que son propiedades de la entidad Alumno que interesan para almacenarse en la base de datos. Por ejemplo: la entidad Alumno podra tener los atributos: nombre, apellido, ao de nacimiento, etc. La eleccin de los atributos de una entidad depende del uso que se le dar a la base de datos. El alumno puede tener una religin, pero si no interesa al fin de la base de datos, no es necesario almacenarla en un atributo. En SQL un atributo es llamado columna.
Ampliabilidad. Esto se debe a: Se pueden construir nuevos tipos de datos a partir de los ya existentes. Agrupacin de propiedades comunes de diversas clases e incluirlas en una superclase, lo que reduce la redundancia.
Reusabilidad de clases, lo que repercute en una mayor facilidad de mantenimiento y un menor tiempo de desarrollo.
Lenguaje de consulta ms expresivo. El acceso navegacional desde un objeto al siguiente es la forma ms comn de acceso a datos en un SGBDOO. Mientras que SQL utiliza el acceso asociativo. El acceso navegacional es ms adecuado para gestionar operaciones como los despieces, consultas recursivas, etc. Adecuacin a las aplicaciones avanzadas de base de datos. Hay muchas reas en las que los SGBD tradicionales no han tenido excesivo xito como el CAD, CASE, OIS, sistemas multimedia, etc. en los que las capacidades de modelado de los SGBDOO han hecho que esos sistemas s resulten efectivos para este tipo de aplicaciones. Mayores prestaciones. Los SGBDOO proporcionan mejoras significativas de rendimiento con respecto a los SGBD relacionales. Aunque hay autores que han argumentado que los bancos de prueba usados estn dirigidos a aplicaciones de ingeniera donde los SGBDOO son ms adecuados. Tambin est demostrado que los SGBDR tienen un rendimiento
Mientras que las necesidades de las aplicaciones actuales con respecto a las bases de datos son: Soporte para objetos complejos y datos multimedia. Identificadores nicos. Soporte a referencias e interrelaciones. Manipulacin navegacional y de conjunto de registros. Jerarquas de objetos o tipos y herencia. Integracin de los datos con sus procedimientos asociados. Modelos extensibles mediante tipos de datos definidos por el usuario. Gestin de versiones. Facilidades de evolucin. Transacciones de larga duracin. Interconexin e interoperabilidad.
Otras que se incluyen dentro del DDL, pero que su existencia depende de la implementacin 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 especficos o a un rol creado dentro de la base de datos.
Definicin del esquema de la base de datos. Definicin de la estructura y el mtodo de acceso. Modificacin del esquema y la organizacin fsica. Concesin de autorizacin para el acceso a los datos. Mantenimiento rutinario.
38. Cardinalidad
Otra de las caractersticas importantes que hay que tener en cuenta en este modelo es la cardinalidad de cada extremo en una relacin. La cardinalidad expresa cuntas del conjunto de entidades de un extremo de la relacin estn relacionadas con cuntas entidades del conjunto del otro extremo. Pueden ser ``uno a uno'', ``uno a varios'' o ``varios a varios''. Por ejemplo, un artculo puede ser escrito por un solo autor o por varios, pero nunca por ninguno; un autor puede pertenecer a exactamente una institucin (no para cero o varias); un artculo puede tener cero, uno o varios experimentos. Finalmente, un autor puede escribir muchos artculos, o ninguno.
Observe que las cardinalidades en algunos casos dependen de restricciones arbitrarias: se podra decidir aceptar slo aquellos autores que han escrito al menos un artculo (y con esto cambiara la ltima regla mencionada); hemos decidido considerar slo la institucin primaria para la cual un determinado autor trabaja (y esto ha determinado nuestra segunda regla).
39. Registro
Registro (tambin llamado fila o tupla) representa un objeto nico de datos implcitamente estructurados en una tabla. En trminos simples, una tabla de una base de datos puede imaginarse formada de filas y columnas o campos. Cada fila de una tabla representa un conjunto de datos relacionados, y todas las filas de la misma tabla tienen la misma estructura. Un registro es un conjunto de campos que contienen los datos que pertenecen a una misma repeticin de entidad. Se le asigna automticamente un nmero consecutivo (nmero de registro) que en ocasiones es usado como ndice aunque lo normal y prctico es asignarle a cada registro un campo clave para su bsqueda.
interfaces.
Los usuarios finales que consultan y editan la informacin de la base de datos mediante
En 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
el desempeo tan anhelado por muchos desarrolladores de aplicaciones, lo que es imposible encontrar en los modelos jerrquicos de red o relacinales. B) identificacin de Objetos, Estructuras y Constructores Identificacin 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, u OID. El valor de un OID 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. Estructura: El paradigma orientado a objetos se basa en el encapsulamiento de datos y del cdigo relacionado con cada objeto en una sola unidad. Conceptualmente, todas las interacciones entre cada objeto y el resto del sistema se realizan mediante mensajes. Por lo tanto, la interfaz entre cada objeto y el resto del sistema se define mediante un conjunto de mensajes permitidos. Constructores: En las BDOO, los valores (o estados) 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 (el OID), c es un constructor (esto es, una indicacin de cmo se construye el valor del objeto) y v es el valor (o estado) del objeto. Puede haber varios constructores, segn el modelo de datos y el sistema OO. Los tres constructores bsicos son: constructores de tomos, constructores de tuplas y constructores de conjuntos. Otros constructores de uso ms comn son los de listas y de arreglos. Tambin existe un dominio D que contiene todos los valores atmicos bsicos que estn disponibles directamente en el sistema. Por lo regular estos incluyen los enteros, los nmeros reales, las cadenas de caracteres, los tipos bolanos, las fechas y cualesquiera otros tipos de datos que el sistema maneje directamente C) Encapsulamiento de Operaciones, Mtodos y Persistencia. Encapsulamiento: cada objeto est aislado del exterior, es un modulo natural y la aplicacin entera se reduce a una agregacin de objetos. El aislamiento protege a los datos asociados a un objeto de su modificacin por quien no tenga derecho a acceder a ellos, eliminando efectos secundarios e interacciones. Mtodos: es un cdigo ejecutable asociado a un objeto (o a una clase de objetos), cuya ejecucin se desencadena mediante un mensaje. Persistencia: En los lenguajes de programacin orientados a objetos estos son transitorios, desaparecen cuando se termina el programa, Si se desea transformar uno de estos lenguajes en un lenguaje para la programacin de bases de datos, el primer paso consiste en proporcionar una manera de hacer persistentes a los objetos. Se han propuesto varios enfoques D) Jerarqua de Clases y Herencia Jerarqua de clases: En una base de datos existen objetos que responden a los mismos mensajes, utilizan los mismos mtodos y tienen variables del mismo nombre y tipo. Sera intil definir cada uno de estos objetos por separado por lo tanto se agrupan los objetos similares para que formen una clase, a cada uno de estos objetos se le llama instancia de su clase. Todos los
objetos de su clase comparten una definicin comn, aunque difieran en los valores asignados a las variables. As que bsicamente las bases de datos orientados a objetos tienen la finalidad de agrupar aquellos elementos que sean semejantes en las entidades para formar un clase, dejando por separado aquellas que no lo son en otra clase. Herencia: Las clases en un sistema orientado a objetos se representan en forma jerrquica como en el diagrama anterior, as que las propiedades o caractersticas del elemento persona las contendrn (heredaran) los elementos alumno y maestro. Decimos que tanto la entidad Alumno y maestro son subclases de la clase persona este concepto es similar al utilizado en la de especializacin (la relacin ISA) del modelo E-R. Se pueden crear muchas agrupaciones (clases) para simplificar un modelo as que una jerarqua (en forma grfica) puede quedar muy extensa, en estos casos tenemos que tener bien delimitados los elementos que intervienen en una clase y aquellos objetos que las heredan. E) 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. F) 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 podra obtener una porcin del objeto y proporcionarla al programa de aplicacin antes de obtener todo el objeto. El SGBD podra 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. En un SGBOO, esto puede lograrse definiendo un nuevo tipo de datos abstracto para los objetos no interpretados y suministrados los mtodos para seleccionar, comprar y exhibir tales objetos. 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
G) Ejemplos de SGBDOO: GemStone, O2, Iris, Orion: Sistema de Gestin de Bases de Datos Orientadas a Objetos. GemStone: En GemStone, si la clase es modificable, se pueden ejecutar todos los tipos de modificaciones. El que una clase sea o no modificable se puede determinar a partir de la definicin de la clase en s mediante la bandera isModifiable. Sin embargo, una clase modificable no puede ser instanciada. Por tanto, todas aquellas modificaciones que tienen efecto sobre las instancias no pueden ejecutarse sobre las clases que tienen instancias. Tales modificaciones incluyen aadir y eliminar atributos, y aadir una restriccin al dominio de un atributo. Sin embargo, aquellas modificaciones de esquema que no afectan las instancias pueden ser ejecutadas sobre las clases con instancias. O2: Las modificaciones de esquemas en O2 no pueden ser ejecutadas dinmicamente. Hay algunas propuestas en la literatura, pero stas an no han sido implementadas en el sistema. En O2 se puede eliminar una clase slo si no tiene instancias y si no es utilizada en la definicin de
otras clases. Hasta donde tiene que ver con la evolucin de instancia en O2, se pueden modificar tanto el estado como la estructura de una instancia, puesto que se permiten instancias excepcionales. Iris: La evolucin de esquemas en Iris es limitada. Slo se pueden aadir y eliminar dinmicamente aquellas funciones que no son propiedades de los tipos. Por tanto, no se pueden ejecutar modificaciones equivalentes a aadir y eliminar atributos. Las funciones que representan las propiedades de un tipo son eliminadas automticamente si se elimina el tipo. Las funciones que no son propiedades de un tipo siempre se pueden eliminar. El sistema elimina automticamente todas aquellas funciones derivadas que fueron definidas en trminos de la funcin eliminada. Orion: La creacin de una instancia tiene el efecto de insertar el objeto en la base de datos. Por tanto, la creacin del objeto automticamente implica su persistencia. Esta variante es lo que se utiliza en Orion, es la ms simple con vistas a hacer persistente un objeto. Tpicamente es la utilizada por sistemas en los que las clases tienen tambin una funcin extensional. H) Diseo de BDOO Por Transformacin de EER-OO
I) Lenguajes orientadas a objetos: Los lenguajes de programacin orientados a objetos requieren que toda la interaccin con objetos se realiza mediante el envo de mensajes. Consideremos el ejemplo de alumno-cursa-materia deseamos realizar la consulta de los alumnos que cursan la materia de Base de Datos 1, para realizar esta consulta se tendra que enviar un mensaje a cada instancia alumno As un lenguaje de consultas para un sistema de bases de datos orientado a objetos debe incluir tanto el modelo de pasar el mensaje de objeto a objeto como el modelo de pasar el mensaje de conjunto en conjunto. J) Lenguajes de Programacin Persistentes: Los lenguajes de las bases de datos trabajan directamente con dato que son persistentes, es decir, los datos siguen existiendo una vez que el programa que los creo ha concluido. Las relaciones de las bases de datos y las tuplas de las relaciones son ejemplos de datos persistentes. Por el contrario, los nicos datos persistentes con los que los lenguajes de programacin tradicionales trabajan directamente son los archivos. La manera tradicional de realizar las interfaces de las bases de datos con los lenguajes de
programacin tradicionales consiste en incorporar o embeber el cdigo SQL dentro del lenguaje de programacin.
Programacin Lgica, se trabaja en una forma descriptiva, estableciendo relaciones entre entidades, indicando no como, sino que hacer. E) Programacin en Datalog: Es un lenguaje de consultas, no procedimental, basado en el lenguaje de programacin lgica de Prolog. Como se hace en el clculo relacional, el usuario describe la informacin deseada sin especificar un procedimiento especfico de obtencin de dicha informacin. La sintaxis de Datalog se asemeja a la de Prolog. Sin embargo, el significado de los programas en Datalog se define de una manera puramente declarativa, a diferencia de la semntica ms procedimental de Prolog. Datalog simplifica la escritura de consultas simples y hace ms sencilla la optimizacin de consultas. F) Sistema LDL (lenguaje Lgico de Datos): El proyecto Logic Data Lenguaje (Lenguaje Lgico de Dato: LDL) de Microelectronics and Computer Corporation (MCC) se inici en 1984 con dos objetivos primarios: Crear un sistema que extendiera el modelo relacional y a la vez aprovechara algunas de las caractersticas positivas de un SGBDR (Sistema de Gestin de Base de Datos Relacionales). 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.
Bases de datos multidisciplinares: abarcan varias disciplinas cientficas o tcnicas. Bases de datos especializadas: recopilan y analizan documentos pertinentes para una disciplina o subdisciplina concreta: investigacin biomdica, farmacutica, qumica, agroalimentaria, social, humanstica, etc. Bases de Datos Estadsticos: Statistical Package for the Social Sciences (SPSS) es un programa estadstico informtico muy usado en las ciencias sociales y las empresas de investigacin de mercado. En la actualidad, la sigla se usa tanto para designar el programa estadstico como la empresa que lo produce. Originalmente SPSS fue creado como el acrnimo de Statistical Package for the Social Sciences ya que se est popularizando la idea de traducir el acrnimo como "Statistical Product and Service Solutions". Como programa estadstico es muy popular su uso debido a la capacidad de trabajar con bases de datos de gran tamao. En la versin 12 es de 2 millones de registros y 250.000 variables. Adems, de permitir la recodificacin de las variables y registros segn las necesidades del usuario. El programa consiste en un mdulo base y mdulos anexos que se han ido actualizando constantemente con nuevos procedimientos estadsticos. D) Bases de Datos Espaciales y Temporales. Bases de Datos Temporales: De manera general, en las bases de datos temporales se suelen distinguir dos aspectos importantes: la gestin de la historia y la gestin de versiones. En estos ltimos aos se ha logrado un consenso en cuanto a la semntica de la historia, pero no a la gestin de versiones, para la que existen muchas propuestas en el contexto de los sistemas de diseo asistido por ordenador e ingeniera de software. Base de Datos Espaciales: Una base de datos espacial es una coleccin de datos referenciados espacialmente, que actan como un modelo de la realidad; en el sentido de que ella representa una serie o aproximacin de fenmenos. Esos fenmenos seleccionados son considerados suficientemente importantes para ser representados en forma digital. La representacin digital puede ser para el pasado, presente o futuro. Las bases de datos espaciales necesitan contar con procedimientos que hagan posible su mantenimiento en lo que respecta a su documentacin as como su administracin.
E) Inconvenientes De Los SGBD Redundancia e inconsistencia de los datos: se produce porque los archivos son creados por distintos programas y van cambiando a lo largo del tiempo, es decir, pueden tener distintos formatos y los datos pueden estar duplicados en varios sitios. Por ejemplo, el telfono de un alumno puede aparecer en ms de un archivo. La redundancia aumenta los costes de almacenamiento y acceso, y trae consigo la inconsistencia de los datos: las copias de los mismos datos no coinciden por aparecer en varios archivos. Dependencia de los datos fsica-lgica: o lo que es lo mismo, la estructura fsica de los datos (definicin de archivos y registros) se encuentra codificada en los programas de aplicacin. Cualquier cambio en esa estructura implica al programador identificar, modificar y probar todos los programas que manipulan esos archivos. Dificultad para tener acceso a los datos: proliferacin de programas, es decir, cada vez que se necesite una consulta que no fue prevista en el inicio implica la necesidad de codificar el programa de aplicacin necesario. Lo que se trata de probar es que los entornos convencionales de procesamiento de archivos no permiten recuperar los datos necesarios de una forma conveniente y eficiente. Separacin y aislamiento de los datos: es decir, al estar repartidos en varios archivos, y tener diferentes formatos, es difcil escribir nuevos programas que aseguren la
manipulacin de los datos correctos. Antes se deberan sincronizar todos los archivos para que los datos coincidiesen. Dificultad para el acceso concurrente: pues en un sistema de gestin de archivos es complicado que los usuarios actualicen los datos simultneamente. Las actualizaciones concurrentes pueden dar por resultado datos inconsistentes, ya que se puede acceder a los datos por medio de diversos programas de aplicacin. Dependencia de la estructura del archivo con el lenguaje de programacin: pues la estructura se define dentro de los programas. Esto implica que los formatos de los archivos sean incompatibles. La incompatibilidad entre archivos generados por distintos lenguajes hace que los datos sean difciles de procesar. Problemas en la seguridad de los datos: Resulta difcil implantar restricciones de seguridad pues las aplicaciones se van aadiendo al sistema segn se van necesitando. Problemas de integridad de datos: es decir, los valores almacenados en los archivos deben cumplir con restricciones de consistencia. Por ejemplo, no se puede insertar una nota de un alumno en una asignatura si previamente esa asignatura no est creada. Otro ejemplo, las unidades en almacn de un producto determinado no deben ser inferiores a una cantidad. Esto implica aadir gran nmero de lneas de cdigo en los programas. El problema se complica cuando existen restricciones que implican varios datos en distintos archivos.
F) Evolucin Histrica: La historia de las bases de datos inicia a mediados de los aos cincuenta, en el momento en que comenzaron a introducirse los ordenadores para automatizar la gestin de las empresas, fundamentalmente con desarrollos en COBOL, y se han caracterizado por el uso de tecnologas orientadas a la estructuracin de datos mediante modelos jerrquicos y Codasyl (p.ej. IMS de IBM; IDMS de Cullinet) de lgica procedimental, que obligan al programador a desplazarse registro a registro, hecho que implica una escasa flexibilidad. En 1970 se propuso el modelo relacional, basado en los trabajos del Dr. Codd, bsicamente el modelo matemtico que dio fundamentos a la segunda generacin de SGBD, caracterizada por una mayor independencia fsico-lgica, dado que actan sobre conjuntos de registros; entre ellas destacan ORACLE, DB2, INGRES, INFORMIX, SYBASE, etc. Codd propuso un modelo simple de datos en el que todos ellos se representaran en tablas constituidas por filas y columnas. A dichas tablas se les dio en nombre matemtico de relaciones, denominndose as el sistema como relacional. Codd tambin propuso dos lenguajes para manipular los datos en las tablas: lgebra y clculo relacional, que soportan la manipulacin de los datos sobre la base de operadores lgicos en lugar de los punteros fsicos utilizados en los modelos jerrquicos y de red. El resultado fue la aparicin de sistemas relacionales durante la ltima mitad de los setenta que soportaban lenguajes como el Structured Query Language (SQL), el Query Language (Quel) y el Query-by-Example(QBE): los trabajos de investigacin que se realizaron durante la dcada de los ochenta se centraron en la optimizacin de consultas, lenguajes de alto nivel, teora de la normalizacin, organizaciones fsicas para el almacenamiento de las relaciones, algoritmos para la gestin de memorias intermedias (buffers), tcnicas de indexacin para un acceso asociativo ms rpido (distintas variaciones de los rboles), sistemas distribuidos, diccionarios de datos, gestin de transacciones, etc. Estas investigaciones han tenido como consecuencia la elevada tasa de transacciones de muchos de los productos actuales que permiten asegurar entornos transaccionales en lnea (OLTP) muy eficientes y seguros. Tambin cabe recordar que durante la primera mitad de los ochenta se estandariza el lenguaje SQL (el SQUANSI se aprueba en 1986), ofreciendo, al cabo de poco tiempo, prcticamente todos los productos una interfaz SQL, an los no relacionales (sistemas renacidos).
El enfoque relaciona1 permite a los programadores la manipulacin de tuplas procedentes de distintos ficheros y tablas en una misma base de datos mediante consultas estructuradas, habilitando acciones mltiples sobre los registros. La aparicin y estandarizacin de SQL, permiti una mayor integracin, multiplic las tareas asignadas a las bases de datos e implic el desarrollo de sistemas de uso transparente, cuya facilidad de manejo deriv en una excepcional productividad e impresionante impacto econmico. G) Explicar los Lenguajes de 3era y 4ta Generacin: Los lenguajes de tercera generacin (3GL; third-generation languages) son los lenguajes propiamente como los conocemos (poseen instrucciones, funciones, sintaxis, semntica); ya trascienden el uso de los trminos nemotcnicos. Una instruccin puede indicar 1 o ms tareas para el computador. Pueden dividirse como sigue: Orientados a problemas A procedimientos A objetos 4GL: (Generadores de aplicaciones que no dependen de una metodologa). Son de alto nivel y amigables; los programadores profesionales que utilizan 4GL sostienen que experimentan incrementos en la productividad de 200 a 1,000% en comparacin con los lenguajes orientados al procedimiento de la tercera generacin (COBOL, FORTRAN, BASIC y dems). Hay dos tipos de 4GL: H) Tendencias Futuras: En el futuro la mayora de las organizaciones cambiarn la forma convencional de manejo de la informacin a la arquitectura de base de datos a las ventajas derivadas de su uso. El uso de las bases de datos distribuidas se incrementar de manera considerable en la medida en que la tecnologa de comunicacin de datos brinde ms facilidades para ello. El uso de bases de datos facilitar y soportar en gran medida a los Sistemas de Informacin para la Toma de Decisiones. I) Citar las Diferentes Estructuras de Bases de Datos: Modelos de datos: Para representar el mundo real a travs de esquemas conceptuales se han creado una serie de modelos: Mundo Real Esq`s conceptuales. Modelizacin: Existen multitud de estos modelos que se conocen como Modelos de Datos, algunos de estos modelos son: Modelo Relacional de Datos: Representa al mundo real mediante tablas relacionadas entre s por columnas. Modelo de Red: Representamos al mundo real como registros lgicos que representan a una entidad y que se relacionan entre s por medio de flechas. Modelo Jerrquico: Tiene forma de rbol invertido.
Bibliografa
http://html.rincondelvago.com/sistemas-administrativos-en-ofimatica.html http://www.unalmed.edu.co/~mstabare/Dbms.htm#Esquema%20de%20un%20DBMS http://es.wikipedia.org/wiki/Transacci%C3%B3n_%28base_de_datos%29 http://www.unalmed.edu.co/~mstabare/Dbms.htm#Esquema%20de%20un%20DBMS http://es.wikipedia.org/wiki/Modelo_relacional http://es.wikipedia.org/wiki/Modelo_de_red http://es.wikipedia.org/wiki/Modelo_jer%C3%A1rquico http://www.mitecnologico.com/Main/DefinicionModeloDeDatos http://ict.udlap.mx/people/carlos/is341/bases02.html http://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n_de_bases_de_datos http://es.wikipedia.org/wiki/%C3%81lgebra_relacional http://www.monografias.com/trabajos12/archi/archi.shtml http://www.monografias.com/trabajos7/arch/arch/.shtml http://www.monografias.com/trabajos7/arch/arch/.shtml http://www.wikipedia.org/wiki/base_de_datos http://www.monografias.com/trabajos30/base-datos/base-datos.shtml http://www.monografias.com/trabajos5/basede/basede.shtml#OBJE http://www.mastermagazine.info/termino/6039.php http://es.wikipedia.org/wiki/Multiusuario http://es.wikipedia.org/wiki/Multiprocesamiento http://es.wikipedia.org/wiki/Integridad_referencial http://www.cs.buap.mx/~dpinto/bd/bdintro.pdf http://es.wikipedia.org/wiki/Tupla http://es.wikipedia.org/wiki/Tabla_%28base_de_datos%29
http://www.alegsa.com.ar/Dic/entidad.php http://www.monografias.com/trabajos7/arch/arch/.shtml http://www.alegsa.com.ar/Dic/atributo.php http://www.sg.inter.edu/acc/prMIS206/rodrigueza/pag-03.htm http://es.wikipedia.org/wiki/Lenguaje_de_Manipulaci%C3%B3n_de_Datos http://es.wikipedia.org/wiki/Lenguaje_de_definici%C3%B3n_de_datos http://uvfdatabases.wordpress.com/2009/02/06/tipos-de-usuarios-de-la-base-de-datos/ http://unaclibre.org/unac/index2.php?option=com_content&do_pdf=1&id=1068 http://alvherre.cl/pgsql/modBasico/node6.html http://es.wikipedia.org/wiki/Registro_%28base_de_datos%29 http://ciro-canales-del-razo.suite101.net/las-bases-de-datos-a1701 http://www.mitecnologico.com/Main/ArquitecturaBaseDeDatos http://tecnomaestros.awardspace.com/bases_datos_distribuidas.php http://html.rincondelvago.com/sistemas-de-bases-de-datos.html http://es.wikipedia.org/wiki/Base_de_datos_orientada_a_objetos http://sistemas.itlp.edu.mx/tutoriales/basedat1/tema7.htm http://es.scribd.com/doc/52526608/Listo-BD http://201010506ta5.blogspot.com/2011/09/notacion-prolog-datalog.html http://html.rincondelvago.com/bases-de-datos-deductivas.html http://informatica-full2.blogspot.com/2009/05/evolucion-de-los-sgbd.html http://www.monografias.com/trabajos11/basda/basda.shtml