Junto con las bases
de datos, el elemento fundamental para el aprovechamiento de estas son
los Sistemas Gestores de Bases de
Datos (SGDB o DBMS, del inglés DataBase Management System). Estos sistemas representan un
elemento intermedio entre los propios datos y los programas que van a hacer uso
de ellos, facilitando las operaciones a realizar sobre aquellos. En nuestro
caso, son el componente que permite unir el SIG con la base de datos en la que
se almacenan los datos espaciales con los que este va a trabajar.
Un SGBD es una
pieza de software compleja, ya que las situaciones a las que debe responder son
diversas y en muchas ocasiones con requerimientos elevados, por ejemplo en lo
que a eficiencia y volumen de datos respecta. Piénsese que una base de datos
actual puede tener millones de registros y ser utilizada simultáneamente por
miles de usuarios, que a su vez pueden utilizar diversos programas, no todos ellos
del mismo tipo. Por ejemplo, una base de datos que contenga números de
teléfono, nombres de usuarios, direcciones y coordenadas asociadas a cada línea
telefónica, puede ser empleada desde un SIG para crear un mapa que muestre la
densidad de usuarios o también desde una aplicación que genere un listín
telefónico, o bien desde una aplicación en una página Web que permita localizar
el número de teléfono de una persona concreta. Cada una de estas aplicaciones
realiza un trabajo distinto, pero todas ellas utilizan la misma base de datos.
El SGBD debe proporcionar a todos ellos la metodología adecuada para extraer
del conjunto de datos completo cuanto sea necesario en cada caso.
Además, el SGBD es
la herramienta utilizada no solo por quienes aprovechan los datos, sino también
por aquellos que se han de encargar de la propia gestión y mantenimiento de la
base de datos. Administrar una base de datos puede suponer una tarea altamente
compleja, por lo que el SGBD debe proveer los útiles necesarios para llevar a cabo
ese mantenimiento.
Para ser de
verdadera utilidad y responder a todas las necesidades que pueden plantearse en
relación con la base de datos, un SGBD debe perseguir los siguientes objetivos:
- Acceso transparente a los datos. La base de datos ha de poder accederse de forma transparente, sin que sea necesario para el usuario del SGBD preocuparse por aspectos internos relativos a la estructura de esta u otras características. Esto significa que, por ejemplo, si queremos recuperar un registro de la base de datos, debemos poder hacerlo sin necesidad de saber si dicha base de datos está almacenada en un único archivo o varios, o si el registro que pretendemos recuperar está almacenado a su vez de uno u otro modo. Así, el SGBD debe crear una abstracción de los datos que haga el trabajo con estos más sencillo, ocultando aspectos que no sean relevantes para dicho trabajo.
- Protección de los datos. Si la base de datos almacena información sensible, el SGBD debe controlar el acceso a esta, restringiendo el acceso cuando corresponda (por ejemplo, estableciendo distintos permisos de acceso para distintos tipos de usuarios) e implementando los mecanismos de protección necesarios.
- Eficiencia. Acceder a los datos no es suficiente en la mayoría de los casos, sino que se requiere un acceso eficiente. El SGBD debe ser capaz de gestionar de forma fluida grandes volúmenes de datos o de operaciones (por ejemplo, muchos usuarios accediendo simultáneamente), de modo que dé una respuesta rápida a las peticiones de los usuarios de la base de datos.
- Gestión de transacciones. Las operaciones sobre la base de datos tales como la adición o borrado de un registro se realizan mediante transacciones. Una transacción es un conjunto de operaciones realizadas por un usuario sobre la base de datos como una única unidad de trabajo, de forma indivisible. El SGBD ha de encargarse de gestionarlas de manera eficiente y segura para que todos los usuarios de la base de datos puedan hacer su trabajo de forma transparente. Aspectos como el acceso concurrente a la base de datos (varias transacciones simultaneas) resultan especialmente importantes, y en su buena gestión se pone gran esfuerzo en el diseño de los SGBD. Se denomina transaccional al SGBD capaz de garantizar la integridad de los datos, no permitiendo que las transacciones puedan quedar en un estado intermedio. Esto implica la capacidad de poder volver a un estado anterior en caso de que por cualquier causa (error en el sistema, fallo eléctrico, etc) no haya podido completarse la transacción.
No hay comentarios:
Publicar un comentario