Gestión de la información telemática.
Un ordenador almacena muchos tipos de información, desde datos administrativos, contables o bancarios hasta música, películas, páginas Webs, etc. Toda la información está almacenada en los dispositivos de almacenamiento del ordenador, esto es, discos duros, portables, pen drives, dvd, etc. La organización de estos archivos se lleva a cabo mediante los ficheros o archivos. Los archivos son estructuras organizadas que lleva a cabo el sistema operativo para poder almacenar datos. Suelen constar de nombre y extensión que determina el formato de la información.
Tipo de ficheros y formatos.
El tipo de fichero y su formato especifica como es tratada la información y su contenido por el sistema operativo. Originalmente, lo que se almacena no son letras ni números, ni datos; son unos y ceros. Así pues cada fichero requiere de un programa que interprete la información en su interior. Un fichero puede ser un archivo de imagen .jpg o un archivo de texto plano .txt. Todos los ficheros se ordenan por su formato y extensión y el programa asignado a su interpretación responde con la actualización positiva de su lectura.
Los archivos son clasificados según el sistema operativo según su contenido ya sean texto o datos binarios. También se clasifican según su tipo (imagenes, ejecutables, vídeos, etc., etc).
Bases de datos
Una base de datos (a partir de ahora bbdd), es una colección de información perteneciente a un mismo contexto almacenada en forma organizada. Una bbdd está organizada en tablas que almacenan información concerniente a algún objeto o suceso. Las tablas se relacionan formándo relaciones entre sí de forma lógica y coherente. Las tablas están dispuestas en forma de filas y columnas (registros y campos).
Conceptos básicos.
● Dato: es un trozo de información concreta sobre algún concepto o suceso.
● Tipo de dato: Es tipo de dato indica la naturaleza del campo (texto, música, números, carácteres alfanuméricos, vídeo, etc., etc.).
● Campo: Un campo es un identificador para toda una familia de datos. En una tabla es una columna.
● Registro: Es una recolección de datos referentes a un mismo concepto o suceso.
● Campo clave: Es un campo especial que identifica de forma única cada registro.
● Tabla: Es un conjunto de registros unificados bajo el mismo nonbre.
● Consulta: Es una instrucción que sirve para hacer peticiones a la bbdd. También se le dice query.
● Índice: Es una estructura que almacena los campos clave de una tabla, organizándolos para hacer más fácil encontrar y ordenar los registros de esa tabla.
● Vista: Transforma una o más tablas en otra nueva.
● Informe: Es un listado ordenado de campos y registros seleccionado de manera fácil de leer.
Estructura de una bbdd.
Una bbdd almacena datos a través de un esquema. El esquema es la definición de la estructura donde se almacenan los datos y contiene todo lo necesario para organizar la información mediante tablas. También contiene otros objetos necesarios para el tratamiento de los datos (selección, vistas, indices, etc.).
Las bbdd están en cualquier tipo de sistema informático. pueden ser bbdd administrativas, contables, científicas, de registro, bibliotecas, censos, etc., etc.
Tipos de bases de datos.
Las bases de datos se pueden clasificar atendiendo a varios criterios. Dependiendo del modelo de datos utilizado, nos encontramos con bases de datos jerárquicas, en red, relacionales, u orientadas a objetos. Dependiendo de la distribución de la información, teniendo en cuenta su ubicación y acceso a datos, nos encontramos con bases de datos locales, federales y distribuidas.
En este apartado veemos las que dependen del modelo de datos.
Bases de datos jarárquicas
. Este tipo de base de datos solo pueden crear estructuras jerárquicas (en forma de árbol). Una base jarárquica consiste en una colección de registros que se conectan entre sí mediante enlaces.
Cada registro es un conjunto de campos (atributos), cada uno de los cuales contiene un único valor. Un enlace es una asociación entre dos tipos de registros uno de los cuales recibe el nombre de propietario mientras que el otro recibe el nombre de miembro. Siendo la relación de propietario a muchos miembros.
Una base de datos jerárquica dejará de ser tal cuando no permita relaciones muchos a muchos y tampoco acepte estructuras en las que un mismo registro sea miembro de dos conjuntos distintos.
Las bases jerárquicas fueron muy usadas con aplicaciones que requerían una gran cantidad de datos, con muchos volúmenes de transferencia y datos muy complejos y compartidos. Pero dejaron de ser útiles con el mejor rendimiento de las bases relacionales en red.
Bases de datos en red.Este modelo de bases de datos extiende al modelo jerárquico haciendo que en lugar de utilizar una estructura en árbol de directorios, utilice un grafo dirigido (enlace protegido), con lo que se obtiene un mejor rendimiento del anterior modelo de datos.
En una base de red, no existen restricciones (ni en el tipo de relaciones, ni el tipo de registro), que intervienen en la base. El problema de este tipo de base de datos es que la inserción de registros es una a una y requiere de una red privada o pública (protegida), para transmitirse aumentando sus gastos.
Base de datos relacionales.Este modelo de datos lo creo E. F. Codd a principios de los 70 y llegó a hacer obsoletos a los anteriores tipos de bases.
Esta base de datos se basa en relaciones de entidades entre diferentes contextos de datos. Es decir, la información se guarda en tablas y esta a su vez en filas y columnas. Cada fila representa un nuevo registro, mientras que las columnas representan los datos que guardará la tabla relacionada a ciertos datos. Existen una serie de normas como por ejemplo:
● Cada campo se almacena en una columna de la tabla.
● Cada columna se identifica mendiante un nombre de columna.
● No está permitido que se repita el nombre de dos columnas.
● No está permitido la existencia de usuario duplicados.
● El orden en que se guarden los registros no es importante.
El acceso a los datos se lleva a cabo mediante un lenguaje de consulta no procedural (declarativo), donde el usuario declara qué quiere obtener (pero no como obtenerlo ya que dependerá de dicho lenguaje).
En la actualidad el modelo relacional es uno de los más usados por dos razones principales: es más fácil de utilizar que otros modelos y además, su rendimiento es mejor que el de ambos anteriores. Por contra, requiere un lenguaje para poder manejar las acciones que es capaz de devolver dicho modelo de datos.
Base de datos orientadas a objetos.En los tiempos que estamos viviendo, las bases relacionales no son capaces de gestionar la información con las que trabajan las nuevas aplicaciones. Hoy en día la virtualización de servicios obliga a los motores de bases de datos gestionar nuevos modelos que se adapten a la estructura de los nuevos datos 2D y 3D, vídeos, objetos y sckets de servicios. De ahí surgieron las bases orientadas a objetos que son modelos que facilitan el acceso y guardados de datos de aplicaciones en entornos gráficos.
Al ser una base de datos orientada a objetos tiene que tener en su estructura los ideales básicos de la estructura orientada a objetos como Encapsulación de código y datos; Herencia, haciendo que las clases se representen en jerarquía de clases o tipos; Identidad, ya que todos los objetos de la base deben de ser únicos para poder relacionarse entre sí sin problemas.
Existen más modelos de datos, pero los más usados son el relacional y el orientado a objetos. Modelos que usaremos en dicho curso.
Sistema gestor de bbdd.
Un sistema gestor de bbdd (a partir de ahora sgbd), es un conjunto de herramientas que facilitan la consulta, el uso y actualización de una bbdd. Por ejemplo, Access es un ejemplo de sgbd.
Funciones de los sgbd.
Los sgbd que están en el mercado deben de cumplir ciertas exigencias:
● Permiten a los usuarios almacenar datos, acceder a ellos y actualizarlos de forma sencilla y con un gran rendimiento. ocultándo la complejidad y las caracterísitcas físicas de los dispositivos de almacenamiento.
● Garantizar la integridad de los datos, respetándo las reglas y restricciones que dicte el programador.
● Integrar junto al sistema operativo, un sistema de seguridad que garantice el acceso a la información exclusivamente a usuarios registrados con autorización.
● Proporcionar un diccionario de metadatos que contenga el esquema de la bbdd. Es decir como se estructurarán los datos y sus relaciones entre sí.
● Permitir el uso de transacciones, garantizar que todas las operaciones de la transacción se realice correctamente y en caso de incidencia, deshacer los cambios.
● Ofrecer mediante herramientas, estadísticas sobre el uso del gestor, consultas, registros. operaciones y monitorización del uso de bbdd.
●Permitir la ocurrencia (varios usuarios trabajándo al mismo tiempo en la bbdd).
● Independencia de los datos de la aplicación o usuario que estén utilizándolos posibilitándo la migración.
● ofrecer conectividad con el exterior.
● Proporcionar herramientas para la salvaguarda y restauración de la información en caso de desastre.
Tipos de sgbd.
Los sgbd se pueden clasificar de varias formas. Por ejemplo según las bbdd que gestionan, clasificándolos según traten bbdd relacionales, o bbdd orientadas a objetos, etc., etc.
Puesto que existen muchas filosofías y tipos de funcionamiento, en este libro se expresarán según la capacidad y la potencia del propio gestor.
Los sgbd de ofimática, son aquellas que manipulan bbdd pequeñas orientadas a almacenar datos domésticos o de pequeñas empresas (ACCESS de Microsoft). Estos gestores permiten incluir pequeños script o aplicaciones para ayudar al usuario inexperto a manipular la bbdd de forma sencilla.
Los gestores de bbdd corporativas son aquellas que tienen la capacidad de gestionar bbdd enormes de grandes o medianas empresas con carga de datos y transacciones que requieren servidores de grandes dimensiones y altas prestaciones.
Lenguaje SQL.
El sgbd posee herramientas que facilita la programación de las bbdd a los usuarios. Pero las herramientas, traducen el lenguaje base por el que se basa las bbdd y es el lenguajes SQL (Structure Query Language), que está estándarizado por la ISO. Hoy en día el lenguaje SQL es el lenguaje que soportan todas las versiones de bbdd con variación del lenguaje según el editor y el sgbd.
El lenguaje SQL se subdivide en 4 sublenguajes.
Lenguaje DML (Data Manipulation Language).
Este lenguaje consta de 4 instrucciones que sirven para manipular la bbdd y sus tablas o relaciones o vistas:
● SELECT: Sirve para seleccionar determinados datos.
● INSERT: Sirve para insertar datos.
● UPDATE: Modificar datos.
● DELETE: Borrar los datos.
Lenguaje DDL (Data Definition Language).
Permite crear la estructura de la bbdd, desde la creación de la bbdd hasta la de tablas, vistas, relaciones, etc. Solo utiliza dos sentencias:
● DROP: Elimina los objetos.
● CREATE: Crea los objetos.
Lenguaje DCL (Data Control Language).
Incluye los comandos necesarios para que el administradorgestione el acceso a los datos de la bbdd. Tiene los comandos siguientes:
● GRANT: Garantiza el acceso.
● REVOKE: No permite el acceso.
Lenguaje TCL (Transition Control Language).
El propósito de éste lenguaje es permitir ejecutar varios comandos de manera simultánea como si de un comándo único se tratara. Utiliza COMMIT cuando es posible ejecutar todos los comandos y ROLLBACK cuando sucede algo inesperado y se deshacen todos los pasos.