Para dar una definición de
un Sistema Gestor de Bases de Datos es necesario tener claro lo que es una base
de datos, la cual se puede definir como una colección de datos almacenados
ordenadamente bajo ciertas restricciones, las cuales permiten una fácil
inserción de datos así como el rápido acceso a los mismos, poder modificarlos y
su eliminación de forma apropiada y sencilla. Las restricciones y estructura de
una base de datos están hechas a partir de la problemática que se quiere resolver
o a la situación que se presenta. Para crear una base de datos que tenga la
estructura que se desea tener y se puedan incluir las restricciones que
resuelvan la problemática es necesario un software especializado en realizar
esta labor, es entonces que se crean los SGDB (Sistemas Gestores de Bases de
Datos).
Los SGDB deben tener ciertas características
indispensables para administrar una base de datos, alguna de ellas son las siguientes:
·
Manipulación de los datos, lo cual quiere
decir que se puedan realizar las acciones de inserción, actualización y
eliminación de los datos, esto de una manera sencilla tanto para el usuario
como para el programador.
·
Control de la privacidad de los datos, es
decir que se mantengan seguros mientras están almacenados y sus relaciones
entre sí no se afecten al manipularlos.
·
Copia de seguridad y recuperación: es
necesario que si llegasen a presentarse fallos en el sistema los datos
anteriores al momento del fallo se mantengan intactos así como tener la
posibilidad de generar copias de seguridad.
·
Implantación de la integridad, cuando
insertemos o actualicemos los datos estos deben cumplir con las restricciones
que se han fijado al crear la base de datos, de lo contrario sería posible
almacenar un dato cuya longitud o tipo de dato no es el que se fijó al crear la
base de datos.
·
Que sea posible definir los niveles de
abstracción de una base de datos (físico, lógico y vistas).
·
Control de concurrencia, debe de ser posible
que varios usuarios actualicen la base de datos de manera concurrente sin
perder parte de los datos o su organización.
Inicialmente, en los años 40,
los Sistemas de Archivos generados a través de lenguajes de programación no
propietarios como Cobol y Fortran, permiten almacenar los datos a través de
archivos planos con funciones básicas de lectura y escritura sobre ellos.
En 1964, se crean los primeros Gestores de Base de Datos con lo cual se inicia
la administración de los datos de manera similar a como se realiza actualmente.
Posterior
a la aparición de los lenguajes de programación orientados a objetos los SGBD
se especializan más y se crean los Sistemas
de Gestión de Bases de Datos Relacionales (SGBDR) y los Sistemas de
Gestión de Bases de Datos Documentales (SGBDD), esto para adaptarse a la nueva
forma de estructurar los datos almacenados y a los lenguajes de programación
orientados a objetos.
Ejemplos de SGBD son Oracle,
SQL Server, Sybase, DB2, MySQL, PostgreSQL, SQLite y muchos otros más. Los
cuales pueden soportar grandes cantidades de datos o pequeñas adaptando así a
las necesidades de los usuarios, por ejemplo no es lo mismo un SGBD de un
dispositivo móvil al que requiere una empresa para administrar su información.
Actualmente
siguen apareciendo SGBD tanto comerciales como libres.
En la estructura básica de un
Sistema Manejador de Base de Datos se requieren dos lenguajes que permiten
trabajar sobre la base de datos. Estos lenguajes estándar son:
·
DDL (Data
Definition language): Lenguaje de Definición de Datos.
Por medio de este el SGDB identifica las descripciones de los elementos de los
esquemas y almacena la descripción del esquema en el catálogo del SGBD.
Por medio de este el SGDB especifica el esquema conceptual e interno (Base de datos Almacenada).
Por medio de este el SGDB especifica el esquema conceptual e interno (Base de datos Almacenada).
- SDL
(Store Definition language):
Lenguaje de definición de almacenamiento. Es utilizado por el SGDB
para especificar el esquema interno que corresponde a la Base de Datos
Almacenada.
- VDL
(View Definition language): Lenguaje
de Definición de Vistas. Es utilizado por el SGDB para especificar
las vistas del usuario y sus correspondiencias con el esquema conceptual.
Bibliografía.
Luque Ruiz Irene, Gómez
Nieto Miguel Ángel, López Espinoza, Cerruela García Gonzalo (2002). Bases de
Datos desde Chen hasta Codd con Oracle: Alfaomega Ra-Ma.
f. Korth Henry, Silverschatz Abraham (1995). Fundamentos
de Bases de Datos (segunda edición): McGraw Hill