bases de datos manual tics 4oa 2015

26
MGD Ing. Gerardo Orduña Alvarez 2015 Manual introductorio a las Bases de Datos Este documente pretende orientar a los alumnos sobre los conceptos de Bases de datos, desde su creación, características, funcionamiento, así como de los Gestores y programas dedicados al funcionamiento de una BD. Los componentes y aplicaciones, su estructura y modelo. Universidad Tecnológica El Retoño El Retoño, Aguascalientes [email protected] TICs 4º. Cuatrimestre

Upload: gerardo-orduna-alvarez

Post on 05-Nov-2015

20 views

Category:

Documents


0 download

DESCRIPTION

Manual de Bases de Datos Relacionales, Distribuidas, estructurales. Definiciones deSGBD, Motor, Gestionador de contenidos.Niveles de arquitectura y sus 3 capas.Ejemplos. Una base de datos es un conjunto de datos que están organizados para un uso determinado Las bases de datos de Access tienen la extensión .MDB para que el ordenador las reconozca como tal. En un sistema de base de datos relacional, los datos se organizan en Tablas. Las tablas almacenan información sobre un tema como pueden ser los clientes de una empresa, o los pedidos realizados por cada uno de ellos.Elementos y componentes de una base de datos.

TRANSCRIPT

  • MG

    D I

    ng

    . Ge

    rard

    o O

    rdu

    a

    Alv

    are

    z

    2015

    Ma

    nu

    al

    intr

    od

    uct

    ori

    o a

    la

    s B

    ase

    s d

    e

    Da

    tos

    Este documente pretende orientar a los alumnos sobre los conceptos de Bases de datos, desde su creacin, caractersticas, funcionamiento, as como de los Gestores y programas dedicados al funcionamiento de una BD. Los componentes y aplicaciones, su estructura y modelo.

    Universidad Tecnolgica El Retoo El Retoo, Aguascalientes

    [email protected] TICs 4. Cuatrimestre

  • 1

    CONTENIDO BASES DE DATOS ............................................................................................................................................. 2

    Los modelos clsicos de tratamiento de los datos son ............................................................................... 2

    La arquitectura de un sistema de base de datos se basa en 3 niveles distintos: ........................................ 4

    Niveles de la arquitectura de un sistema de base de datos ............................................................................ 4

    El modelo de datos es una cuestin fundamental a la hora de disear bases de datos en los sistemas de

    bases de datos se recoge estos 3 modelos fundamentales: ....................................................................... 5

    Los objetivos del modelo de datos son ....................................................................................................... 5

    Sistemas de Gestin de Bases de Datos DBMS (Data Base Management System) ........................................ 6

    Los componentes con los que debe contar un sistema de gestin de bases de datos ideal: ......................... 6

    Los SGBD tienen dos funciones principales que son: ...................................................................................... 7

    Motor de base de datos. ................................................................................................................................. 9

    Sistema de gestin de contenidos................................................................................................................... 9

    Cules son las diferencias principales entre un sistema de procesamiento de archivos y un SGBD? ........ 10

    DISEO DE BASES DE DATOS ......................................................................................................................... 10

    Un servidor de aplicaciones ...................................................................................................................... 14

    Interfaces de Programacin para el acceso a datos. ................................................................................. 16

    Bibliografa..................................................................................................................................................... 23

  • 2

    BASES DE DATOS Uno de los objetivos fundamentales de un sistema de informacin es contar

    no slo con recursos de informacin, sino tambin con los mecanismos

    necesarios para poder encontrar y recuperar estos recursos. De esta forma,

    las bases de datos se han convertido en un elemento indispensable no slo

    para el funcionamiento de los grandes motores de bsqueda y la recuperacin

    de informacin a lo largo y ancho de la Web, sino tambin para la creacin de

    sedes web, Intranets y otros sistemas de informacin en los que se precisa

    manejar grandes o pequeos volmenes de informacin. La creacin de una

    base de datos a la que puedan acudir los usuarios para hacer consultas y

    acceder a la informacin que les interese es, pues, una herramienta

    imprescindible de cualquier sistema informativo sea en red o fuera de ella.

    Una base de datos es una coleccin de datos organizados y estructurados

    segn un determinado modelo de informacin que refleja no slo los datos

    en s mismos, sino tambin las relaciones que existen entre ellos.

    Una base de datos se disea con un propsito especfico y debe ser

    organizada con una lgica coherente. Los datos podrn ser compartidos por

    distintos usuarios y aplicaciones, pero deben conservar su integridad y seguridad al margen de

    las interacciones de ambos. La definicin y descripcin de los datos han de ser nicas para

    minimizar la redundancia y maximizar la independencia en su utilizacin.

    En una base de datos, las entidades y atributos del mundo real, se convierten en registros y

    campos. Estas entidades pueden ser tanto objetos materiales como libros o fotografas, pero

    tambin personas e, incluso, conceptos e ideas abstractas. Las entidades poseen atributos y

    mantienen relaciones entre ellas.

    Los modelos clsicos de tratamiento de los datos son:

    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.

    en red: Este modelo 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

  • 3

    relacional: Desde los aos 80 es el modelo 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 sobre los 2 modelos anteriores, como es el 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.

    Ejemplo de base de datos relacional

    Hoy tambin destaca la utilizacin de bases de datos distribuidas ya que cada vez es ms

    corriente el uso de arquitecturas de cliente-servidor y trabajo en grupo. Los principales

    problemas que se generan por el uso de la tecnologa de bases de datos distribuidas se refieren a

    la duplicidad de datos y a su integridad al momento de realizar actualizaciones a los mismos.

    Adems, el control de la informacin puede constituir una desventaja, debido a que se encuentra

    diseminada en diferentes localizaciones geogrficas.

    Recientemente han hecho su aparicin los modelos de bases de datos orientadas a objetos. En

    estos, el esquema de la base de datos est representada por un conjunto de clases que definen

    las caractersticas y el comportamiento de los objetos que conformarn la base de datos. La

    diferencia principal respecto a los modelos anteriores es la no positividad de los datos. Esto es,

  • 4

    con una base de datos tradicional, las operaciones que se tienen que efectuar en los datos se les

    piden a las aplicaciones que los usan. Con una base de datos orientada a objetos sucede lo

    contrario, los objetos memorizados en la base de datos contienen tanto los datos como las

    operaciones posibles con tales datos. En cierto sentido, se podr pensar en los objetos como en

    datos a los que se les ha dotado de "cierta inteligencia" que les permite saber cmo

    comportarse, sin tener que apoyarse en aplicaciones externas.

    La arquitectura de un sistema de base de datos se basa en 3 niveles distintos:

    nivel fsico: es el nivel ms bajo de abstraccin y el nivel real de los datos almacenados.

    Este nivel define cmo se almacenan los datos en el soporte fsico, ya sea en registros o

    de cualquier otra forma, as como los mtodos de acceso. Este nivel lleva asociada una

    representacin de los datos, que es lo que denominamos Esquema Fsico.

    nivel conceptual: es el correspondiente a una visin de la base de datos desde el punto

    de visto del mundo real. Es decir se trata con la entidad u objeto representado, sin

    importar como est representado o almacenado ste. Es la representacin de los datos

    realizada por la organizacin, que recoge los datos parciales de los requerimientos de los

    diferentes usuarios y aplicaciones parciales. Incluye la definicin de los datos y las

    relaciones entre ellos. Este nivel lleva asociado un Esquema Conceptual.

    nivel de visin: son partes del esquema conceptual. El nivel conceptual presenta toda la

    base de datos, mientras que los usuarios, por lo general, slo tienen acceso a pequeas

    parcelas de sta. El nivel visin es el encargado de dividir estas parcelas. Un ejemplo sera

    el caso del empleado de una organizacin que tiene acceso a la visin de su nmina, pero

    no a la de sus compaeros. El esquema asociado a ste nivel es el Esquema de Visin.

    Otros autores utilizan la denominacin de nivel interno, nivel conceptual y nivel externo, para

    referirse a estos mismos niveles:

    Niveles de la arquitectura de un sistema de base de datos Este modelo de arquitectura permite establecer el principio de independencia de los datos, ya se

    trate de una independencia lgica o fsica. La independencia lgica significa que los cambios en

    el esquema lgico no deben afectar a los esquemas externos que no utilicen los datos

    modificados; la independencia fsica significa que el esquema lgico no se va a ver afectado por

    los cambios realizados en el esquema interno, correspondientes a modos de acceso, etc.

  • 5

    A la hora de disear una base de datos hay que distinguir por un lado el modelo de datos

    (instrumento) y por otro lado el esquema de datos (el resultado de aplicar ese modelo).

    Un modelo de datos es un conjunto de conceptos, reglas y convenciones que nos permiten

    describir los datos del universo del discurso. Un esquema es la estructura de datos obtenida tras

    aplicar dicho modelo.

    El modelo de datos es una cuestin fundamental a la hora de disear bases de

    datos en los sistemas de bases de datos se recoge estos 3 modelos

    fundamentales:

    Modelos lgicos basados en objetos: los dos ms extendidos son el modelo entidad-

    relacin y el orientado a objetos. El modelo entidad-relacin (E-R) se basa en una

    percepcin del mundo compuesta por objetos, llamados entidades, y relaciones entre

    ellos. Las entidades se diferencian unas de otras a travs de atributos. El orientado a

    objetos tambin se basa en objetos, los cuales contienen valores y mtodos, entendidos

    como rdenes que actan sobre los valores, en niveles de anidamiento. Los objetos se

    agrupan en clases, relacionndose mediante el envo de mensajes. Algunos autores

    definen estos modelos como "modelos semnticos".

    Modelos lgicos basados en registros: el ms extendido es el relacional, mientras que

    los otros dos existentes, jerrquico y de red, se encuentran en retroceso. Estos modelos

    se usan para especificar la estructura lgica global de la base de datos, estructurada en

    registros de formato fijo de varios tipos. El modelo relacional representa los datos y sus

    relaciones mediante tablas bidimensionales, que contienen datos tomados de los

    dominios correspondientes. El modelo de red est formado por colecciones de registros,

    relacionados mediante punteros o ligas en grafos arbitrarios. el modelo jerrquico es

    similar al de red, pero los registros se organizan como colecciones de rboles. Algunos

    autores definen estos modelos como "modelos de datos clsicos".

    Modelos fsicos de datos: muy poco usados, son el modelo unificador y el de memoria

    de elementos. Algunos autores definen estos modelos como "modelos de datos

    primitivos".

    Los objetivos del modelo de datos son, por un lado formalizar y definir las estructuras

    permitidas para representar los datos, y por otro, disear la base de datos.

    En el diseo de una base de datos, hay que tener en cuenta distintas consideraciones, entre

    las que destacan:

    la velocidad de acceso

    el tamao de la informacin

    el tipo de informacin

    la facilidad de acceso a la informacin

    la facilidad para extraer la informacin requerida

  • 6

    el comportamiento del sistema de gestin de bases de datos con cada tipo de

    informacin.

    Sistemas de Gestin de Bases de Datos DBMS (Data Base Management

    System) Para plasmar los tres niveles en el enfoque o modelo de datos seleccionado, es necesario un

    programa o aplicacin que acte como interfaz entre el usuario, los modelos y el sistema fsico.

    Esta es la funcin que desempean los Sistemas de Gestin de Bases de Datos. Un Sistema de

    Gestin de Bases de Datos, tambin llamado DBMS (Data Base Management System) no es ms

    que un paquete de software, que se ejecuta en un ordenador anfitrin (host) que es quien

    centraliza los accesos a los datos y acta de interfaz entre los datos fsicos y los usuarios. Este

    sistema es capaz de llevar a cabo funciones como la creacin y gestin de la base de datos

    misma, el control de accesos y la manipulacin de datos de acuerdo a las necesidades de cada

    usuario.

    Un Sistema Gestor de base de datos (SGBD) es un conjunto de programas que permiten crear y

    mantener una Base de datos, asegurando su integridad, confidencialidad y seguridad. Por tanto

    debe permitir:

    - Definir una base de datos: especificar tipos, estructuras y restricciones de datos.

    - Construir la base de datos: guardar los datos en algn medio controlado por el mismo SGBD

    - Manipular la base de datos: realizar consultas, actualizarla, generar informes.

    As se trata de un software de propsito general. Ejemplo de SGBD son Oracle, My SQL, Postgree,

    Access, Informix y SQL Server de Microsoft .

    As pues, las bases de datos pueden ser creadas, mantenidas y gestionadas por una serie de

    aplicaciones denominadas Sistemas de Gestin de Bases de Datos (SGBD). De esta forma,

    cualquier usuario puede crear una base de datos siguiendo unos parmetros normalizados que

    permiten que pueda ser consultada por otros usuarios. Un sistema de gestin de base de datos

    est formado por personas, mquinas, programas y datos. Estos sistemas de gestin abarcan el

    conjunto de rutinas de software interrelacionadas cada una de las cuales es responsable de una

    determinada tarea.

    Los componentes con los que debe contar un sistema de gestin de bases

    de datos ideal: Un lenguaje de definicin de esquema conceptual.

  • 7

    Un sistema de diccionario de datos.

    Un lenguaje de especificacin de paquetes de entrada/salida.

    Un lenguaje de definicin de esquemas de base de datos.

    Una estructura simtrica de almacenamiento de datos.

    Un mdulo de transformacin lgica a fsica.

    Un subsistema de privacidad de propsito general.

    Un subsistema de integridad de propsito general

    Un subsistema de reserva y recuperacin de propsito general.

    Un generador de programas de aplicacin.

    Un generador de programas de informes.

    Un lenguaje de consulta de propsito general.

    Los SGBD tienen dos funciones principales que son: La definicin de las estructuras para almacenar los datos.

    La manipulacin de los datos.

    Adems, los SGBD deben incorporar como herramienta fundamental dos tipos de lenguajes: uno

    para la definicin de los datos, y otro para la manipulacin de los mismos. El primero se

    denomina DLL (Data Definition Language) y es el que provee de los medios necesarios para

    definir los datos con precisin, especificando las distintas estructuras. El segundo se conoce

    como DML (Data Manipulation/Management Language) y es el facilita a los usuarios el acceso y

    manipulacin de los datos.

    Antes de la existencia de las bases de datos, los ordenadores trabajaban en lo que se conoce

    como "Sistemas de procesamiento de Archivos" en los que se guardaban los datos para ser

    procesados por programas escritos especialmente para cada clase de archivo; esto conduca a un

    sistema monoltico y de difcil mantenimiento con una serie de inconvenientes como la dificultad

    de acceso a ciertos datos de informacin, el aislamiento de datos, la falta de integridad, los

    problemas de atomicidad en las operaciones, los problemas de acceso concurrente, la falta de

    seguridad, etc. Para resolver estos problemas se desarrollaron los Sistemas de Gestin de Bases

    de Datos cuyas caractersticas hacen al sistema mucho ms eficiente que los sistemas de

    procesamiento de archivos. Algunas de estas mejoras se basan en la existencia de una sola copia

    de los datos para que todos los programas trabajen con ella, lo que se denominado obtencin de

    redundancia mnima, para de esta manera poder eliminar la inconsistencia de los datos; o la

    capacidad de interactuar en un ambiente cliente/servidor donde los clientes o usuarios (ya sea

    en una intranet o desde Internet) puedan trabajar con un un conjunto nico de datos alojados en

    un servidor y donde varios clientes podran estar trabajando al mismo tiempo. Estas son slo

  • 8

    algunas de las caractersticas con que cuenta el modelo de base de datos relacional y existen

    diversos motores de base de datos que permiten trabajar ya sea con bases de datos existentes o

    creando nuevas con todas las capacidades de trabajo en red. Numerosas empresas se han

    volcado al desarrollo de sistemas de gestin de bases de datos

    como Oracle, Informix, PostgreSQL, Sybase, Microsoft, etc. y existen tanto soluciones

    comerciales de pago, como soluciones de acceso libre. los sistemas de gestin de bases de datos

    que ms se utilizan en la actualidad son los que se pueden integrar en la red, entre los que

    destacan:

    MySQL: se trata de la base de datos relacional de cdigo abierto ms popular en

    Internet. Existen distribuciones para distintas plataformas (Win32/NT, Unix/Linux), y en

    muchas de ellas, como Red Hat Linux, se instala por defecto. Actualmente es propiedad

    de una empresa sueca llamada MySQL AB, que se encarga de su desarrollo y ofrece

    servicios auxiliares de consultora y soporte tcnico. El software es gratuito, pero, su uso

    en algunas aplicaciones est sujeto a licencia de pago.

    mSQL (Mini SQL): se trata de un gestor de bases de datos ligero, diseado para

    proporcionar acceso rpido a conjuntos relativamente pequeos de datos almacenados

    en sistemas con poca memoria. Implementa un subconjunto de SQL e inicialmente fue

    desarrollado como un proyecto acadmico en cdigo abierto.http://www.hughes.com.au

    PostgreSQL: es un gestor de bases de datos Relacional-Objetual. Es uno de los sistemas

    de gestin de bases de datos relacional de cdigo abierto ms antiguos, pues la primera

    versin data de 1985. Est muy extendido en el mundo Unix/Linux ya que muchas

    distribuciones Linux, como Red Hat lo instalan por defecto, aunque existen versiones para

    plataformas Windows. Soporta casi todas las construcciones SQL, tiene una amplia

    conectividad y una gran diversidad de herramientas

    disponibles. http://www.postgresql.org

    Microsoft SQL Server: aunque Microsoft cuenta con productos de escritorio para

    gestin de bases de datos como Access, este es el sistemas de gestin de bases de datos

    ms potente. Se integra en la nueva plataforma .NET y funciona sobre Windows

    NT/2000. http://www.microsoft.com/sql/default.asp

    Informix: las herramientas y productos de Informix han estado presentes en el mercado

    de bases de datos de forma constante, pero hoy esta empresa ha sido adquirida por

    IBM. http://www.informix.com

    Sybase Adaptative Server: proporciona una plataforma diseada para soportar

    aplicaciones que utilizan transacciones de manera intensiva. http://www.sybase.com

    Sistemas Oracle: existen un gran nmero de sistemas desarrollados por la empresa

    Oracle, una de las compaas que desarrollan bases de datos que tienen una mayor

    presencia en la Web actual. Se trata de sistemas muy potentes, configurables, escalables

    y confiables y que proporcionan bastantes funcionalidades, muchas de ellas no

    soportadas por los sistemas de gestin de bases de datos de cdigo libre. Sin embargo, no

  • 9

    son gratuitos y debido a las grandes posibilidades de configuracin que ofrecen, y slo

    pueden ser utilizados por expertos. http://www.oracle.com/

    De los 6 sistemas anteriores, los 3 primeros son libres y el resto son soluciones comerciales de

    pago. Una de las tendencias ms claras en la Web actual es integrar el acceso a datos en los

    servidores de aplicaciones. Esta tendencia llevada a sus extremos hace que casi todos los

    fabricantes de sistemas de gestin de bases de datos comerciales ofrezcan sus propios servidores

    de aplicaciones que se integran a bajo nivel con los productos de bases de datos de la misma

    empresa. Como ejemplos Sybase Enterprise Server y Oracle Application Server.

    Tanto los sistemas de tratamiento y recuperacin de informacin documental (STRID) como los

    sistemas de bases de datos (SGBD) tienen las mismas bases tericas, aunque estos ltimos sean

    ms rgidos y sujetos a normas fijas por tratar datos ms precisos y homogneos. Lo corriente es

    que aparezcan programas y aplicaciones mixtas que adoptan tcnicas comunes a ambos. Lo

    cierto que todos estos sistemas de recuperacin de informacin son posibles gracias a la

    existencia de programas y aplicaciones que ejecutan ecuaciones de bsqueda y que son capaces

    de trasladar una pregunta del usuario realizada en lenguaje natural, a los lenguajes

    documentales.

    Motor de base de datos. El gestor de base de datos por s solo no sirve pues no cuenta con lo ms importante un motor, el

    motor es el que maneja lenguajes de programacin y procedimientos almacenados, es decir un

    gestor solo puede guardar , manipular y abrir archivos , pero el motor es el que programa

    eventos , salidas , cdigos ejecutables , llamadas y las operaciones principales de una base de

    datos.

    Sistema de gestin de contenidos. Content Management System ms conocido por sus siglas CMS, es un programa informtico que

    permite crear una estructura de soporte (framework) para la creacin y administracin de

    contenidos, principalmente en pginas web, por parte de los administradores, editores,

    participantes y dems usuarios.

    Consiste en una interfaz que controla una o varias bases de datos donde se aloja el contenido del

    sitio web. El sistema permite manejar de manera independiente el contenido y el diseo. As, es

    posible manejar el contenido y darle en cualquier momento un diseo distinto al sitio web sin

    tener que darle formato al contenido de nuevo, adems de permitir la fcil y controlada

    publicacin en el sitio a varios editores. Un ejemplo clsico es el de editores que cargan el

    contenido al sistema y otro de nivel superior (moderador o administrador) que permite que

    estos contenidos sean visibles a todo el pblico (los aprueba).

  • 10

    Cules son las diferencias principales entre un sistema de

    procesamiento de archivos y un SGBD? Antes de contestar esta pregunta debemos saber que un Sistemas de gestin de Base de Datos

    (SGBD) consiste en una coleccin de datos interrelacionados y un conjunto de programas para

    acceder a dichos datos. La coleccin de datos, normalmente llamada base de datos contiene

    informacin relevante de un sistema. El objetivo principal de un SGBD es proporcionar una forma

    prctica de almacenar y recuperar la informacin de manera que sea tanto practica como eficaz.

    Por otra parte un sistema de procesamiento de archivos nos permite almacenar

    informacin pero mantener informacin en una organizacin en un sistema de procesamiento

    de archivos tiene una serie de inconvenientes importantes, como:

    Redundancia e inconsistencia de datos.

    Dificultad en el acceso a los datos.

    Aislamiento de datos.

    Problemas de integridad.

    Problemas de atomicidad. (Falla de dispositivos a nivel fsico)

    Anomalas en el acceso concurrente.

    Problemas de seguridad.

    Conociendo esto, podemos decir que las principales diferencias son que, un sistema de

    procesamiento de archivo no nos permite indexar la informacin, realizacin bsquedas

    complejas, consistencia en la informacin y ni una fcil administracin de ella.

    DISEO DE BASES DE DATOS En el diseo de una base de datos, el tamao de la misma es una cuestin fundamental, puesto

    que ste afecta tanto a la eficiencia en el almacenamiento, como a la agilidad en la bsqueda y

    recuperacin. Como los datos pueden estar en cualquier morfologa (texto, imagen, audio, etc.),

    en algunos casos se debern utilizar tcnicas de compresin de datos con el fin de disminuir el

    espacio y tamao de la base, pero estas tcnicas de compresin debern ir acompaadas de las

    correspondientes tcnicas de indizacin que hagan posible la recuperacin de dichos datos.

    Tradicionalmente se ha hecho una distincin clara entre 2 tipos de bases de datos:

    Bases de datos referenciales: aquellas bases de datos que ofrecen registros que a su vez

    son representaciones de documentos primarios, y entre las que cabe distinguir:

    o bibliogrficas: aquellas cuyo contenido son registros de tipo bibliogrfico.

    o directorios: aquellas cuyo contenido est referido a la descripcin de otros

    recursos de informacin, como por ejemplo un directorio de bases de datos.

  • 11

    Bases de datos fuente: son las que ofrecen el documento completo, no una

    representacin del mismo, y entre las que cabe distinguir:

    o numricas: contienen informacin de tipo numrico.

    o textuales: contienen el texto completo de un documento.

    o mixtas: combinan ambos tipos de informacin.

    Sin embargo, el desarrollo de las aplicaciones multimedia ha dado un vuelco al concepto

    tradicional de base de datos, que slo integraba elementos de informacin textual y numrica.

    Con el multimedia, han hecho su aparicin otro tipo de objetos: grficos, sonoros y audiovisuales

    que comparten el mismo entorno que los datos textuales y numricos. La aparicin del CD-

    ROM y otros soportes pticos como el DVD con gran capacidad de almacenamiento de datos y

    alta velocidad de lectura, han hecho posible el desarrollo de las bases de datos multimedia. A la

    vez, se han ido estandarizando poco a poco los formatos de archivo grficos, de audio y de vdeo,

    y se han perfeccionado los mtodos de compresin de este tipo de datos, ya que ocupan grandes

    cantidades de memoria.

    Adems, el desarrollo del hipertexto, al permitir la conectividad entre las referencias y los

    documentos fuente a travs de los enlaces, ha roto tambin las fronteras entre documentos

    primarios y documentos secundarios, aunando en un mismo espacio datos referenciales y acceso

    directo al documento fuente.

    Hasta pocas recientes, las bases de datos eran productos comerciales desarrollados y

    mantenidos por ciertas empresas que las comercializaban bien en formato CD-ROM o bien las

    distribuan para su consulta, previo pago, en lnea va telnet. La mayora eran bases de datos

    bibliogrficas o de legislacin. Las organizaciones tambin contaban con sus propias bases de

    datos construidas sobre los sistemas de gestin ms conocidos para crear y mantener bases de

    datos como File Maker, Knosys, Access, etc. Hoy todos estos programas se han visto obligados a

    ser compatibles con la Web y a ofrecer la posibilidad de acceder, buscar y recuperar los datos en

    lnea va protocolo http. De esta forma, se han desarrollado y comercializado una serie de

    herramientas y aplicaciones, comnmente denominadas pasarelas web, que permiten consultar

    las viejas -o nuevas- bases de datos creadas con estos sistemas de gestin mediante el navegador

    web, pero tambin, la existencia de estas herramientas ha favorecido el hecho de que cualquier

    persona pueda hoy publicar su propia base de datos en su pgina web, para que pueda ser

    consultada por cualquier usuario de la red. Estas pasarelas no son ms que herramientas de

    software que permiten la comunicacin entre el servidor web y la base de datos.

    As pues, la World Wide Web se ha convertido en s misma, en una interfaz de acceso a datos que

    puede ser utilizada por cualquier usuario. Los nodos de un hipertexto no se limitan a

    incluir texto, imagen o sonido, sino tambin scripts y otros elementos como APIs (Application

    Programming interface) o controladores para conectividad de bases de datos e intercambio de

    informacin tales como OLE (Open Database Connectivity), CGI (Common Gateway Interface),

    JDBC (Java Data Base Connectivity), SQL LINKS etc. Todos estos objetos son los que hacen posible

    la existencia de elementos y documentos dinmicos y los que aportan un

    verdadero dinamismo al hipertexto. Se trata de componentes que deben ser diseados en la

  • 12

    interfaz de programacin para acceso a datos del hipertexto y que comprende tanto el diseo e

    interfaz de Objetos de Acceso a Datos, como la interfaz de programacin de aplicaciones.

    De esta forma, se pueden construir bases de datos utilizando aplicaciones y sistemas de gestin

    de bases de datos como Microsoft Access, Oracle, Sybase, MySQL, MSQL o SQL Server, etc. y, por

    medio de una serie de herramientas de acceso (CGI, DAO, ODBC, etc.) y desde entornos de

    desarrollo distintos, hacer que estos datos sean accesibles va Web para cualquier usuario que

    quiera hacer una consulta en lnea.

    El acceso a los datos se puede realizar mediante distintas tecnologas Web, entre las que

    destacan:

    CGI: (Common Gateway Interface o Interfaz de pasarela

    comn) http://hoohoo.ncsa.uiuc.edu/cgi/ es la especificacin de un protocolo que

    permite al servidor Web (HTTP) comunicarse con programas o scripts externos. Los

    programas CGI trabajan en el servidor Web y pueden implementarse utilizando diferentes

    lenguajes de programacin (COBOL, C, Perl, etc.). Para que el usuario recupere un

    documento dinmico HTML a travs de CGI, generalmente se sigue la siguiente secuencia

    bsica:

    1. El usuario cumplimenta los campos de un formulario HTML y pulsa el botn de

    envo. Antes de proceder al mismo, el navegador determina el mtodo HTTP para

    el envo, identifica los campos del formulario, construye el conjunto de datos

    como pares: nombre del control / valor asociado y codifica el conjunto de datos.

    2. El navegador realiza una solicitud HTTP al servidor Web, enviando el conjunto de

    datos del formulario para que sea procesado por el programa especificado en el

    atributo del formulario action.

    3. El servidor recibe la solicitud y a partir de ella determina que se le est pidiendo

    la activacin de un programa CGI. Se lanza un nuevo proceso CGI que recibe la

    informacin necesaria para su ejecucin.

    4. El programa CGI se ejecuta procesando la informacin y devolviendo el resultado

    al servidor Web.

    5. El servidor recibe el resultado de proceso CGI y prepara una respuesta

    HTTP vlida (anexando alguna cabecera) que se le enva al cliente.

    6. El navegador muestra el resultado recibido que contendr informacin

    dependiente de lo que el usuario introdujo en el formulario HTML.

    ASP: Microsoft ha desarrollado sus propias aplicaciones y servidores. Las primeras

    soluciones se basaban en el servidor Web ISS (Internet Information Server), el lenguaje de

    script ASP (Active Server Pages) y la tecnologa de objetos distribuidos COM (Componente

    Object Model). ASP proporciona acceso a datos apoyndose en los objetos ADO (ActiveX

    Data Objects) y ODBC. El uso de la interfaz ODBC le permite a ASP trabajar sobre

    cualquier sistema gestor de bases de datos que proporcione un controlador

  • 13

    o driver (MySQL, SQL Server, Oracle, Informix, etc.). Los objetos ADO, basados en la

    tecnologa COM (Component Object Model), ofrecen mtodos que encapsulan el acceso

    a datos para su utilizacin en pginas ASP (Connection, RecordSet, Command, etc.). Se

    puede utilizar ASP sobre un IIS (Internet Information Server) ejecutndose en Windows

    NT Server 4.0. Se necesita dar de alta un DSN (Data Source Name) que asocia el SGBD

    (MySQL), el nombre de la fuente de datos y un driver ODBC para MySQL.

    .NET es la ltima aplicacin desarrollada por Microsoft e incluye ASP+, C#, mientras deja

    de lado las anteriores inversiones de Microsoft en Java (y programas relacionados como

    Microsoft Visual J++). Todas estas soluciones se basan en estndares propietarios, aunque

    en la plataforma .NET se incluye soporte a SOAP.

    JSP: El acceso a base de datos desde JSP (Java Server Pages), al igual que desde Servlets,

    se apoya en la tecnologa JDBC de Java. Para ello se precisa un controlador o driver que

    proporcione el acceso a la base de datos subyacente (MySQL). JSP es un lenguaje muy

    potente de cdigo abierto que permite crear de manera fcil aplicaciones Web. J2EE (Java

    2 Enterprise Edition) es una tecnologa de las ms utilizadas. A veces se utiliza el trmino:

    servidores de aplicaciones Java para referirse a aquellos servidores de aplicaciones que

    implementan de forma adecuada las soluciones propuestas por J2EE. J2EE es una

    especificacin que propone un estndar para servidores de aplicaciones. Define

    diferentes tecnologas e indica cmo deben trabajar juntas. Todos los servidores de

    aplicaciones J2EE deben pasar un test de compatibilidad, que garantiza la correcta

    implementacin de las tecnologas Java. Muchos grandes fabricantes como IBM, Sun

    Microsystems, Hewlett-Packard, Oracle, Sybase, etc. utilizan J2EE. Sin embargo, Java

    consume una gran cantidad de recursos y la mquina virtual Java es

    lenta.http://java.sun.com/products/jsp/

    PHP: PHP o Hypertext Preprocessor ofrece interfaces propias de acceso a multitud de

    fuentes de datos: BBDDs (MySQL, mSQL, Oracle 8, etc.), servidores de directorio (LDAP),

    texto en XML, etc. Todas ellas estn documentadas en la pgina Web de

    PHP: http://www.php.net/.

    Disear hoy una web se ha convertido en una labor compleja puesto que se exigen

    conocimientos de arquitectura de la informacin en sus distintas facetas y una de ellas, es

    administrar y gestionar bases de datos. La Web es aqu entendida como interfaz de software que

    permite una serie de funcionalidades como que el usuario pueda interrogar y consultar de forma

    directa a la base de datos y obtener las referencias o el acceso directo a los recursos o

    documentos buscados.

  • 14

    Fuente: Ernest Abadal. Esquema de funcionamiento.

    Los SGBD suelen incluir herramientas de administracin que permiten ajustar el rendimiento en

    funcin de las necesidades particulares. Muchas empresas cuentan son sus propios

    administradores de bases de datos, pero tambin hay muchas otras que no, y lo ms probable es

    que el diseador web tenga que administrar tambin las bases de datos. Sin embargo, la

    complejidad del diseo ha dado lugar al nacimiento de nuevas profesiones que se encargan de

    llevar a cabo procesos tales como el anlisis o minera de datos (data mining) o la distribucin de

    los mismos (data warehouse).

    Como se ha afirmado anteriormente, existen sistemas de gestin de bases de datos tanto de uso

    libre, como soluciones comerciales de pago. Una de las tendencias ms claras en la Web actual

    es integrar el acceso a datos en los servidores de aplicaciones y esto ha conducido a que casi

    todos los fabricantes de sistemas de gestin de bases de datos comerciales ofrezcan sus propios

    servidores de aplicaciones que se integran a bajo nivel con los productos de bases de datos de la

    misma empresa. Como ejemplos, tenemos Sybase Enterprise Server y Oracle Application Server.

    Un servidor de aplicaciones no es ms que un cambio de nombre para algunos servidores

    Web de nueva generacin que permiten construir aplicaciones. Suelen asociarse con servidores

    de alto rendimiento pensados para dar servicio a sitios Web con grandes necesidades para

    gestionar movimientos de datos, afluencia de visitas, atencin de transacciones hacia bases de

    datos, etc. Generalmente los fabricantes del sector tienen a disposicin del pblico un servidor

    Web bsico y otro con multitud de extensiones integradas al que llaman servidor de aplicaciones.

  • 15

    Fuente: LPEZ FRANCO, Jos Manuel. Arquitectura de funcionamiento de un servidor de

    aplicaciones.

    Un servidor de aplicaciones clsico se apoya en un modelo cliente/servidor de tres capas:

    Presentacin: una interfaz, generalmente grfica que reside en los clientes. El ejemplo

    tpico es un navegador.

    Lgica de negocio: donde reside el servidor de aplicaciones y el conjunto de programas a

    los que da soporte.

    Almacenamiento: generalmente una base de datos.

    Los servicios aadidos a los servidores de aplicaciones suelen ser: generacin de cdigo HTML

    XML, trabajo con bases de datos y gestin de transacciones, funcionamiento multiproceso para

    atender a distintas peticiones, establecimiento de distintas sesiones para acceso de usuarios,

    mecanismos de seguridad y autentificacin, monitorizacin para evitar fallos, etc.

    No es fcil saber cuntos servidores hay en Internet, pero existen empresas consultoras

    independientes que se dedican a medir su evolucin como http://www.netcraft.com Los

    servidores ms utilizados son: Apache, Microsoft IIS, iPlanet de Netscape, Zeus, thttpd, Rapidsite,

  • 16

    etc. Un listado muy completo de servidores de aplicaciones puede encontrarse

    en: http://www.serverwatch.com/appservers.html

    De cualquier forma, hay que tener en cuenta que, aparte de cmo se almacenan los datos en la

    base de datos, una cuestin importante es la interfaz de presentacin de esos datos. Las

    interfaces o presentaciones de una aplicacin hacia el usuario han ido evolucionando a travs del

    tiempo y, actualmente se utilizan muchos lenguajes visuales denominados de cuarta generacin

    como son: Visual Fox Pro, Visual Basic, Delphi, etc. Tambin los ambientes Web, se han vuelto

    una opcin viable para las aplicaciones distribuidas en Internet y esto se ha logrado mediante el

    uso de ciertas herramientas como son: HTML, DHTML y JavaScripts.

    Con tecnologas como el scripting y DHTML, los desarrolladores de aplicaciones pueden crear

    acciones con interfaces de Web funcionales, basadas para la entrada de datos o salida de

    resultados de bsqueda sin usar controles comunes o applets. La tendencia es que las empresas

    intenten mejorar la interfaz hacia el usuario para que ste tenga la oportunidad de explotar la

    mayor cantidad de informacin, en una nica pantalla o ventana del sistema.

    Las interfaces de programacin denotan el proceso de acceso y manipulacin de los datos a una

    base de datos, partiendo de la aplicacin. El siguiente esquema muestra 4 niveles o interfaces:

    Interfaces de Programacin para el acceso a datos.

    La primera interfaz corresponde a la de Aplicacin, la cual abarca y/o corresponde a cada uno de

    los programas clientes.

    La Interfaz de Objetos de Acceso a Datos, se encuentra como punto medio entre las aplicaciones

    y las API's que llegan a ser necesarias para el acceso a las bases de datos. Entre las tecnologas

    que pertenecen a la Interfaz de Objetos de Acceso de Datos encontramos: DAO (Data Access

    Objects), ADO (ActiveX Data Objects), RDO (Remote Data Object), RDS (Remote Data Service) y

    MIDAS (Middle-tier Distributed Application Service). Su funcin es encapsular los componentes

    que se encuentran en la interfaz que corresponde a la de API's, con la finalidad de reducir el

    desarrollo de la aplicacin y los costos de mantenimiento y deben situarse en todos los equipos

    que ejecuten la aplicacin, ya que se encuentran casi de manera conjunta con la aplicacin.

    Por su parte, la Interfaz de Programacin de Aplicaciones (Application Programming Interface,

    API), se encarga de mantener el dilogo con la base de datos, para poder llevar a cabo el acceso y

    manipulacin de los datos. Algunos de los componentes que forman parte de esta interfaz son

  • 17

    los siguientes: OLE DB, ODBC (Open Database Connectivity), JDBC (Java Data Base Connectivity),

    ISAPI (Internet Server Application Programming Interface) y CGI (Common Gateway Interface).

    La funcin que tienen las API's, es la de ser una interfaz entre las aplicaciones y las bases de

    datos, llevando sta tarea unas veces a travs de los clientes y otros a travs del servidor de base

    de datos. Esto quiere decir, que puede darse el caso de que el cliente conste de las tres primeras

    interfaces o niveles, o que se encuentren las dos ltimas en el servidor. La interfaz

    correspondiente a la base de datos, es donde se encontrar el servidor y toda la informacin

    depositada en l.

    Para poder accesar y manipular la informacin de una base de datos, es necesario llevar a cabo la

    instalacin de ciertos API's o controladores, que son indispensables para efectuar la conectividad

    de los datos externos, y vincularlos a la aplicacin para su correcta y adecuada utilizacin.

    Las API's que se describen a continuacin, son un claro ejemplo del proceso correspondiente a la

    conectividad de datos.

    ODBC (Open Data Base Connectivity): Esta tecnologa proporciona una interfaz comn

    para tener acceso a bases de datos SQL heterogneas. ODBC est basado en SQL

    (Structured Query Language) como un estndar para tener acceso a datos. ODBC permite

    la conexin fcil desde varios lenguajes de programacin y se utiliza mucho en el entorno

    Windows. Sobre ODBD Microsoft ha construido sus extensiones OLE DB y ADO. Los OCBD

    se pueden clasificar en 3 categoras:

    o Los ODBC's que permitan la realizacin de consultas y actualizaciones.

    o Los ODBC's que mediante ellos se pueda llegar a la creacin de tablas en la base

    de datos.

    o Los ODBC's propios de los DBMS, los cuales se pueden llegar a manipular ciertas

    herramientas de administracin.

    CGI (Common Gateway Interface): es una de las soluciones que se est utilizando ms

    para la creacin de interfaces Web/DBMS. Entre las ventajas de la programacin CGI,

    destaca la sencillez, ya que es muy fcil de entender, adems de ser un lenguaje de

    programacin independiente, ya que los escritos CGI pueden elaborarse en varios

    lenguajes. Tambin es un estndar para usarse en todos los servidores Web, y funcionar

    bajo una arquitectura independiente, ya que ha sido creado para trabajar con cualquier

    arquitectura de servidor Web. Como la aplicacin CGI se encuentra funcionando de forma

    independiente, no pone en peligro al servidor, en cuanto al cumplimiento de todas las

    tareas que ste se encuentre realizando, o al acceso del estado interno del mismo. Pero

    el CGI presenta cierta desventaja en su eficiencia, debido al que el servidor Web tiene

    que cargar el programa CGI y conectar y desconectar con la base de datos cada vez que se

    recibe una requisicin. Adems, no existe un registro del estado del servidor, sino que

    todo hay que hacerlo manualmente.

  • 18

    ISAPI (Internet Server Application Programming Interface): Es la interfaz propuesta por

    Microsoft como una alternativa ms rpida que el CGI, y est incluida en el Servidor

    Microsoft Internet Information (IIS). As como los escritos CGI, los programas escritos

    usando ISAPI habilitan un usuario remoto para ejecutar un programa, busca informacin

    dentro de una base de datos, o intercambia informacin como otro software localizado

    en el servidor. Los programas escritos usando la interfaz ISAPI son compilados como

    bibliotecas de enlace dinmico (DLL - Dinamic Link Library), ya que son cargados por el

    servidor Web cuando ste se inicia. Dichos programas se vuelven residentes en memoria,

    por lo que se ejecutan mucho ms rpido que las aplicaciones CGI, debido a que

    requieren menos tiempo de uso de CPU al no iniciar procesos separados. Uno de los

    programas ISAPI ms usados es el HTTPODBC.DLL que se usa para enviar y/o devolver

    informacin hacia y desde las bases de datos, a travs de ODBC. Adems, ISAPI permite

    realizar un procesamiento previo de la solicitud y uno posterior de la respuesta, con lo

    cual manipula la solicitud/respuesta HTTP. Los filtros ISAPI pueden utilizarse para

    aplicaciones tales como autenticacin, acceso o apertura de sesin.

    NSPAI. es la API propuesta por Netscape para extender la funcionalidad de sus

    servidores.

    DBI (PERL): Perl es uno de los lenguajes ms utilizados para programacin en la Web y

    proporciona su propia interfaz de acceso a datos, llamada DBI (DataBase Interface). Es

    especialmente utilizado bajo plataformas Linux/Unix, solucionando las complejidades de

    ODBC en estos sistemas. DBI acta como una abstraccin para un conjunto de

    mdulos DBD (DataBase Driver). Cada mdulo DBD acta como manejador de un sistema

    gestor de base de datos distinto. Existen mdulos para prcticamente cualquier SGBD

    (Oracle, Informix, MySQL, etc.) y puentes hacia otras tecnologas como ADO, JDBC ...

    JDBC (Java Data Base Connectivity): se trata del estndar para la conectividad entre el

    lenguaje Java y un amplio rango de sistemas gestores de bases de datos. Los JDBC pueden

    desenvolverse tanto en un nivel cliente, esto es, trabajando del lado de la aplicacin, o en

    el servidor directamente relacionado con la base de datos. Cuando se encuentre a nivel

    cliente, trabajar con la tecnologa ODBC para acceso a los datos. Hay diversos tipos de

    controladores JDBC:

    o El puente JDBC-OBDC: fue uno de los primeros controladores disponibles,

    implementa un enlace para utilizar un controlador ODBC desde Java. Con el

    tiempo han surgido controladores JDBC especficos para cada base de datos que

    mejoran el rendimiento del puente JDBC-ODBC.

    o Controladores Java parcialmente nativos: usan tanto cdigo Java como binario

    especfico de cada plataforma.

    o Controladores JDBC-Net de Java puro: son controladores escritos completamente

    en Java que entienden un protocolo de red estndar (HTTP, etc.) y permiten

    comunicarse con un servidor de acceso a bases de datos, que es el que finalmente

    provee el acceso al SGBD especfico (posiblemente con ODBC).

  • 19

    o Controladores de protocolo nativo en Java puro: escritos en Java puro, utilizan el

    protocolo especfico de la marca del SGBD.

    SQL LINKS: se trata de controladores que se encargan de realizar la comunicacin remota

    entre la aplicacin y los servidores remotos de bases de datos, permitiendo una

    comunicacin casi directa y muy rpida. Los ha desarrollado la empresa Inprise y

    permiten conexiones con otros servidores de bases de datos como

    Interase, Oracle, Sybase, Informix, Microsoft SQL Server, etc.

    Las 2 tecnologas ms importantes de conectividad a la la base de datos son ADO y JDBC.

    ADO:

    Existen varios niveles o interfaces para lograr la comunicacin o acceso a la base de datos a

    travs de la aplicacin. El siguiente esquema muestra 2 de los principales niveles, dentro de los

    cuales se encuentra ADO.

    Por lo general, las interfaces de objetos de datos son ms fciles de usar que las APIS, aunque las

    APIs ofrecen ms funcionalidades. ADO (ActiveX Data Objects) es la interfaz de objetos de datos

    para OLE DB, y RDO (Remote Data Objects) es la interfaz para el objeto ODBC.

    ADO encapsula el API OLE DB en un modelo objeto simple que reduce el desarrollo,

    mantenimiento y costo de la aplicacin. Es muy fcil de usar, utiliza lenguajes de programacin

    como Visual Basic, Java, C++, VBScript y JScript, puede accesar datos desde cualquier recurso OLE

    DB y adems, es extensible. Es la interfaz utilizada por Microsoft.

    El modelo ADO, basado en el modelo de objetos, define una jerarqua de objetos programables

    que pueden ser usados por desarrolladores de pginas Web para acceder a la informacin

    almacenada en una base de datos. Una jerarqua es un grupo de objetos relacionados que

  • 20

    trabajan juntos para un mismo propsito. Por ejemplo, en la siguiente figura, cada caja

    representa un objeto, y cada lnea representa una asociacin directa entre ellos.

    ADO est compuesto de siete objetos, algunos de alto nivel

    como Connection, Command y Recordset, que pueden ser creados y eliminados por el usuario y

    otros con distintas funcionalidades como designar propiedades de conexin, definir sentencias y

    ejecutarlas, optimizacin de consultas, etc. Estos elementos se representan en la siguiente

    figura:

    Cada uno de los objetos anteriores contiene una coleccin de objetos Property. El

    objeto Property permite a ADO mostrar dinmicamente las capacidades de un objeto especfico.

    ADO permite disear sitios web que pueden acceder repetidamente a la misma base de datos

    usando una misma bsqueda u otra similar. Se pueden compartir conexiones y esto significa una

    menor carga de trabajo para el servidor de la base de datos, un tiempo de respuesta ms rpida

    y ms accesos a pgina con xito.

    Existe un componente llamado RDS (Remote Data Service) que ofrece el ambiente de Acceso

    Universal a Datos, ya sea desde Internet o la World Wide Web, creando un marco de trabajo que

    permite una interaccin fcil y eficiente con los datos fuente OLE DB tanto en Intranets

    corporativas o en Internet. RDS ofrece la ventaja de obtener por el lado del cliente resultados de

    datos, actualizacin y soporte para controles ADO y ofrece el modelo de programacin OLE

    DB/ADO para manipular datos de las aplicaciones del cliente.

  • 21

    JDBC

    JDBC o Java Data Base Connectivity, creado por la empresa Sun, es la API estndar de acceso a

    bases de datos con Java. Sun opt por crear una nueva API en lugar de utilizar ODBC, porque esta

    ltima presentaba algunos problemas desde ciertas aplicaciones Java. ODBC es una interfaz

    escrita en lenguaje C, que al no ser un lenguaje portable, haca que las aplicaciones Java tambin

    perdiesen la portabilidad. Adems, ODBC ha de instalarse manualmente en cada mquina,

    mientras que los controladores (drivers) JDBC que estn escritos en Java son automticamente

    instalables y portables. El nivel de abstraccin al que trabaja JDBC es ms alto que el de ODBC y,

    de esta forma, se pueden crear libreras de ms alto nivel,

    Para trabajar con JDBC es necesario tener controladores que permitan acceder a las distintas

    bases de datos. Sin embargo, ODBC sigue siendo hoy en da la API ms popular para acceso a

    Bases de Datos, por lo que: Sun se ha visto obligada a disear un puente que permite utilizar la

    API de JDBC en combinacin con controladores ODBC.

    Las tecnologas que se emplea para la conectividad entre los datos y la aplicacin, se ha

    convertido en un factor muy importante a la hora de desarrollar un proyecto web que cuente

    con funcionalidad de acceso a datos. A continuacin se muestra un cuadro comparativo de las

    dos tecnologas ms importantes en este sentido: ActiveX Data Objects (ADO) y Java Data Base

    Connectivity (JDBC).

  • 22

    ADO JDBC

    Tecnologa elaborada por Microsoft

    Tiene la principal funcin de realizar la

    solicitud de los datos a la base de datos.

    Esta solicitud la realizar mediante la

    tecnologa OLE DB, la cual estar en

    contacto de manera directa con la base de

    datos.

    La tecnologa OLE DB slo se emplear

    cuando el DBMS pertenece de igual manera

    a Microsoft, como es SQL Server.

    ADO encapsular a ciertos objetos de OLE

    DB, para que de sta manera se realice la

    conexin con la base de datos.

    Para realizar la gestin de acceso a bases

    de datos heterogneas por parte de ADO,

    ste har uso de ciertos objetos de la

    tecnologa RDO (Remote Data Objects).

    RDO depender de los ODBCs para poder

    efectuar la conexin a la base de datos y

    con esto el acceso a la informacin.

    ADO podr encontrarse trabajando en una

    pgina web en conjunto con cdigo HTML;

    esto ser posible mediante un mecanismo

    de introduccin de instrucciones como es el

    VBscript.

    Los objetos que conforman al ADO, no son

    compatibles con otros lenguajes, solo por

    aquellos que pertenecen a la empresa

    Microsoft como son: Visual C++, Visual

    Basic, Visual Java, etc.

    Tecnologa hecha por Sun Microsistems.

    Tiene la funcin de ser un gestor para la

    aplicacin con respecto a la base de datos.

    Por primera vez el JDBC fue empleado,

    tomando como intermediario entre l y la

    base de datos al ODBC.

    Como modelo cliente/servidor, el JDBC se

    encontrar trabajando en el equipo cliente,

    conectndose directamente con la base de

    datos.

    Como modelo de tres capas, el JDBC se

    encontrar en una capa intermedia, donde

    todos los usuarios pasarn por l para poder

    accesar a la base de datos.

    Existen mdulos JDBC que son propios de

    los fabricantes de DBMS, que son utilizados

    para el rpido acceso a la informacin de las

    bases de datos de los mismos.

    JDBC no se encontrar ligado a trabajar con

    alguna tecnologa en especfica, ya que se

    elabor con la finalidad de ser portable.

    En aplicaciones Web, JDBC se encontrar

    laborando en conjunto con cdigo HTML,

    mediante el mecanismo del Java script.

    JDBC se elabor con la finalidad de poder

    ser compatible y portable para poder ser

    empleado en aplicaciones y para la conexin

    con bases de datos.

    Por ltimo, hay que destacar tambin una tecnologa llamada Web DB utilizada por algunos

    servidores de bases de datos, con la cual, un usuario puede solicitar la informacin que requiera

    y visualizarla a modo de respuesta en una pgina Web, que ser creada y elaborada por el propio

    servidor de base de datos.

  • 23

    El proceso que comprende desde la solicitud a la visualizacin de la informacin, puede ser

    representado de la siguiente manera:

    En este esquema anterior destacan:

    Navegador (browser): es la aplicacin mediante la cual, se tiene acceso libre a los

    servicios de Internet, y el medio que permite al usuario introducir la solicitud para

    visualizar la informacin, empleando el URL para especificar detalladamente el proceso

    que se desea ejecutar.

    Interfaz de Web: proporciona una interfaz para que un programa que se ejecute en el

    servidor genere como salida el cdigo HTML, en lugar de leer simplemente un archivo

    esttico de texto. Con sta interfaz se podrn crear las pginas Web de forma dinmica

    y/o utilizar la implementacin de formularios HTML. Esta interfaz permite tecnologas

    como los CGIs o aquellas otras que son propias del servidor de base de datos.

    Agente PL/SQL: es el eslabn final del proceso entre un navegador cliente y el servidor

    de base de datos. El agente ejecutar una llamada a un procedimiento almacenado en el

    servidor. Este procedimiento crear una pgina HTML dinmica como salida, y el agente

    devolver dicha salida al cliente a travs del navegador empleando de igual manera la

    Interfaz de Web.

    Base de Datos (BD). En ella se mantendr almacenada la informacin; se encargar de

    proporcionar los datos que le hayan solicitado previamente, al momento de la ejecucin

    de un procedimiento por parte del Agente PL/SQL.

    Esta herramienta es una muy buena opcin para pequeas o medianas empresas, en las cuales

    llegara a resultar muy costosa la implementacin de otro tipo de tecnologas ms caras y

    avanzadas.

    Bibliografa

    ABADAL, Ernest. "Diseo y creacin de una base de datos en un medio de comunicacin". En:

    FUENTES, M. Eulalia (ed.). Manual de Documentacin periodstica. Madrid, Sntesis, 1995.

    ABADAL, Ernest. "Bases de datos documentales en el web: anlisis del software para su

    publicacin". Hipertext.net, nm. 3, 2005.http://www.hipertext.net/web/pag255.htm

    ABADAL, Ernest. CODINA, Llus. Bases de datos documentales: caractersticas, funciones y

    mtodos. Madrid: Sntesis, 2005.

  • 24

    AGUST I MELCHOR, Manuel. VALIENTE GONZLEZ, Jos Miguel. Bases de datos para

    Multimedia: Recuperacin por

    Contenido. http://www.disca.upv.es/magustim/publicacions/docents/Intermedia2001/TEC_01.p

    df

    CARIDAD, Mercedes. "Bases de datos documentales: el acceso a la informacin". En: Lpez

    Yepes, Jos (coord.). Manual de informacin y documentacin. Madrid, Pirmide,1996.

    CMS-Spain.com http://www.ecm-spain.com/home.asp

    CODINA, Lluis. Bases de Datos Documentales: Talleres de Sistemas de Gestin de Bases de

    Datos Documentales.http://www.lluiscodina.com/metodos.htm#ii

    CODINA, L. FUENTES, M. E. "Documentacin periodstica y bases de datos: elementos para su

    fundamento como disciplina y propuesta de conjunto nuclear de bases de datos". En: Fuentes,

    M. E. (dir.). Anuari de biblioteconoma, documentaci e informaci. Barcelona, COBDC, 1999.

    DesarrolloWeb.com Desarrollo ASP a fondo. http://www.desarrolloweb.com/asp/

    DesarrolloWeb.com Manual sobre la plataforma

    .NET. http://www.desarrolloweb.com/manuales/48/

    DesarrolloWeb.com Manual de PHP 5. http://www.desarrolloweb.com/manuales/58/

    DesarrolloWeb.com Pginas dinmicas. http://www.desarrolloweb.com/manuales/7/

    DesarrolloWeb.com Taller de MySQL. http://www.desarrolloweb.com/manuales/34/

    DesarrolloWeb.com Tutorial de SQL. http://www.desarrolloweb.com/manuales/9/

    GARCA MORENO, M. Antonia. "Pasado y presente de las bases de datos en lnea. El caso

    espaol". Cuadernos de Documentacin Multimedia, nm. 10,

    2000. http://www.ucm.es/info/multidoc/multidoc/revista/num10/paginas/pdfs/magmoreno.pdf

    HORTH, Henry F. SILBERCHATZ, Abraham. Fundamentos de las bases de datos. McGraw Hill,

    1998.

    LPEZ FRANCO, Jos Manuel. Integracin de tecnologas a travs de servidores

    web.http://trevinca.ei.uvigo.es/~txapi/espanol/proyecto/superior/memoria/memoria.html

    LOPEZ GUZMN, Clara. "Bases de Datos". En Modelo para el Desarrollo de Bibliotecas

    Digitales Especializadas.http://www.bibliodgsca.unam.mx/tesis/tes7cllg/sec_31.htm

    LPEZ YEPES, Alfonso. "Bases de datos documentales multimedia". En: Lpez Yepes, Jos

    (coord.). Manual de informacin y documentacin. Madrid, Pirmide, 1996.

    LPEZ YEPES, Jos (coord.) Manual de Ciencias de la Documentacin. Madrid, Pirmide, 2002.

    MARTNEZ SAN GERMN. Taller de base de

    datos. http://www.itver.edu.mx/comunidad/material/tallerbd/apuntes/index.html

  • 25

    PALMA, Mara del Valle. "Bases de datos y servicios de informacin disponibles en Internet".

    En: Documentacin Digital (CD-ROM). Barcelona: UPF, 1999.

    PALMA, Mara del Valle. "Tcnicas y mtodos para mejorar la calidad de la indizacin y su

    recuperacin en bases de datos documentales de ciencias sociales y humanidades". 5es Jornades

    Catalanes de Documentaci: biblioteques, centres de documentaci i serveis

    dinformaci. Barcelona: Cobdc; Socadi, 1995.

    Programacion.net. ASP en castellano. http://www.programacion.net/asp/

    Programacion.net. Bases de datos en castellano. http://www.programacion.net/bbdd/

    Programacion.net. Java en castellano.http://www.programacion.net/java/

    Programacion.net. PHP en castellano. http://www.programacion.net/php/

    TRAMULLAS, Jess. "Seccin 3: Los sistemas de bases de datos y los SGBD. En Introduccin a

    la Documtica.http://tek.docunautica.com/ [Volver]

    TRAMULLAS, Jess. "Seccin 6: Las bases de datos multimedia". En Introduccin a la

    Documtica. http://tek.docunautica.com/

    RAZQUIN ZAPE, Pedro. "Las bases de datos multimedia revisadas". Cuadernos de

    Documentacin Multimedia. Nm. 6-7, 1997-

    1998.http://www.ucm.es/info/multidoc/multidoc/revista/cuad6-7/prazquin.htm

    VALLE GASTAMINZA, Flix del. Diseo de Bases de

    datos. http://www.ucm.es/info/multidoc/prof/fvalle/Disbd.htm