Está en la página 1de 11

Base de Datos y SGBD

Gabriela Zúñiga
Teconología Web y Bases de Datos -

1 Tema 5. Bases de Datos

Una base de datos es una colección de archivos relacionados entre sí, tablas y otros objetos organizados y
presentados para servir a un propósito concreto, para almacenar, controlar, consultar y actualizar la información.
Una tabla en BBDD es donde se guarda la información sobre un grupo de cosas con las mismas características o
atributos, por ejemplo, en una base de datos se puede tener una tabla con información acerca de todos los
libros, con los siguientes campos título, el nombre del autor, el año de publicación, etc.; es decir, diferentes
propiedades o atributos comunes a todos los libros, o también se puede tener una tabla con toda la información
de contacto de amigos, por ejemplo, su nombre y apellidos, su número de móvil, su dirección de correo
electrónico, etc., pero nunca en una misma tabla se guardará información de cosas con propiedades distintas. Es
decir, no se puede mezclar información en una única tabla de los libros y los amigos porque la información (los
atributos de cada una de las cosas sobre las que guardo información) no es la misma.

2 Sistema gestor de Bases de Datos

Un sistema gestor de Base de Datos es un conjunto de programas que permite la creación de una base de datos,
la manipulación de la información que ésta contiene y también la realización de todas las tareas de
administración necesarias para mantenerla operativa.

3 Arquitectura de un Sistema Gestor de Base de Datos

Manejador de archivos. Gestiona la asignación del espacio del medio de almacenamiento para las estructuras de
datos utilizadas para representar información.
Gestor de base de datos (DBM). Sirve de interfaz entre los datos de bajo nivel y los programas de aplicación que
pueden estar escritos en Java, C, ensamblador, etc.
Procesador de consultas. Es el encargado de traducir las proposiciones de un lenguaje de consultas a
instrucciones de bajo nivel como, por ejemplo, SQL (lenguaje de estructuras de consultas), que veremos
detalladamente más adelante.
Compilador de DLL. Se encarga de convertir las proposiciones en un conjunto de tablas que contienen
metadatos.
Precompilador de DML. Convierte las proposiciones en DML al lenguaje de diseño del manejador de la base de
datos.

2
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

4 Funciones principales de un SGBD

Crear y organizar la base de datos.


Establecer y mantener de la forma más eficiente posible las trayectorias de acceso a los datos.
Manejar los datos de acuerdo con las peticiones de los usuarios.
Registrar el uso de las bases de datos.
Ofrecer mecanismos que permitan la recuperación fácil de los datos en caso de que se produzcan caídas en el
sistema de base de datos. Estos mecanismos tienen que ser capaces de reestablecer el estado original de la base
de datos (es decir, el estado de la misma antes del problema).
Posibilitar el acceso concurrente a los datos con el fin de mantener la consistencia de la base de datos. Muchos
sistemas permiten que varios usuarios actualicen los datos de manera simultánea, lo que hace necesario que
contemos con alguna forma de supervisión por parte del sistema. Si no se contempla esta posibilidad, la
interacción de actualizaciones concurrentes podría dar lugar a datos inconsistentes
Contar con mecanismos de seguridad e integridad de los datos para evitar que éstos se vean perjudicados por
cambios no autorizados o no previstos (por ejemplo, durante las actualizaciones de los datos).
Ofrecer un nivel de seguridad eficiente encargado de restringir el acceso mediante contraseñas u otros medios
de identificación y validación.

5 Roles dentro de un SGBD

5.1 Administrador de Base de Datos

Por Administrador de base de datos se designa a la persona o equipo de profesionales responsables del control y
manejo del sistema de base de datos. Por norma general, estos profesionales poseen amplios conocimientos de
informática, con experiencia en el diseño de bases de datos, en sistemas operativos, en comunicación de datos,
en hardware y también en programación
Sus tareas son:
Definir el esquema de la base de datos. Es la estructura según la que se forma la base de datos, que queda
especificada por medio de un conjunto de definiciones que se expresan con un lenguaje especial llamado
lenguaje de definición de datos (DDL).
Definir las estructuras de almacenamiento y los métodos de acceso a la información. Las estructuras de
almacenamiento y de acceso a la información se crean con un conjunto de proposiciones DML.
Conceder o denegar autorizaciones para el acceso a los datos. Se trata, básicamente, de registrar a los usuarios
con acceso al SGBD y de asignar a cada uno de ellos su campo de actuación. De esta manera, es posible regular
con un sistema personalizado de privilegios las partes de las bases de datos (áreas de aplicación, datos, recursos
del sistema) a las que van a tener acceso o no los usuarios.

3
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

Especificar los límites de integridad de la base de datos. Se trata de una serie de restricciones que se encuentran
especificadas en una estructura especial del sistema y que serán aplicables cada vez que se realice una
actualización en el sistema.

5.2 Usuarios de la Base de Datos

Especializados. Aquellos que desarrollan aplicaciones avanzadas de base de datos que no encajan en el marco
tradicional de procesamiento de datos (como, por ejemplo, sistemas expertos, reconocimientos de imágenes,
procesamiento de audio, etc.).
Programadores de aplicaciones. Profesionales en computación que interactúan con el sistema mediante
llamadas en DML, las cuales se hallan incorporadas en un programa escrito en un lenguaje de programación
como pueda ser C, JSP, ASP, PHP o Perl.
Sofisticados. Aquellos que interactúan con el sistema sin escribir programas, y que tienen capacidad para acceder
a la información por medio de lenguajes de consulta (por ejemplo SQL).
Ingenuos. Algo así como un usuario final que utiliza el sistema de base de datos siendo un total desconocedor de
su diseño interno. Éste sería el caso, por ejemplo, de un empleado de un banco.

6 Descripción de XAMPP

4
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

7 Servidor Apache

Apache es el servidor de web por excelencia. Ha sido uno de los mayores éxitos del software libre y su aceptación
entre los servidores de web de Internet es tan grande que ha llegado hasta el punto de llegar a ser un serio
competidor del servidor de web de Microsoft (IIS, Internet Information Server). Su desarrollo es continuo y su
portabilidad le ha llevado a plataformas como Windows y sistemas Unix.
Una de las principales características de Apache es su extensibilidad basada en una gran capacidad de
modulación de su código fuente, hecho que ha facilitado la aparición de módulos de extensión como PHP,
facilitando, de este modo, enormemente la programación de aplicaciones en el lado del servidor, en especial en
el campo del acceso a bases de datos.

8 Lenguaje PHP

PHP corresponde a las iniciales de Personal Home Page Tools (herramientas para páginas iniciales personales). Es
un lenguaje de programación tipo script para entornos web con unas funciones muy semejantes a las de ASP y
JSP, utilizado, sobre todo, en servidores Linux para personalizar la información enviada a los usuarios que
acceden a un sitio web. Desde un punto de vista técnico, es un lenguaje interpretado de alto nivel, similar en
construcciones léxicas y sintácticas C, C++, Java y Perl, por lo que a quienes ya conozcan estos lenguajes les
resultará muy fácil comenzar a escribir código PHP.
PHP es un lenguaje incrustado en páginas HTML, es decir, es un lenguaje de programación que se introduce
dentro de las páginas HTML. El código PHP se interpreta en el lado del servidor, desde donde se genera la página
HTML solicitada antes de llevar a cabo su transmisión al navegador. De esta forma, podemos programar
aplicaciones asociadas al servidor de web, aumentando, así, la funcionalidad de dicho servidor y convirtiéndolo
en un sistema de desarrollo de aplicaciones cliente/servidor mucho más completo. Su principal objetivo es hacer
que desarrolladores de aplicaciones basadas en la web puedan escribir páginas que se generan dinámicamente
de una forma sencilla y rápida.
PHP proporciona, por tanto, una gran facilidad para acceder a diferentes tipos de bases de datos como Oracle,
Sybase, MySQL, PostgreSQL, Adabas, etc. De hecho, es bastante sencillo portar una aplicación escrita para
MySQL a cualquier otra, ya que las funciones de acceso que ofrece PHP son, en muchos casos, de sintaxis
compartida.

9 MySQL

MySQL es un sistema de gestión de bases de datos (SGBD) SQL que en algunos aspectos es aproximadamente tan
potente como Oracle. MySQL está considerado un SGBD de gama media, con una tecnología que se encuentra a
medio camino entre un Oracle y un Microsoft Access.

5
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

Sus principales objetivos han sido la velocidad y la robustez. Es un SGBD sencillo y rápido que se adapta
perfectamente a entornos en los que el volumen de datos sea del orden de megabytes (en la documentación se
habla de su uso con bases de datos de 50 millones de registros). Evita, por tanto, complejidades como el sistema
de transacciones, hecho que lo limita para su uso en grandes sistemas (gran volumen de datos, muchos accesos
simultáneos y alta distribución de los datos).
En estos últimos años destacadas compañías han desarrollado aplicaciones SQL de uso libre y con código fuente
abierto (open source). En el mundo de GNU/Linux MySQL es, junto a Postgres, uno de los SGBD más populares.
MySQL se encuentra, igual que PHP, en fase de pleno desarrollo; se están publicando con regularidad nuevas
versiones del sistema, así como herramientas que son básicas en cualquier SGBD actual:

• Dispositivo JDBC para acceder desde Java.


• Dispositivo ODBC para acceder utilizando la API ODBC.
• API de programación para C, Perl, C++, Python y TCL.
• Acceso desde PHP.
• Entornos visuales de gestión de la base de datos.
• Control de acceso basado en una base de datos de administración.
Quizá una de las cosas que más se agradecen de MySQL sea que almacena las bases de datos creando un
directorio por cada una de ellas, y dentro de dicho directorio crea, a su vez, tres ficheros por tabla en los que se
almacenan los registros de la tabla y la definición de la misma. El hecho de copiar una base de datos es tan fácil
como copiar un directorio, por lo que hacer copias de seguridad de las mismas también es algo de lo más
sencillo.

9.1 Cómo Funciona

Como una motivación previa y para que el lector pueda tener una visión global desde el principio, presentaremos
en este apartado una visión global del sistema. En el siguiente gráfico aparecerán destacadas las partes
fundamentales del mismo.
Los pasos que describen la interacción entre el cliente y la base de datos son:

1. El cliente carga una página HTML con un formulario, rellena los datos y se los envía al servidor.
2. Por medio de la red TCP/IP los datos llegan al servidor.
3. El servidor detecta que los datos se envían a una página PHP, por lo que informa al módulo de PHP del
programa que hay que ejecutar y le pasa los datos del cliente.
4. El módulo de PHP ejecuta el programa, el cual accede a MySQL utilizando, de nuevo, una comunicación
TCP/IP.
5. MySQL procesa la petición del programa PHP y le envía los resultados de vuelta.
6. El módulo PHP recibe los resultados del servidor de base de datos, les da formato en una nueva página
HTML y se los devuelve al cliente mediante el servidor Apache.
El cliente recibe la página HTML como resultado de su petición por medio de la red TCP/IP.

6
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

En este primer esquema ya podemos ver que la interacción con la base de datos se hace, en su totalidad, por medio de PHP.

10 Sistemas Gestores de Base de Datos Relacionales

La lista de sistemas de gestión de bases de datos relacionales (SGBDR, en inglés RDBMS) es extensa. Los más
conocidos están disponibles para diferentes plataformas, como Windows, OS/2 y Linux, y también para la
mayoría de las versiones de UNIX, y funcionan en las macrocomputadoras y minicomputadoras más populares.
Entre los SGBDR comerciales más conocidos destacan:

• Oracle (www.oracle.com). Oracle Corporation fue el primer vendedor de bases de datos relacionales
que ofreció un producto SQL comercial, adelantándose al propio anuncio de IBM en casi dos años. Una
de sus principales ventajas es su portabilidad. En la actualidad, Oracle se encuentra disponible en casi
todas las plataformas de computadoras.

• Informix (www.informix.com). Informix Software Inc. es un importante vendedor de sistemas de bases


de datos relacionales basados en UNIX. Igual que Oracle, también ofrece versiones de desarrollo libre y
comercial.

7
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

• Sybase (www.sybase.com/adaptiveserver). Sybase es una compañía pionera en proporcionar un sistema


de bases de datos relacionales para aplicaciones en línea mediante de una arquitectura cliente-servidor.

• DB2 (www-4.ibm.com/software/data/db2/udb). Es el producto de bases de datos relacionales insignia


de IBM. Es una base de datos de grandes cargas de IBM disponible para Windows, Linux, OS2 y la
mayoría de las versiones de UNIX.

8
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

• Ingres (www.cai.com/products/ingres.htm). Desarrollada por Computer Associates, después de


Microsoft, es la mayor compañía de software existente en la actualidad.

• SQL Server (https://www.microsoft.com/es-es/sql-server/sql-server-2019 ). Es la base de datos para


grandes cargas de Microsoft.

9
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

11 Sistemas Gestores de Base de Datos Relacionales Gratuitos o a bajo coste

También existen SGBDR disponibles de forma gratuita o a un bajo coste. Este software ha nacido y crecido en
sistemas operativos gratuitos que se han producido como movimiento open source y que han dado como
resultado muchas piezas de software importantes (entre ellas Linux, Apache, Perl, PHP, Sendmail, BIND, etc.).
Entre las bases de datos open source más populares, destacan:

• Mysql (www.mysql.com). MySQL es portable y se ejecuta en sistemas operativos comerciales (como


Solaris, Iris y Windows) y en hardware que puede llegar hasta servidores empresariales.

10
TEMA 5 – Introducción a las Bases de Datos
Teconología Web y Bases de Datos -

• Postgres (www.postgresql.org). Esta popular base de datos de UNIX rivaliza con muchas bases de datos
comerciales en cuanto a prestaciones. Está disponible libremente y con soporte comercial por una tasa
anual.

data informe

11
TEMA 5 – Introducción a las Bases de Datos

También podría gustarte