Sistemas Gestores de Bases de Datos

Unidad de Apoyo para el Aprendizaje

Iniciar

Introducción


Introducción Imagina una universidad que maneja una gran cantidad de información de alumnos inscritos, como número de cuenta, nombre, carrera, asignaturas inscritas, grupo, calificaciones...

¿Cómo es que puede llevar el control de tal cantidad de información?

¿Cómo se encuentra almacenada la información?


Ahora, piensa en un banco: el tarjetahabiente, la cuenta, el saldo, los depósitos, pagos...

¿Qué herramienta utilizan para llevar el control y manejo de toda la información?

La respuesta es un sistema manejador de base de datos, una herramienta que facilita el trabajo de los ingenieros de soporte y administradores de sistemas, manejando de manera clara, sencilla y ordenada un conjunto de datos que posteriormente se convertirá en información, permitiendo que existan controles más estrictos y mejores formas de consultar la información que ayude a tomar decisiones en las empresas.

Hoy en día, tener noción de la existencia y características de los sistemas gestores de bases de datos, permite que el alumno pueda elegir cuál es la mejor alternativa para resolver problemas que se presentan en la vida cotidiana.

En este tema se revisará lo que es un sistema gestor de bases de datos, sus características y funciones, una breve referencia a las características generales de algunos de los sistemas gestores de bases de datos mayormente utilizados, así como la descripción de características específicas de la manera en la que Oracle estructura los datos que almacena.



Bases de datos

Bases de datos



El estudio de este tema te permitirá:

Identificar las funciones que realiza un sistema gestor de bases de datos, revisando las características generales y categorías que permiten garantizar la confidencialidad, la calidad, la seguridad y la integridad de los datos que se almacenan para conocer el proceso de consulta de información.


Los sistemas gestores de bases de datos (SGBD) son también conocidos como sistemas de administración de bases de datos (database management system, DBMS). De dichos sistemas deriva el concepto relational database management system (RDBMS), el cual tiene como característica la posibilidad de que el usuario defina restricciones de integridad referencial.

Rojas y Méndez (2016) señalan que…

: Esquema representando un modelo semántico


Adicionalmente, los mismos autores señalan que los RDBMS, programas que se encargan de manipular los datos según nuestras indicaciones, se clasifican en dos grandes categorías: locales y servidores.



Locales

Éstos almacenan la información en el propio equipo del usuario que accede a ella. El ejemplo más común es el administrador que utiliza Microsoft Access en su equipo de escritorio. En este caso, el RDBMS es Microsoft Access, un programa que, a demanda del usuario, recupera y manipula datos que están almacenados en el disco de la propia computadora.

Servidores

Se trata de programas que se ejecutan en una computadora central, denominada servidor, al que se conectan los equipos de los usuarios, que se denominan clientes. Estos tienen en sus computadores un software que les permite comunicarse con el servidor, enviando sus sentencias SQL. De esta manera es posible contar con un único almacenamiento de información común a un grupo de usuarios o, incluso, a una empresa entera, facilitando tareas como la seguridad en el acceso a la información, la realización de copias de seguridad y otras labores de mantenimiento.



Generalmente no hay limitaciones para operar sobre bases de datos que estén alojadas en un RDBMS local, en un equipo propio, lo cual permitirá ejecutar cualquier tipo de sentencia SQL. Sin embargo, cuando se trabaja con un servidor, la seguridad es un aspecto mucho más importante y se requieren permisos para poder efectuar ciertas acciones. Salvo que seas el administrador de bases de datos, o bien, un usuario con experiencia, normalmente no tendrás acceso directo al intérprete SQL de un RDBMS remoto (Rojas y Méndez, 2016).

Las características de un SGDB posibilitan el cumplimiento de una serie de funciones que pueden agruparse de la siguiente manera. (Salas, 2017)



: Esquema representando un modelo semántico


El SGBD ha de poder definir todos los objetos de la base de datos partiendo de definiciones en versión fuente para convertirlas en la versión objeto.

El SGBD responde a las solicitudes del usuario para realizar operaciones de supresión, actualización, extracción, entre otras gestiones. El manejo de los datos ha de realizarse de forma rápida, de acuerdo con las peticiones realizadas por los usuarios, y permitir la modificación del esquema de la base de datos debido a su independencia.

Además de registrar el uso de las bases de datos, ante cualquier petición, también aplicará las medidas de seguridad e integridad de los datos (adopta medidas garantizar su validez) previamente definidas. Un SGBD debe garantizar su seguridad frente a ataques o simplemente impedir su acceso a usuarios no autorizados por cualquier razón.

La recuperación y restauración de los datos ante un posible fallo es otra de las principales funciones de un SGBD. Su aplicación se realizará a través de un plan de recuperación y restauración de los datos que sirva de respaldo.




De manera complementaria, también nos referiremos a conceptos que serán de utilidad para construir sentencias SQL más complejas, como los siguientes.



En general, un RSGBD es una herramienta que permite a varios usuarios acceder a los datos al mismo tiempo. Brinda facilidades eficientes y un grupo de funciones según ha quedado descrito; su propósito es garantizar la confidencialidad, calidad, seguridad e integridad de los datos que contiene, así como un acceso fácil y eficiente a los que se almacenan en ellos.

Para conocer algunos de RSGBD consulta Sistema Gestor de Base de Datos.






Oppel y Sheldon (2010) mencionan que en 1970 Codd, en su obra más importante: A Relational Model Of Data For Large Shared Data Banks (“Un modelo relacional de datos para grandes bancos de datos compartidos”)…



define una estructura de datos relacional que protege los datos y permite que sean manipulados de manera que es previsible y resistente al error. El modelo relacional, el cual se basa principalmente en los principios matemáticos de la teoría de conjuntos y lógica de predicados, apoya la recuperación de datos sencilla, aplica la integración de datos (la precisión y coherencia de los datos), y proporciona una estructura de base de datos independiente de las aplicaciones al acceder a los datos almacenados. (p. 5)




Podemos señalar que los distintos proveedores de DBMS han desarrollado su propia arquitectura, por lo que no todas las bases de datos están diseñadas de la misma manera.



Arquitectura de Oracle


La arquitectura de Oracle tiene tres componentes elementales:

1. La estructura de memoria para almacenar los datos y el código ejecutable.
2. Los procesos que corre el sistema de base de datos y las tareas de cada usuario conectado a la base de datos.
3. Los archivos que sirven para el almacenamiento físico, en disco, de la información de la base de datos.



 Interacción entre los procesos, la estructura de memoria y los archivos.

Figura 1. Arquitectura de Oracle. En Rojas y Méndez. (2016).

Estructura de memoria


Hay dos clases de memoria, una de ellas compartida por todos los usuarios conectados y otra dedicada al trabajo de cada uno de ellos. El área global del sistema o SGA (System Global Area) es el área compartida por todos los usuarios y se divide en tres partes: 1. Fondo común compartido (shared spool). En ella se conserva el diccionario de datos y las áreas compartidas de las órdenes SQL que se solicitan para su procesamiento. 2. Área de memoria rápida (database buffer cache). Donde permanecen los datos traídos por las órdenes SQL de los usuarios conectados a la base de datos. 3. Área de registros restaurados (redo log buffer). Aquí se registran los cambios hechos a la base de datos. Por cada sesión de usuario se crea también, en memoria, un área específica llamada área global de programa o PGA (Program Global Area), esta área no se comparte con las otras sesiones de usuario Los archivos Los archivos de datos (datafiles) sirven para el almacenamiento físico de las tablas e índices, o agrupamientos (clusters), y procedimientos. Estos archivos son los únicos que contienen los datos de los usuarios de la base de datos.

Las unidades lógicas más grandes manejadas por Oracle, para el almacenamiento de los datos, son llamados espacios de tablas (tablespaces), que le permite manejar o controlar el espacio en los discos

Organización de Datafiles para manejar el espacio en disco y de Datafile para el almacenamiento físico de las tablas e índices y procedimientos en ORACLE.

Figura 2. Archivos de datos. En Rojas y Méndez. (2016).



No es necesario que todos los espacios de tablas estén en un mismo disco. Cuando se crean en distintos discos se busca un mejor desempeño y mejor manejo del espacio de almacenamiento. Una base de datos puede tener un solo espacio de tablas; pero, por las razones anteriores, se recomienda varios espacios de tablas. Como mínimo, se debe tener un espacio de tablas del sistema, un espacio de tablas por cada aplicación, un espacio de tablas para los usuarios y otro espacio de tablas para los índices. En una base de datos pueden existir otros objetos que no contienen datos como las vistas, los sinónimos y las secuencias. Sin embargo, todo objeto independiente si contiene datos, o no, debe pertenecer a un esquema. Por eso, una colección de objetos de un usuario se denomina esquema.

Reglas de almacenamiento de objetos en la base de datos


Observa la siguiente infografía para conocerlas.



Tienen la descripción física y dirección de los archivos de la base de datos y de los archivos restaurados, para el arranque correcto de la base de datos. En estos archivos se especifican cuáles datafiles conforman la base de datos para poder tener acceso a los datos o para poder recuperar la base de datos ante una falla.

Tienen los cambios hechos a la base de datos para la recuperación ante fallas o para el manejo de las transacciones. Conservan los valores antes de una transacción, la orden ejecutada y, opcionalmente, el valor después de la transacción. El principal propósito de estos archivos es servir de respaldo de los datos en la memoria RAM. Este conjunto de archivos debe estar conformado por dos grupos como mínimo y se recomienda que cada grupo esté almacenado en discos separados. El DBMS utiliza la técnica de ir sobrescribiendo sobre la información más antigua, cuando se agota el espacio en estos grupos de archivos.

Son archivos opcionales donde se guarda información antigua de los archivos restaurados, muy convenientes para los respaldos de la base de datos.



Los procesos

Son programas que se ejecutan para permitir el acceso a los datos. Los procesos se cargan en memoria y son transparentes para los usuarios. Los procesos se clasifican en tres grupos: procesos de base, de usuario y procesos servidores.

Los procesos de base o soporte

Los procesos de base (background) son los que se encargan de traer datos desde y hacia la SGA, mejorando el desempeño al consolidar las tareas que son impartidas por todos los usuarios. Cada proceso de base tiene su propia área de memoria. Los procesos de base o soporte son los siguientes:



Los nueve procesos de base o de soporte: DBWR, LGWR, LCKn, Lock, CKPT, SNPn, SMON, RECO, ARCH, PMON


Procesos del usuario

Cuando un usuario se conecta a la base de datos, se crea un proceso de usuario que se encarga de ejecutar el código de aplicación del usuario y manejar el perfil del usuario con sus variables de ambiente. Los procesos de usuario no se pueden comunicar directamente con la base de datos, únicamente lo hacen a través de procesos servidores.

Procesos Servidores

Ejecutan las órdenes SQL de los usuarios y llevan los datos al “database buffer cache”, para que los procesos del usuario puedan tener acceso a los datos. Se pueden tener distintas arquitecturas para trabajar en ORACLE, según los tipos de servidores: dedicados o multiusuario.



Actividad 1. Características de los sistemas manejadores de bases de datos

Un sistema manejador de base de datos es una herramienta que manipula de manera clara, sencilla y ordenada, un conjunto de datos que posteriormente se convertirá en información.

Actividad 2. Arquitectura ORACLE

Según la arquitectura Oracle, los procesos son programas que se ejecutan para permitir el acceso a los datos. Los procesos de base o soporte se encargan de traer datos mejorando el desempeño.

Revisemos algunos de ellos para valorar los conocimientos que adquiriste.

Autoevaluación. Características y funciones de un SMBD

Una de las características de un SMBD es que permite dar cumplimiento a una serie de funciones sobre los datos.

Para cerrar este tema, repasemos las funciones relacionando cada una de las características de un SMBD con la función que desempeña esa característica.

Fuentes de información

Básicas

Documentos electrónicos

Oppel, A. y Sheldon, R. (2010). Fundamentos de SQL (3.ª ed.) [Versión electrónica]. México: MacGraw-Hill. Consultado el 03 de noviembre de 2017 de http://pedrobeltrancanessa-biblioteca.weebly.com/uploads/1/2/4/0/12405072/fundamentos_de_sql_3edi_oppel.pdf

Rojas, A., Méndez C. (2016). Desarrollo de aplicaciones en manejadores de bases de datos relacionales. Apunte Electrónico [Versión electrónica]. México: SUAYED-UNAM-FCA. Consultado el 03 de octubre de 2017 de http://fcasua.contad.unam.mx/apuntes/interiores/docs/20172/informatica/5/apunte/LI_1547_18116_A_Desarrollo_aplicaciones_BD_v1.pdf

Sitios electrónicos

Ecured. (2017). Sistema gestor de base de datos. Consultado el 03 de noviembre de 2017 de https://www.ecured.cu/Sistema_Gestor_de_Base_de_Datos?PageSpeed=noscript

Salas, K. (2017).Tipos y función de los gestores de bases de datos [Mensaje en blog]. Power Data, especialistas en Gestión de datos. Recuperado el 27 de agosto de 2017 de http://blog.powerdata.es/el-valor-de-la-gestion-de-datos/bid/406547/tipos-y-funci-n-de-los-gestores-de-bases-de-datos

Complementarias

Bibliografía

Date, C. J. (2001). Sistemas de bases de datos (7.ª ed.).México: Pearson Educación.

Elmasri, R. (2002). Fundamentos de sistemas de bases de datos. México: Pearson Educación-Addison-Wesley.

Documentos electrónicos

Worsley J., Drake, J. (2002). Practical PostgreSQL [Versión electrónica]. Consultado el 03 de noviembre de http://www.faqs.org/docs/ppbook/book1.html

Cómo citar

Texto correspondiente a esta sección.