Está en la página 1de 23

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 especifico 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
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 elaborada con Microsoft Access

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, 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.

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. Jess Tramullas en Los sistemas de bases de
datos 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
el comportamiento del sistema de gestin de bases de datos con cada tipo de informacin.

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.
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.
Jess Tramullas recoge los componentes con los que debe contar un
sistema de gestin de bases de datos ideal:

Un lenguaje de definicin de esquema conceptual.


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 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 principales sistemas gestores de bases de datos se relacionan aqu.
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.
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 FileMaker, 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 verdaderodinamismo al
hipertexto. Se trata de componentes que deben ser diseados en la
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 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. http://www.asp.net/
.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.

Fuente: Ernest Abadal. Esquema de funcionamiento.


Bases de datos documentales en el web: anlisis del software para su publicacin.
http://www.hipertext.net/web/pag255.htm

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.

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


http://trevinca.ei.uvigo.es/~txapi/espanol/proyecto/superior/memoria/node21.html#serv: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.comLos
servidores ms utilizados son: Apache, Microsoft IIS, iPlanet de Netscape, Zeus, thttpd,
Rapidsite, 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 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.

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).
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.

Fuente: Taller de Base de Datos.


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

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 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:

Fuente: Taller de Base de Datos.


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

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.
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.

Fuente: Taller de Base de Datos.


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

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).

ADO

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.

JDBC

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.

Fuente: Taller de Base de Datos.


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

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.
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 costoso 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.
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.pdf
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/magmo
reno.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.ht
m

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
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, 19971998.http://www.ucm.es/info/multidoc/multidoc/revista/cuad67/prazquin.htm

VALLE GASTAMINZA, Flix del. Diseo de Bases de


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

PAGINA WEB :
http://www.hipertexto.info/documentos/b_datos.htm

También podría gustarte