jueves, 10 de noviembre de 2016

ARQUITECTURA DE BASE DE DATOS

La arquitectura de un sistema de base de datos está influenciada por el sistema informático que soporta la instalación del SGBD, lo que reflejará muchas de las características propias del sistema subyacente en el SGBD.
Las bases de datos respetan la arquitectura de tres niveles definida, para cualquier tipo de base de datos, por el grupo ANSI/SPARC.

1. Nivel interno: es el nivel más bajo de abstracción, y define cómo se almacenan los datos en el soporte físico, así como los métodos de acceso.

2. Nivel conceptual: es el nivel medio de abstracción. Se trata de la representación de los datos realizada por la organización, que recoge las vistas parciales de los requerimientos de los diferentes usuarios y las aplicaciones posibles. Se configura como visión organizativa total, e incluye la definición de datos y las relaciones entre ellos.

3. Nivel externo: es el nivel de mayor abstracción. A este nivel corresponden las diferentes vistas parciales que tienen de la base de datos los diferentes usuarios. En cierto modo, es la parte del modelo conceptual a la que tienen acceso.





El modelo de arquitectura propuesto permite establecer el principio de independencia de los datos. Esta independencia puede ser lógica y física. Por independencia lógica se entiende que los cambios en el esquema lógico no deben afectar a los esquemas externos que no utilicen los datos modificados. Por independencia física se entiende que el esquema lógico no se vea afectado por cambios realizados en el esquema interno, correspondientes a modos de acceso, etc.

Las redes de computadores permiten separar tareas en un esquema de clientes y servidores, el procesamiento paralelo dentro del computador permite acelerar algunas de las tareas de la base de datos así como la posibilidad de ejecutar más transacciones por segundo. Las consultas se pueden paralelizar permitiendo así que una consulta se pueda ejecutar por más de un procesador al mismo tiempo, esta característica ha llevado al estudio de las bases de datos paralelas.


PROPIEDADES DE LAS RELACIONES



No existen tuplas repetidas, como el cuerpo de una relación es un conjunto de tuplas por definir, matemáticamente un conjunto no posee elementos repetidos.

Las tuplas no están ordenadas en una relación por definir. Matemáticamente en un conjunto sus elementos no están ordenados.

Los atributos no están ordenados, como una cabecera es un conjunto de atributos por definir. Matemáticamente los conjuntos no están ordenados.

Todos los valores de los atributos atómicos en la intersección de una fila con columna. Debe haber un solo valor y no una lista de valores.


 INTEGRIDAD DE LOS DATOS

Si se quiere hablar de integridad de datos debemos hablar de reglas de integridad relacional que son las que permiten informar al sistema manejador de base de datos sobre ciertas restricciones existentes en los datos. Para que no se presenten ocurrencias no validas en los datos.
Existen restricciones particulares en una base de datos
Existen restricciones generales para las bases de datos representadas en dos reglas de integridad.

1.      Regla de integridad de las entidades (clave primaria)
2.      Regla de integridad referencial (Clave ajena)

Clave Primaria: Es el identificador único de una relación, una clave primaria puede ser sencilla formada por un solo atributo o puede ser compuesta conformada por varios atributos.

Clave candidata: Una relación puede contener varios atributos que sirvan como identificador único, a cada uno de estos atributos se denomina clave candidato.

Clave Ajena: Una clave ajena es un atributo (puede ser compuesto) de una relación r2 cuyos valores deben concordar con los de una clave primaria en una relación r1.


Relación Referencial: Es la relación que contiene la clave ajena
Relación Referida: Es la relación que contiene la clave primaria

REGLA DE INTEGRIDAD REFERENCIAL

Una base de datos no debe contener valores de clave ajena sin concordancia Y sin una clave primaria correspondiente.

Reglas para clave ajena: Una clave ajena puede aceptar campos nulos. Puede aceptar campos nulos siempre y cuando no haga parte de la clave primaria en teoría.

La clave ajena se utiliza para minimizar los atributos

Si se elimina un valor de clave primaria que hace referencia a una clave ajena sucederá lo siguiente:

  1. Eliminación restringida: se elimina si no existe ninguna referencia de claves ajenas a la clave primaria en cuestión

  1. Eliminación en Cascada: Se elimina el valor de clave primaria y todos los valores en las claves ajenas que hace referencia a esta.

  1. Anular: Se elimina el valor de clave primaria y se colocan valores nulos en los valores de claves ajenas que hacen referencia a esta


VENTAJAS DE LA VISTA

Las ventajas de utilizar vistas virtuales son las siguientes:
                       
  1. Facilita la independencia de los datos
  2. Permite a los usuarios ver diferentes partes de una base de datos
  3. Facilita la per sección de los datos
  4. Facilita la seguridad de los datos


 MODELO RELACIONAL

Es una representación de los datos mediante tablas las cuales se pueden manipular por medio de operaciones. El modelo relacional en cuanto a los datos se ocupa de: Estructuras, Integridad, Manipulación.


Estructura de los datos: Para poder relacionar una tabla con otra en el modelo relacional de base de datos, se debe tener en cuenta la estructura de los datos de la siguiente manera:

Relación: Es la estructura básica del modelo relacional que sirve para representar los objetos de la información y las asociaciones entre ellos.
  • Tabla
  • En una sola tabla

Atributos: Son las propiedades de las relaciones y corresponde a una columna en estas relaciones
  • Campos
  • Encabezado de columna de una tabla

Tupla: Corresponde a una fila dentro de una relación
·         Fila de datos en una tabla

Grado: Numero de atributos dentro de una relación
·         Numero de columnas en una tabla

Cardinalidad: Numero de tuplas que tiene una relación

Dominio: Conjunto de valores de las cuales uno o más atributos obtienen su valor real. Este puede ser de dos formas

·         Por Extensión: Cuando se dan sus posibles valores
·         Por Intensión: Cuando se define el tipo de datos

Las características de los dominios son los siguientes:

Un atributo esta siempre asociado a una relación mientras que un dominio tiene existencia propia

Un atributo toma valores de un dominio

Varios atributos distintos pueden tomar valores de un mismo dominio



MANEJADOR DE DISCO

El manejador de discos es el encargado de todas las operaciones físicas de entrada y salida en el disco duro. Las operaciones que puede realizar el Manejador de Disco son las siguientes:

  1. Leer una página del conjunto de páginas almacenadas en el disco
  2. Reemplazar una página dentro del conjunto de páginas almacenadas en disco
  3. Añadir una página al conjunto de páginas almacenadas en disco
  4. Eliminar una página del conjunto de páginas almacenadas en el disco

El acceso a una base de datos se hace de la siguiente manera:


  1. El sistema manejador de base de datos determina cual registro almacenado necesita y pide al manejador de archivos que acceda a este registro.
  2. El manejador de archivos determina cual página tiene el registro deseado y solicita al manejador de disco que acceda a esta página.
  3. El manejador de disco determina la localización física de la página en el disco y realiza la operación de entrada y salida necesaria.

SISTEMA RELACIONAL

Base de Datos Relacional: Base de datos que el usuario percibe como tablas o conjunto de tablas

Tablas: Esta compuesta por una fila de cabecera de columnas y cero o mas filas de valores de datos.

Tabla Base: Es una tabla que tiene existencia propia es autónoma y nombrada

  • Autónoma: Tiene existencia propia
  • Nombrada: Tiene nombre Propio

Vistas: Son tablas virtuales

Operaciones de una Base de Datos: La operaciones que se pueden efectuar en una base de datos son las siguientes: Listar, Agregar, Modificar, Eliminar datos de una tabla en una base de datos relacional.



INDEPENDENCIA DE DATOS

La independencia de los datos puede ser de dos formas, la cuales son:

Física: Capacidad de modificar el esquema físico sin que haya necesidad de volver a escribir los programas de aplicación. En algunas ocasiones se hace necesario modificar el nivel físico para mejorar el funcionamiento.

Lógica: Capacidad de modificar el esquema conceptual sin provocar que se vuelvan a escribir los programas de aplicación. Estas modificaciones en el nivel conceptual se hacen necesario cuando hay una alteración de la escritura lógica de la base de datos. Es la más difícil de conseguir porque es difícil de modificar la base de datos sin que sufra cambios de nivel extremo.





FUNCIONES DEL SISTEMA MANEJADOR DE BASE DE DATOS

        El sistema manejador de base de datos cumple las siguientes funciones:

  1. Manipulación de datos: El sistema manejador de base de datos debe ser capaz de atender solicitudes de usuarios para extraer y actualizar datos existentes o para agregar datos nuevos, existen solicitudes planeadas y solicitudes no planeadas. 
  1. Seguridad e integridad de los datos: El sistema manejador de base de datos debe supervisar las solicitudes de los usuarios y rechazar los intentos de violar las medidas de seguridad e integridad definidas por el administrador de la base de datos.
  1. Recuperación y concurrencia de los datos: El sistema manejador de base de datos debe cumplir ciertos controles de recuperación y concurrencia, para evitar la pérdida de los datos en la base de datos.
  1. Diccionario de datos: El sistema manejador de base de datos debe contar con un diccionario de datos, el cual debe tener toda la información de los campos que conforman las tablas de la base de datos.
  1. Desempeño: El sistema manejador de la base de datos deberá ejecutar todas las funciones especificadas de la manera más eficiente posible.

MANEJADOR DE ARCHIVOS

El manejador de archivos es el encargado de realizar las siguientes operaciones:

  1. Leer un registro almacenado en un archivo
  2. Reemplazar un registro almacenado dentro de un archivo
  3. Añadir un nuevo registro dentro de un archivo almacenado y asignar un nuevo número de registro.
  4. Eliminar un registro almacenado de un archivo
  5. Crear un nuevo archivo almacenado
  6. Destruir un archivo almacenado


¿PORQUE DEBEMOS UTILIZAR UNA BASE DE DATOS?

Porque es rápido, compacto, es menos laborioso, es actualizado y cómodo.



DESVENTAJAS DE NO TENER BASE DE DATOS






TIPOS DE DATOS PARA LOS CAMPOS DE UNA TABLA

TEXTO: Admite contenido de caracteres alfanuméricos, el tamaño estará entre 1 y 255 Bytes y el valor por defecto de esta tamaño es de 50 Bytes.

MEMO: Admite contenido de tipo alfanumérico, el tamaño está entre 1 y 64.000 Bytes (64Kas).

NUMERICOS: Admite contenido de caracteres numéricos, el tamaño será entre 1, 2, 4 y 8 Bytes, dependiendo del formato de tipo numérico. El formato de tipo numérico puede ser de tipo: DOUBLE, FLOAT, INTEGER, etc...

ESTE TIPO DE DATOS SE REALIZARA CUANDO VALLAMOS A REALIZAR OPERACIONES CON ELLOS

FECHA Y HORA: Solo admite horas y fechas. Este tipo de dato ocupa 8 Bytes.

MONEDA: Admite contenido de caracteres numéricos, dándoles a estos un formato automático para una moneda (Puntos de millar, símbolo de la peseta, etc...) dependiendo este formato de la configuración regional del panel de control. Este tipo de datos puede llevar decimales y se utilizara siempre que hablemos de cantidades monetarias.

AUTONUMERICO: Este campo lo crea Access con nuestro consentimiento de una manera automática, para establecerlo como una clave principal. Es de tipo numérico, y es incrementada automáticamente por Access cada vez que añadimos un nuevo registro a la tabla. Este tipo de claves principal, no suelen usarse, ya que es preferible definir nuestras propias claves, aunque puede ser usada como una posible puerta trasera en alguna ocasión.

SI / NO: Tipo de datos boléanos, los valores boléanos pueden tener dos valores posibles, 1 o 0, donde 1 es verdadero y 0 es Falso.

OBJETO OLE: El contenido serán gráficos y el tamaño de estos puede ser de hasta 1 un Gigabyte. Hay que tener especial cuidado con estos objetos, pues al borrarlos de la base de datos, no se reduce el tamaño de la misma, mientras esta no sea compactada. 

ADMINISTRADOR DE BASE DE DATOS (BDA)

El administrador de datos es una persona que toma las decisiones estratégicas y de políticas con respecto a la información contenida en la base de datos.
Las funciones del administrador de base de datos son:

  • Definir el esquema conceptual: El administrador de datos debe decidir, con exactitud cuál es la información que le interesa a la base de datos para su correcto funcionamiento

  • Definir esquemas internos: El administrador de base de datos decide cómo se representara la información en la base de datos.

  • Vinculación con los Usuarios: El administrador de base de datos debe encargarse de la comunicación con los usuarios, garantizando la disponibilidad de los datos cada vez que estos se requieran.

  • Definir procedimientos de respaldo y recuperación: El administrador de base de datos deberá definir y poner en práctica un plan de recuperación adecuado que incluya una descarga o vaciado periódico de la base de datos en un medio de almacenamiento de respaldo.

  • Supervisar el desempeño y responder a cambios en los requerimientos iniciales: El administrador de base de datos debe organizar el sistema de modo que se obtenga el mejor desempeño para la información contenida en ella, y que se pueda realizar ajustes apropiados cuando cambian los requerimientos de la base de datos.


BASE DE DATOS

Datos: Es la unidad mínima de información que representa un valor que es un carácter de un objeto o algo.



Información: Es un conjunto de Datos

Sistema de Información: Es un conjunto de elementos que permiten manipular información de determinada empresa, entre estos podemos encontrar el equipo computacional y el Software del sistema.




Sistema de Base de Datos: Es un sistema computacional que permite manipular información de una empresa en particular y además esta información debe estar disponible cuando se necesite.

COMPONENTES DE LA BASE DE DATOS





TIPOS DE BASE DE DATOS




TIPOS DE DATOS

Datos de entrada: Se refiere a la información que entra al sistema por primera vez. Esta información podría dar pie a una modificación de los datos persistentes, pero en principio no forma parte de la base de datos propiamente dicha.

Datos de Salida: Se refiere a mensajes y resultados que emanan del sistema. Una vez más, esta información podría derivarse de los datos persistentes, pero no se le considera en si como parte de la Base de Datos.


COMPONENTES DE BASE DE DATOS

    Un sistema de bases de datos contempla los siguientes componentes:
    • La base de datos. El Sistema de Gestión de Base de Datos(SGBD, DBMS) o motor, tal como Oracle, Sybase, etc. Programas de Aplicación.
    • Un conjunto de usuarios(finales,DBA, programadores de aplicaciones, etc.) Máquinas,Programas Utilitarios.
    Un DSL es un sublenguaje de datos, es una combinación de dos lenguajes: un lenguaje de definición de datos(DML). Representa un nexo entre el sistema de DB y algún lenguaje anfitrión, y provee herramientas a los lenguajes tradicionales para que se integren al Sistema de DB.
    DBMS es el Sistema de Administración de Bases de Datos, que corresponde al Software que maneja todos los accesos a las DB.
    Administrador de DB(DBA):Persona o grupo de personas encargada del control general del sistema. Responsabilidades:
    • Decidir el contenido de la DB.
    • Decidir la estructura de almacenamiento y la estrategia de acceso.
    • Vincularse con los usuarios.
    • Definir los controles de autorización y procedimientos de validación.
    • Definir una estrategia de respaldo y recuperación.
    • Controles de desempeño y responder a los cambios de requerimiento.

SISTEMA DE ADMINISTRADOR DE BASE DE DATOS

DBA es también una abreviatura en inglés para “hacer negocios como” (doing business as), un término usado a veces en la escritura de negocios y legal. dBA es una abreviatura de decibelios con ponderación.

Un administrador de base de datos (DBA) dirige o lleva a cabo todas las actividades relacionadas con el mantenimiento de un entorno de base de datos exitoso. Las responsabilidades incluyen el diseño, implementación y mantenimiento del sistema de base de datos; el establecimiento de políticas y procedimientos relativos a la gestión, la seguridad, el mantenimiento y el uso del sistema de gestión de base de datos; y la capacitación de los empleados en la gestión y el uso de las bases de datos.



APLICACIONES DE BASE DE DATOS 
Las  de  de datos son programas de  diseñados para recoger, gestionar y difundir información de manera eficiente. Muchos propietarios de viviendas y pequeñas  crean bases de datos simples, con la información contacto de los clientes y listas de correo con software fácil de usar como Microsoft "Access" y "FileMaker Pro". "Oracle", "SQL Server"y "FoxPro" son ejemplos de aplicaciones de bases de datos avanzadas, con los lenguaje de programación que se puede utilizar para crear soluciones de negocios personalizadas en entornos de red.

Formas:esta Se emplean para introducir información a la base de datos. 

Consultas: Se usan cuando los usuarios desean consultar los datos para contestar preguntas o para identificar problemas o situaciones particulares. Para expresar las consultas se puede usar el lenguaje SQL de acceso a los datos, otra posibilidad es usar la consulta por ejemplo (QBE). En la mayoría de los DBMS las consultas se pueden guardar como parte de la aplicación, de modo que sea posible volverlas a ejecutar. Además en las consultas se pueden especificar parámetros, lo que significa que se estructuran de forma tal que acepten valores de criterios durante su funcionamiento.

Reportes: Un reporte es una presentación que tiene un formato de la información de una base de datos. Suelen estar divididos por secciones como Encabezado, títulos, grupos, detalles, subtotales, totales y pié de página. La presentación de la información casi siempre tiene uno o más ordenamientos.

Menús: Se usan para organizar los distintos componentes de la aplicación con el propósito de que el usuario final acceda a ellos con facilidad, mostrándole las opciones disponibles y ayudándole a seleccionar las acciones que desea realizar.

Programas de aplicación: Los programas de aplicación vienen a ser como el pegamento que nos permite unir el resto de los componentes de manera coherente y permite realizar procesos y cálculos a la aplicación. Adicionalmente suele haber algunas limitaciones que los DBMS no pueden enforzar directamente en la estructura de los datos y que deben ser codificadas en el programa de aplicación.


CARACTERÍSTICAS Y OBJETIVOS DE LA BASE DE DATOS

CARACTERÍSTICAS  

- Independencia de los Datos. Es decir, que los datos no dependen del programa y por tanto cualquier aplicación puede hacer uso de los datos.

- Reducción de la Redundancia. Llamamos redundancia a la existencia de duplicación de los datos, al reducir ésta al máximo conseguimos un mayor aprovechamiento del espacio y además evitamos que existan inconsistencias entre los datos. Las inconsistencias se dan cuando nos encontramos con datos contradictorios.

- Seguridad. Un SBD debe permitir que tengamos un control sobre la seguridad de los datos.

- Se visualiza normalmente como una tabla de una hoja de cálculo, en la que los registros son las filas y las columnas son los campos, o como un formulario.

- Permite realizar un listado de la base de datos.

- Permiten la programación a usuarios avanzados.



OBJETIVOS

Las funciones más importantes que nos puede permitir realizar un Sistema gestor de base de datos son las siguientes:

a. API (Application Programming Interface): permite a los usuarios avanzados acceder a algunos recursos internos del programa, para configurarlo.
b. Soporte BD ¨S Multiplataforma: indica la compatibilidad entre los distintos Sistemas gestores de bases de datos.
c. Soporte SQL: sirve para establecer indicaciones a la hora de realizar búsquedas y consultas en la base de datos.
d. Programación visual: permite crear una especie de lenguaje de forma gráfica, para establecer parámetros personalizados.

MODELO DE BASE DE DATOS

Un modelo de datos es entonces una serie de conceptos que puede utilizarse para describir un conjunto de datos y las operaciones para manipularlos. Hay dos tipos de modelos de datos: los modelos conceptuales y los modelos lógicos. Los modelos conceptuales se utilizan para representar la realidad a un alto nivel de abstracción.

Los modelos conceptuales deben ser buenas herramientas para representar la realidad, por lo que deben poseer las siguientes cualidades: 

• Expresividad: deben tener suficientes conceptos para expresar perfectamente la realidad. 
• Simplicidad: deben ser simples para que los esquemas sean fáciles de entender.
• Minimalidad: cada concepto debe tener un significado distinto.
• Formalidad: todos los conceptos deben tener una interpretación única, precisa y bien definida. En general, un modelo no es capaz de expresar todas las propiedades de una realidad determinada, por lo que hay que añadir aserciones que complementen el esquema.  


¿QUE ES LA BASE DE DATOS?

Desde el punto de vista informático, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos.. En la actualidad, 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 (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.

ESTÁTICA
Son aquellas en las que el tamaño ocupado en memoria se define antes de que el programa se ejecute y no puede modificarse dicho tamaño durante la ejecución del programa.
Estas estructuras están implementadas en  todos los lenguajes.
Su principal característica es que ocupan solo una casilla de memoria, por lo tanto una variable simple hace referencia a un único valor a la vez, dentro de este grupo de datos se encuentra: enteros, reales, caracteres, boléanos, enumerados y subrangos (los últimos no existen en algunos lenguajes de programación).


DINÁMICA

No tienen las limitaciones en el tamaño de memoria ocupada que son propias de las estructuras estáticas.
Mediante el uso de un tipo de datos especifico, denominado puntero, es posible construir estructuras de datos dinámicas que no son soportadas por la mayoría de los lenguajes, pero que en aquellos que si tienen estas características ofrecen soluciones eficaces y efectivas en la solución de problemas complejos.
Se caracteriza por el hecho de que con un nombre se hace referencia a un grupo de casillas de memoria. Es decir un dato estructurado tiene varios componentes.


BASE DE DATOS BIBLIOGRÁFICAS
​​​​​​​​​​​​​​​​​​​​Son herramientas que almacenan registros bibliográficos o metadatos y que permiten recuperar información de fuentes digitales en diversos formatos, tales como libros, revistas, patentes, artículos de prensa, informes sectoriales, literatura gris, entre otros.​


BASE DE DATOS DE TEXTO
Una base de datos de texto completo es una que está presentada en línea. Se pueden buscar términos específicos, palabras clave, materias y fechas. La diferencia entre una base de datos de texto completo y una regular es que la primera tiene la opción de ver el texto completo, en línea o en otro sitio de la base de datos. El uso más común que se le da a este  de base de datos es para los campus de escuelas y universidades, pero también las hay para otros usos. La de información de patentes de los Estados Unidos es de gran utilidad.