-->

Menú principal

lunes, 14 de noviembre de 2016

TIC 2º Bachillerato Tema 2.- Bases de datos

TEMA 2.- BASES DE DATOS (1ª parte)


ÍNDICE

1. Concepto de Base de Datos.
    1.1.- Características de las bases de datos.
    1.2.- Tipos de bases de datos.
         1.2.1.- Bases de datos jerárquicas.
         1.2.2.- Base de datos en red.
         1.2.3.- Bases de datos relacionales.
         1.2.4.- Bases de datos orientadas a objetos.
         1.2.5.- Bases de datos documentales.
         1.2.6.- Bases de datos multidimensionales.
2. Concepto de Sistema Gestor de Base de Datos (SGBD)...............................
    2.1.- Funciones de un Sistema Gestor de Base de Datos.
    2.2.- Características de un Sistema Gestor de Base de Datos.
    2.3.- Tipos de Sistemas de Gestión de Bases de Datos.
    2.4.- Componentes de un SGBD.
    2.5.- Ejemplos de SGBD.
3. Modelos de datos...........................................................................................
     3.1. Características.
     3.2. Tipos.
4. Modelo de Datos Relacional..........................................................................
    4.1. DDI.
    4.2. DML.
    4.3. DCL.
5. Pautas para la resolución de bases de datos.................................................

Un enlace a un mapa mental realizado por alumnos de 2º de bachillerato:



1.- CONCEPTO DE BASE DE DATOS


    Durante las décadas de los 60 y 70 surge el concepto de las bases de datos; sin embargo, el objetivo principal siempre ha sido la administración óptima de la información y el uso que se le puede dar a la misma. Hoy, las necesidades de las empresas han cambiado y la necesidad de interactuar con diversas fuentes de información ha desafiado a las bases de datos. Lo anterior ha provocado que los volúmenes de información sean mayores, su formato muy diverso lo que incrementa así los tiempos de respuesta para analizar la información y tomar decisiones.

    Se le llama base de datos a los bancos de información que contienen datos relativos a diversas temáticas y categorizados de distinta manera, pero que comparten entre sí algún tipo de vínculo o relación que busca ordenarlos y clasificarlos en conjunto.
Una base de datos puede ser de diverso tipo, desde un pequeño fichero casero para ordenar libros y revistas por clasificación alfabética hasta una compleja base que contenga datos de índole gubernamental en un Estado u organismo internacional. Recientemente, el término base de datos comenzó a utilizarse casi exclusivamente en referencia a bases construidas a partir de software informático, que permiten una más fácil y rápida organización de los datos. Las bases de datos informáticas pueden crearse a partir de software o incluso de forma online usando Internet. En cualquier caso, las funcionalidades disponibles son prácticamente ilimitadas.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php

Una base de datos puede ser de diverso tipo, desde un pequeño fichero casero para ordenar libros y revistas por clasificación alfabética hasta una compleja base que contenga datos de índole gubernamental en un Estado u organismo internacional. Recientemente, el término base de datos comenzó a utilizarse casi exclusivamente en referencia a bases construidas a partir de software informático, que permiten una más fácil y rápida organización de los datos. Las bases de datos informáticas pueden crearse a partir de software o incluso de forma online usando Internet. En cualquier caso, las funcionalidades disponibles son prácticamente ilimitadas.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.php
    Una base de datos es un conjunto de datos que nos dan información sobre determinados conceptos, sus propiedades o característica, que están relacionados entre sí por algún patrón o idea común, y que se organizan de una determinada manera para ser recuperados de una manera fácil y rápida.

    Otra definición sería: Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.

    Por ejemplo, una agenda es un conjunto de datos personales de contactos que se organizan para poder ser consultados de forma fácil y rápida.

   Actualmente, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital, ya que ofrece un amplio rango de soluciones al problema del almacenamiento de datos.

1.1.- Características de las bases de datos

Las bases de datos deben tener las siguientes características:
  • Redundancia controlada, es decir, los datos no deben repetirse.
  • Su estructura debe reflejar relaciones y restricciones del mundo real.
  • Los datos serán independientes de aplicación o usuario. Es decir, cualquier programa o aplicación podrá acceder a la base de datos.
  • Los datos tendrán una definición y descripción únicas.
  • Los procedimientos que se ejecuten en la base de datos tendrán que mantener su integridad, es decir, la coherencia de los datos, respetando además unas normas de acceso y seguridad.

1.2.- Tipos de bases de datos

En un principio existían tres tipos de bases de datos según su estructura interna (la manera de organizar la información):
  1.             Bases de datos jerárquicas
  2.             Bases de datos en red
  3.             Bases de datos relacionales.
Más recientes son las bases de datos orientadas a objetos y las bases de datos multidimensionales.

1.2.1. Las bases de datos jerárquicas

   En una base de datos jerárquica se organizan los datos utilizando estructuras arborescentes (en árbol). Un ÁRBOL es una estructura jerárquica en la que los elementos se suelen denominar NODOS y existen dependencias entre los nodos.
La dependencia es de 1:M del tipo padre/hijo. Un hijo no puede tener más de un padre, pero un padre varios hijos.


    El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento.
    Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.

1.2.2.- Base De Datos De Red

    Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico).
     Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.

1.2.3.- Bases De Datos Relacionales
Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970 , de los laboratorios IBM en San Jose , no tardó en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos(las columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la base de datos. La información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información.
    El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos
Durante los años 80 la aparición de dBASE produjo una revolución en los lenguajes de programación y sistemas de administración de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión.

1.2.4.- Bases De Datos Orientadas a Objetos

Este modelo, bastante reciente, y propio de los modelos informáticos enfocado a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento).


1.2.5.- Bases De Datos Documentales

Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.

Una base de datos puede ser de diverso tipo, desde un pequeño fichero casero para ordenar libros y revistas por clasificación alfabética hasta una compleja base que contenga datos de índole gubernamental en un Estado u organismo internacional. Recientemente, el término base de datos comenzó a utilizarse casi exclusivamente en referencia a bases construidas a partir de software informático, que permiten una más fácil y rápida organización de los datos. Las bases de datos informáticas pueden crearse a partir de software o incluso de forma online usando Internet. En cualquier caso, las funcionalidades disponibles son prácticamente ilimitadas.

... via Definicion ABC http://www.definicionabc.com/tecnologia/base-de-datos.ph

2. Concepto de Sistema Gestor de Base de Datos (SGBD).

    Un sistema de gestión de bases de datos (SGBD) es un conjunto de programas que permiten el almacenamiento, modificación y extracción de la información en una base de datos, además de proporcionar herramientas para añadir, borrar, modificar y analizar los datos. Los usuarios pueden acceder a la información usando herramientas específicas de interrogación y de generación de informes, o bien mediante aplicaciones al efecto.


    Estos sistemas también proporcionan métodos para mantener la integridad de los datos, para administrar el acceso de usuarios a los datos y para recuperar la información si el sistema se corrompe. Permiten presentar la información de la base de datos en variados formatos. La mayoría incluyen un generador de informes. También pueden incluir un módulo gráfico que permita presentar la información con gráficos y tablas.

2.1.- Las funciones de un SGBD


     La ejecución de las operaciones sobre la base de datos para luego proporcionarlos al usuario en función de su requerimiento se realiza de un modo eficiente y seguro. Sus características de un SGDB posibilitan el cumplimiento de una serie de funciones, que pueden agruparse de la siguiente manera:

1. Definición de los datos: 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.

2. Manipulación de los datos: 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, según las peticiones realizadas por los usuarios, y permitir la modificación del esquema de la base de datos gracias a su independencia.

3. Seguridad e integridad de los datos: 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.

4. Recuperación y restauración de los datos: 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.

2.2.- Las características de un SGBD
Las características de un Sistema Gestor de Base de Datos SGBD son:
• Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción.
• Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella.
• Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición de información repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad de los cálculos hace necesaria la aparición de redundancias.
• Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, será necesario vigilar que aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultánea.
• Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar que esta información se encuentra segurizada frente a usuarios malintencionados, que intenten leer información privilegiada; frente a ataques que deseen manipular o destruir la información; o simplemente ante las torpezas de algún usuario autorizado pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos.
• Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra circunstancia capaz de corromper la información almacenada.
• Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de realizar copias de respaldo de la información almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder.
• Control de la concurrencia. En la mayoría de entornos (excepto quizás el doméstico), lo más habitual es que sean muchas las personas que acceden a una base de datos, bien para recuperar información, bien para almacenarla. Y es también frecuente que dichos accesos se realicen de forma simultánea. Así pues, un SGBD debe controlar este acceso concurrente a la información, que podría derivar en inconsistencias.

2.3.- Tipos de Sistemas de Gestión de Bases de Datos
Principalmente estos sistemas se pueden clasificar en dos grandes grupos:
Servidores de BB.DD (S.G.BB.DD. corporativos): estas están orientadas a la implementación de un gran volumen de información y a proveer acceso a través de redes.
Ejemplos de SGBD profesionales son: Oracle, DB2, SQL Server, MySQL, etc
Gestores de BB.DD. personales: Ofrecen solución a las necesidades domesticas de almacenamiento de información, así como gestión para Pymes.
Ejemplos de SGBD personales son: DBase, Access, OpenOffice Base, Sqlite, Firebird, etc.
La escalabilidad es un factor en caso de querer almacenar una gran cantidad de datos.

2.4.- Componentes de un SGBD

      El SGBD no sólo actúa como una herramienta de construcción de BD sino como un interfaz que permite interactuar y explotar sus contenidos. Para ello un SGBD está compuesto por diversos subsistemas a saber; el motor de la base de datos, el sistema de definición de datos, el sistema de manipulación y gestión, el sistema de herramientas y aplicaciones y el módulo de administración.
  • Motor de la base de datos. Es el programa del SGBD que construye las consultas y peticiones que se realizan en el sistema para que sean procesadas por el sistema de BD. Por ejemplo el SGBD PhpMyAdmin consta de un motor de base de datos basado en MySQL por lo tanto las peticiones y operaciones que se realicen serán procesadas y convertidas a un formato SQL interpretable por la base de datos gestionada. Con Microsoft Access sucede lo mismo, el programa en sí mismo es un SGBD que transforma todas las peticiones y operaciones sobre la base de datos, también en formato SQL no percibido por el usuario. De esta forma la base de datos interpreta correctamente que el usuario desea insertar una nueva fila en la tabla o editar una serie de valores. 
  • Sistema de definición de datos. Programa especializado en crear los ficheros inversos, ficheros diccionarios, realizar los procesos de indexación de campos de las tablas y aplicar los ficheros de palabras vacías.
  • Sistema de manipulación y gestión. Es la parte del SGBD dedicada a la manipulación de registros en las tablas de la base de datos. Hace posible la navegación a través de sus contenidos, la inserción de nuevos registros, su modificación, eliminación, importación o exportación mediante un interfaz sencillo destinado al usuario, evitándole la programación de sus consultas, sustituyendo procesos complejos por funciones almacenadas en un botón o un enlace.
  • Sistema de herramientas y aplicaciones. Lo constituyen todas las herramientas y subprogramas orientados a facilitar la creación de interfaces de edición y consulta en la base de datos. Esto significa que el SGBD ayuda a construir aplicaciones para manipular de forma eficiente las tablas de la base de  datos, permitiendo al usuario diseñar los formularios de entrada de datos, las pantallas de visualización de registros, las pantallas de búsqueda y recuperación, etc. Por ejemplo Microsoft Access y Filemaker son SGBD que integran tales herramientas con las que es posible construir una aplicación un sistema de información especializado con un interfaz adaptado a las necesidades del usuario. En el caso de MySQL y PhpMyAdmin esto no es así, ya que el interfaz personalizado por el usuario debe ser desarrollado por él mismo en forma de formularios web basados en un servidor Apache y programados en lenguaje PHP. Este aspecto que a priori podría ser una desventaja, hace posible que sea el método de diseño de interfaz más avanzado, personalizado y profesional, dado que es posible modificar todos los parámetros de funcionamiento del sistema, aspecto que a diferencia de SGBD no es posible encontrar, debido a la limitación de las herramientas que proporcionan.
  • Administración. Lo constituye aquella parte del programa destinada a gestionar las funciones de almacenamiento, los procesos generales del sistema, los privilegios de acceso a la base de datos, gestionar las operaciones de mantenimiento con las bases de datos creadas, modificar las propiedades del interfaz, editar la configuración de los demás componentes del SGBD.
Aquí os dejo la primera ficha del tema 2.-Bases de datos que resume esta parte del tema:


2.5.- EJEMPLOS DE SGBD

Ejemplos de SGBD son Oracle, SQL Server, Sybase, DB2, MySQL, PostgreSQL.

MySQL es un software de sistema gestión de base de datos relacional que se puede ejecutar en los sistemas operativos GNU/Linux, Windows y Mac, se ejecuta de forma multi-thread y multiusuario y es distribuido por Oracle bajo la licencia GPL y comercial. Este sistema gestor de base de datos es el mas popular del mundo, su uso en las aplicaciones web, tales como en WordPres, Joomla y entre otros , Por ser distribuido bajo la licencia GPL existen diferentes apis o interfaces de programación de aplicaciones para diversos lenguajes de programación para acceder a la base de datos de MySQL.


Oracle es un sistema de gestión de base de datos desarrollado por la compañía Oracle, este sistema es de tipo modelo objeto relacional, por el cual es uno de los gestores de bases de datos mas completo como: soporte de transacciones, estabilidad, escalabilidad  y puede correr en los sistemas operativos GNU/LINUX, Windows, Mac y entre otros.


Microsoft SQL Server  un software propietario de gestión de base de datos creado por la compañía Microsoft disponible, lamentablemente  solo se puede usar en el sistema operativo Windows, aunque recientemente anunciaron que SQL Server 2016 estaría disponible para GNU/Linux para este fin de año.





La ficha la podéis descargar en formato pdf en este enlace: Ficha nº1 Tema 2 


Para descargar el documento usar este enlace:

Tema 2.-Bases de datos

No hay comentarios:

Publicar un comentario