sábado, 27 de junio de 2015

MICROSOFT ACCESS

-Microsoft Access-
 

        Microsoft Access es una herramienta de Microsoft para la definición y manipulación de bases de datos. Una base de datos es un sistema informatizado cuyo propósito principal es mantener información y hacer que esté disponible en el momento requerido. Esta información es persistente dentro del sistema, es decir, una vez introducida en él, se mantiene hasta que el usuario decida eliminarla. Los sistemas de bases de datos se diseñan para manejar grandes cantidades de información. El manejo de datos incluye tanto la definición de las estructuras para el almacenamiento de la información como los mecanismos para el manejo de la misma.
   Tablas: Es un conjunto de información acerca de una persona, cosa o evento. Acces representa las tablas de forma similar a las hojas de calculo, donde las columnas son campos y las filas son registros.
    Formularios: es la interfaz que maneja Microsoft Acces para la interacción con el usuario. En un formulario se puede presentar, cambiar, eliminar e introducir la información de una o mas tablas.
     Consultas: Es una solicitud de información a la base de datos. Los datos mostrados pueden proceder de una sola tabla o de un conjunto de tablas. Una consulta crea la llamada "hoja de respuestas dinámicas" a partir de la información extraída de las tablas de las bases de datos.
    Informes: Con un informe se presenta ciertos contenidos de las bases de datos para ser impresos. Un informe constituye una forma de representar los datos significativos que se quieren para poder ser distribuidos.
        Entre sus principales características se encuentran:
  • Access es gráfico: por lo que aprovecha al máximo la potencia gráfica de Windows, ofreciendo métodos usuales de acceso a los datos y proporcionando métodos simples y directos de trabajar con la información.
  • Access facilita la administración de datos: ya que sus posibilidades de consulta y conexión le ayudan a encontrar rápidamente la información deseada, cualquiera que sea su formato o lugar de almacenamiento.
  • Access hace posible producir formularios e informes sofisticados y efectivos, así como gráficos y combinaciones de informes en un solo documento.
  • Access permite lograr un considerable aumento en la productividad mediante el uso de los asistentes y las macros. Estos permiten automatizar fácilmente muchas tareas sin necesidad de programar.

      Ventajas de usar las bases de datos: 
  • Evitan la redundancia. 
  • Evitan la inconsistencia. 
  • Obligan al cumplimiento de las normas o requisitos para la adición y eliminación de datos a la base de datos. 
  • Es posible aplicar restricciones de seguridad para el acceso a los datos.
  • Se mantiene la integridad entre los datos.

 Los elementos que conforman una base de datos en Access son.

     1. Tablas: Colección de datos.
 
     2. Consultas: Acciones con los datos.
 
     3. Formularios: Presentación de los datos.
 
     4. Reportes o Informes: Impresión de los datos.
 
     5. Macros: Rutinas cortas para ejecutar eventos o acciones.
 
     6. Módulos o Procedimientos: Definición de procedimientos comunes,        variables públicas.


Referencias:
https://docs.google.com/document/d/1-GplNMc41LOPhIZT5sLYeRlxRsA8jrpZNd1sNaAswI8/edit
http://www.lalila.org/tutoriales/tutorial_Access97.pdf

 

SISTEMA MANEJADOR DE BASE DE DATOS.

- Sistema manejador de base de datos-

        Los sistemas manejadores de base de datos (SGBD), en inglés: DataBase Management System (DBMS), son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. El propósito general de los sistemas manejadores de base de datos es el de manejar de manera clara, sencilla y ordenada un conjunto de datos que posteriormente se convertirán en información relevante para una organización.
             Es la porción más importante del software de un sistema de base de datos. Un DBMS es una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de alguna tarea específica.
Funciones Principales:
  • Establecer y mantener las trayectorias de acceso a la base de datos de tal forma que los datos puedan ser accesados rápidamente.
  • Manejar los datos de acuerdo a las peticiones de los usuarios.
  • Registrar el uso de las bases de datos.
  • Interacción con el manejador de archivos. Esto a través de las sentencias en DML al comando del sistema de archivos. Así el Manejador de base de datos es el responsable del verdadero almacenamiento de los datos. Respaldo y recuperación.
Características:
  • 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 segura 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.
Desventajas:
  • Presentan deficiencias con datos gráficos, multimedia, CAD y sistemas de información geográfica.
  • No se manipulan de forma manejable los bloques de texto como tipo de dato.
  • Aunque todos los SMBD tienen el mismo propósito, existen casos especiales que los hacen diferentes y, por lo consiguiente, cada uno posee ciertas ventajas sobre los demás. Existen en el mercado y se clasificaran de acuerdo a la licencia que posean, esta puede ser: de código libre o abierto son aquellos que se les puede modificar su código, se adecuan a las necesidades del usuario y cuentan con licencia, por ejemplo MySQL, Apache Derby, DB2, etc. Al contrario de aquellos SMBD propietarios o de manejo mediante web no libres y gratuitos como FileMaker, WindowBase, Microsoft SQL Server Compact, etc. Por último se mencionaran los sitios web que ofrecen versiones gratuitas como es el dreamspark, el tipo de aplicaciones que se pueden desarrollar y el tipo de software que se utilizara.
SMBD de código abierto:
 
COMPONENTES DEL SISTEMA MANEJADOR DE BASES DE DATOS



El lenguaje de manipulación de datos (DML) es utilizado para escribir programas que crean, actualizan y extraen información de las bases de datos.
Ejemplos de comandos DML son:
Select: Utilizado para recuperación de datos en lenguajes como SQL, indicando la información a recuperar mediante cuatro partes básicas: la clausula Select seguida de la descripción de lo que se quiere buscar, los nombres de las columnas. La cláusula From seguida de la especificación de la tabla o tablas de las que se realizan la consulta. Ambas clausulas son obligatorias.
Las otras dos clausulas son opcionales, la claúsula Where como criterio de selección y la clausula Orderby como criterio de ordenación.
Insert: Utilizada para la inserción de nuevos datos en una tabla, agregando nuevos registros a la tabla especificada. También es utilizado para la inserción de varias filas a la vez indicando una consulta que genere varios registros con valores a insertar.
Delete: mediante esta sentencia podemos eliminar filas en una tabla. Se pueden borrar una fila o varias filas. En el caso que se quiera borrar todas las filas la tabla queda vacía pero la definición de la tabla no desaparece.
Update: se utiliza para modificar valores de una o más columnas en las filas seleccionadas de una tabla específica. En la sentencia se debe detallar la tabla destino a modificar.
LENGUAJE DE DEFINICIÓN DE DATOS:
(DDL, Data Definition Language):
Permite definir las estructuras que almacenarán los datos y los procedimientos o funciones para realizar las consultas.
Al principio fue usado el referente a Codasyl, donde se establecía el esquema de la base de datos usando descripciones de los registros y campos del modelo. Posteriormente se utilizó como parte del SQL y en la actualidad se hace referencia a cualquier lenguaje formal usado para describir datos o estructuras.
Lenguaje de control de Datos (DCL, Data Control Language):
Permite al administrador controlar el acceso a los datos contenidos en la Base de Datos.
Ejemplo de comandos DCL, tenemos:
REVOKE: elimina permisos concedidos por el comando GRANT.
GRANT: asigna permisos a usuarios y roles para tareas específicas.
El lenguaje de consulta (SQL) es empleado por el usuario para extraer información de la base de datos. El lenguaje de consulta permite al usuario hacer requisiciones de datos sin tener que escribir un programa, usando instrucciones como el SELECT, el PROJECT y el JOIN.

La secuencia conceptual de operaciones que ocurren para acceder cierta información que contiene una base de datos es la siguiente:

1 El usuario solicita cierta información contenida en la base de datos.
El DBMS intercepta este requerimiento y lo interpreta.
El DBMS realiza las operaciones necesarias para acceder y/o actualizar la información solicitada.

  
PROCESOS
Los procesos principales que realiza el SMBD son:
  • Definir los datos: Especificar los tipos de datos, estructuras y restricciones que se presenten
  • Construir la base de datos: Almacenar los datos en un medio de almacenamiento.
  • Manipular la base de datos: Consultar, actualizar la base de datos, realizar reportes, eliminar datos, manejar restricciones y verificar integridad entre otros.
CAPACIDADES
Control de redundancia:
Las vistas de diferentes usuarios se deben integrar en el diseño de la base de datos. El diseño debe almacenar cada dato lógico en un solo lugar en la base de datos para evitar la inconsistencia y ahorrar espacio de almacenamiento.
Restricción de acceso no autorizado:
Se debe contar con un subsistema de seguridad que permita crear cuentas con las restricciones respectivas.
Forzar el uso de restricciones de integridad:
El SMBD debe ofrecer recursos necesarios para definir las restricciones de integridad que deben cumplir los datos y hacer como tal que sean cumplidas. Los diseñadores de base de datos deben identificar estas restricciones durante el diseño. Las restricciones se pueden especificar en el SMBD  cumpliéndose de forma automática aunque también se pueden verificar con aplicativos adicionales o software de validación.
Implementar Métodos de Respaldo y Recuperación:
Un buen SMBD debe tener un subsistema de respaldo y recuperación con recursos para cuando se presenten fallos de hardware y software.
Proporcionar múltiples interfaces de usuario:
De acuerdo con los usuarios, grupos de usuarios y roles el SMBD debe suministrar los mecanismos de acceso utilizando los permisos y restricciones dadas.
Representar relaciones complejas entre datos:
Cuando los datos dentro del modelo necesitan realizar relaciones con restricciones y consultas complejas, el SMBD debe facilitar al Administrador de la Base de Datos la ejecución de las operaciones necesarias.

 Referencias:
http://doors-oz.blogspot.com/2011/02/caracteristicas-de-manejador-de-base-de.html
http://sistemamanejadordebasededatossmbd.blogspot.com/2011/02/diferentes-tipos-de-sistemas-de.html
http://www.byspel.com/sistemas-manejadores-de-bases-de-datos/




MODELO RELACIONAL DE BASE DE DATOS

- Modelo relacional de bases de datos-
 

      El modelo relacional constituye una alternativa para la organización y representación de la información que se pretende almacenar en una base de datos. Se trata de un modelo teórico matemático que, además de proporcionarnos los elementos básicos de modelado (las relaciones), incluye un conjunto de operadores (definidos en forma de un álgebra relacional) para su manipulación, sin ambigüedad posible
 
       En el modelo relacional se basa en el concepto matemático de relación. En este modelo, la información se representa en forma de “tablas” o relaciones, donde cada fila de la tabla se interpreta como una relación ordenada de valores (un conjunto de valores relacionados entre sí)
   Este modelo permite representar la información del mundo real de una manera intuitiva,introduciendo conceptos cotidianos y fáciles de entender por cualquier inexperto. Así mismo,mantiene información sobre las propias características de la base de datos (metadatos), que facilitan las modificaciones, disminuyendo los problemas ocasionados en las aplicaciones ya desarrolladas. Por otro lado, incorpora mecanismos de consulta muy potentes, totalmente independientes del S.G.B.D., e incluso de la organización física de los datos; el propio S.G.B.D. es el encargado de optimizar estas preguntas en formato estándar, a sus características propias de almacenamiento.
      Se trata de un modelo lógico, que establece una estructura sobre los datos, aunque posteriormente éstos puedan ser almacenados de múltiples formas para aprovechar características físicas concretas de la máquina sobre la que se implante la base de datos realmente. Es algo así como guardar unos libros en una biblioteca; dependiendo del número de salas de la biblioteca, del tamaño y forma de cada una de ellas, su número de estanterías, y en definitiva, de las características físicas del recinto, podremos disponer los libros de una forma u otra para hacer más cómoda y fácil su consulta y acceso. Los libros son los mismos, pero pueden ubicarse de muy distintas formas.

CONCEPTO DE TABLA, DOMINIO Y ATRIBUTOS.
     Una tabla en el modelo relacional viene a ser como una de las listas descritas anteriormente. Una tabla o relación es una matriz rectangular que almacena líneas con una estructura concreta:
  • La primera línea de una tabla, es una cabecera que indica el nombre de cada columna. O sea, cada columna tiene asignado un nombre único, e indica que los ítem almacenados en esa columna deben pertenecer a un conjunto de valores concreto: Números, Letras, Frases, etc.
  • Cada línea (excepto la primera) recibe el nombre de tupla, y almacena ítem concretos para cada columna.
  • Todas las filas deben ser diferentes entre sí.
  • El orden de las filas y de las columnas carece de importancia a efectos del S.G.B.D. Este hecho es el que verdaderamente diferencia las tablas relacionales del concepto matemático de relación, en el que el orden de las columnas es fundamental.
 

Diseño de las bases de datos relacionales
 
     Para crear una base de datos el primer paso, es planificar el tipo de información que se quiere almacenar en la misma, tomando en cuenta dos aspectos: la información disponible y la información que se necesita.

       La planificación de la estructura de la base de datos, en particular de las tablas, es vital para la gestión efectiva de la misma. El diseño de la estructura de una tabla consiste en una descripción de cada uno de los campos que componen el registro y los valores o datos que contendrá cada uno de esos campos.

      Los campos son los distintos tipos de datos que componen la tabla, por ejemplo: nombre, apellido, domicilio. La definición de un campo requiere: el nombre del campo, el tipo de campo, el ancho del campo, etc.

       Los registros constituyen la información que va contenida en los campos de la tabla, por ejemplo: el nombre del paciente, el apellido del paciente y la dirección de este. Generalmente los distintos tipos de campos que su pueden almacenar son los siguientes: Texto (caracteres), Numérico (números), Fecha / Hora, Lógico (informaciones lógicas si/no, verdadero/falso, etc., imágenes.

       En resumen, el principal aspecto a tener en cuenta durante el diseño de una tabla es determinar claramente los campos necesarios, definirlos en forma adecuada con un nombre especificando su tipo y su longitud.

Referencias:

http://www.uazuay.edu.ec/analisis/El%20modelo%20relacional.pdf

http://www.monografias.com/trabajos5/basede/basede.shtml#DISE%C3%91O

ADMINISTRADOR DE BASE DE DATOS.

- ADMINISTRADOR DE BASE DE DATOS - 

      Los administradores de base de datos (también conocido como DBA, en inglés database administrator), gestiona y mantiene las bases de datos informatizadas. Se asegura de que estan sean seguras y esten siempre actualizadas.Trabaja sobre las formas de reorganizar las bases de datos para hacerlas mas rapidas o mas faciles de usar. Crea sistemas de respaldo para que los datos no se pierdan si surgen problemas en las bases de datos.

   Debido a la importancia de los datos que están a su cargo, el administrador de bases de datos debe ser experto en TI (tecnología de la información), teniendo particular conocimiento de DBMS (sistemas de administración de bases de datos) y el lenguaje de consulta SQL. También debe tener conocimiento de varios tipos de lenguaje de programación para poder automatizar ciertas tareas. 

   Una de sus tareas es la de asegurar la integridad del sistema de información de la compañía. Además, es necesario que posea un buen entendimiento de DBMS para optimizar las consultas, ajustar la configuración de DBMS o para sincronizar en forma precisa las herramientas de control del acceso a las bases de datos. 

    Es posible que el administrador de bases de datos tenga que brindar asistencia técnica a usuarios de las aplicaciones cliente o equipos de desarrollo para solucionar problemas, dar consejos o ayudar a resolver consultas complicadas. 

     El control de tecnologías de bases de datos y las matemáticas permite al DBA rendir informes, realizar reportes sobre cualquier proceso industrial y participar de forma activa en procesos avanzados de desarrollo, consolidando las capacidades propias de un profesional de tecnologías de la información y un ingeniero especialista.

    Además de estas habilidades técnicas, el administrador de bases de datos debe poseer un buen entendimiento de las aplicaciones de la compañía y estar dispuesto a atender las necesidades de los usuarios cuando desarrolla o edita una base de datos. En el mejor de los casos, debe tener experiencia en diseño de sistemas de información y modelos UML (Lenguaje unificado de modelos).  

Referencias:

http://www.educaweb.com/profesion/administrador-bases-datos-724/




 

ARQUITECTURA DE BASE DE DATOS.

- Arquitectura de un sistema de base de datos -


      En 1975 como ayuda para conseguir la separación entre los programas de aplicación y los datos, el manejo de múltiples vistas por parte de los usuarios y el uso de un catálogo para almacenar el esquema de la base de datos: fue aprobado por la ANSI-SPARC (American National Standard Institute - Standards Planning and Requirements Committee) La arquitectura de sistemas de bases de datos de tres esquemas.
      La arquitectura de un sistema de base de datos está influenciada en gran medida por el sistema informático subyacente en el que se ejecuta el sistema de base de datos. En la arquitectura de un sistema de base de datos se reflejan aspectos como la conexión de red, el paralelismo y la distribución.
La conexión de red: de varias computadoras permite que algunas tareas se ejecuten en un sistema servidor y que otras se ejecuten en los sistemas clientes. Esta división de trabajo ha conducido al desarrollo de sistemas de base de datos cliente-servidor.
El procesamiento paralelo: dentro de una computadora permite acelerar las actitudes del sistema de base de datos, proporcionando a las transacciones una respuesta más rápida, así como la capacidad de ejecutar más transacciones por segundo.
La distribución de datos: A través de las distintas sedes o departamentos de una organización permite que estos datos residan donde han sido generados o donde son más necesarios, pero continuar siendo accesibles desde otros lugares o departamentos diferentes. 

ARQUITECTURA CLIENTE/SERVIDOR.
       Es un modelo para el desarrollo de sistemas de información en el que las transacciones se dividen en procesos independientes que cooperan entre sí para intercambiar información, servicios o recursos. Se denomina cliente al proceso que inicia el diálogo o solicita los recursos y servidor al proceso que responde a las solicitudes.
Arquitecturas múltiples clientes / múltiples servidores .- Son mas flexibles, ya que la base de datos es distribuida en varios servidores. Cada cliente tiene un servidor directo al cual hace sus peticiones. La comunicación entre los servidores ejecuta las transacciones y peticiones de los usuarios y esta es transparente para ellos.
Arquitecturas de igual a igual.-Un DBMS verdadero no distingue entre cliente y servidor.

      Entre las principales características de la arquitectura cliente/servidor se pueden destacar las siguientes:

  • El servidor presenta a todos sus clientes una interfaz única y bien definida.
  • El cliente no necesita conocer la lógica del servidor, sólo su interfaz externa.
  • El cliente no depende de la ubicación física del servidor, ni del tipo de equipo físico en el que se encuentra, ni de su sistema operativo.
  • Los cambios en el servidor implican pocos o ningún cambio en el cliente.



Niveles de la arquitectura: 
      Esta arquitectura se puede clasificar en cinco niveles, según las funciones que asumen el cliente y el servidor.
Primer nivel: el cliente asume parte de las funciones de presentación de la aplicación,  ya que en el servidor aun hay programas que se dedican a ese tipo de tareas. Dicha distribución se realiza mediante el uso de productos para el "maquillaje" de las pantallas del mainframe3. Esta técnica no exige el cambio en las aplicaciones orientadas a terminales, pero dificulta su mantenimiento. Además, el servidor ejecuta todos los procesos y almacena la totalidad de los datos. En este caso se dice que hay una presentación distribuida o embellecimiento.

Segundo nivel: la aplicación está soportada directamente por el servidor, excepto la presentación que es totalmente remota y reside en el cliente. Los terminales del cliente soportan la captura de datos, incluyendo una validación parcial de los mismos y una presentación de las consultas. En este caso se dice que hay una presentación remota.

Tercer nivel: la lógica de los procesos se divide entre los distintos componentes del cliente y del servidor. El diseñador de la aplicación debe definir los servicios y las interfaces del sistema de información de forma que los papeles de cliente y servidor sean intercambiables, excepto en el control de los datos que es responsabilidad exclusiva del servidor. En este tipo de situaciones se dice que hay un proceso distribuido o cooperativo.

Cuarto nivel: el cliente realiza tanto las funciones de presentación como los procesos. Por su parte, el servidor almacena y gestiona los datos que permanecen en una base de datos centralizada. En esta situación se dice que hay una gestión de datos remota.

Quinto nivel: el reparto de tareas es como en el anterior y además el gestor de base de datos divide sus componentes entre el cliente y el servidor. Las interfaces entre ambos están dentro de las funciones del gestor de datos y, por lo tanto, no tienen impacto en el desarrollo de las aplicaciones. En este nivel se da lo que se conoce como bases de datos distribuidas.

TIPOS DE ARQUITECTURA CLIENTE- SERVIDOR
Arquitectura de 2 capas: La arquitectura cliente/ servidor tradicional es una solución de 2 capas. La arquitectura de 2 capas consta de tres componentes distribuidos en dos capas: cliente (solicitante de servicios) y servidor (proveedor de servicios). Los tres componentes son:
- Interfaz de usuario.
- Gestión del procesamiento.
- Gestión de la base de datos.

Arquitectura de 3 capas:

      La arquitectura de 3 capas surgió para superar las limitaciones de la arquitectura de 2 capas. La tercera capa (servidor intermedio) está entre el interfaz de usuario (cliente) y el gestor de datos (servidor). La capa intermedia proporciona gestión del procesamiento y en ella se ejecutan las reglas y lógica de procesamiento. Permite cientos de usuarios (en comparación con sólo 100 usuarios de la arquitectura de 2 capas). La arquitectura de 3 capas es usada cuando se necesita un diseño cliente / servidor que proporcione, en comparación con la arquitectura de 2 capas, incrementar el rendimiento, flexibilidad, mantenibilidad, reusabilidad y escalabilidad mientras se esconde la complejidad del procesamiento distribuido al usuario

 Referencias: 
  http://basesdedatosfecajoja.blogspot.com/2011/03/arquitectura-de-las-base-de-datos-nivel.html


















 










 

DISENO DE BASE DE DATOS.

- Diseño de base de datos

    Una base de datos bien diseñada permite obtener acceso a información exacta y actualizada. Debido a que un diseño correcto es indispensable para lograr los objetivos fijados para la base de datos, parece apropiado emplear el tiempo que sea necesario en aprender los principios de un buen diseño ya que, en ese caso, es mucho más probable que la base de datos termine adaptándose a sus necesidades y pueda modificarse fácilmente.

   Será esencial aprender a decidir qué información necesita, a dividir la información en las tablas y columnas adecuadas y a relacionar las
tablas entre sí.

      El proceso de diseño de una base de datos se guía por algunos principios: 
  
    •Evitar la información duplicada o, lo que es lo mismo, los datos redundantes, porque malgastan el espacio y aumentan la probabilidad de que se produzcan errores e incoherencias.
    •Es importante que la información sea correcta y completa. Si la base de datos contiene información incorrecta, los informes que recogen información de la base de datos contendrán también información incorrecta y, por tanto, las decisiones que tome a partir de esos informes estarán mal fundamentadas

FASES DEL DISEÑO DE BASE DE DATOS.

     El proceso de diseño comprende una serie de fases que servirán como guía al diseñador sobre las técnicas apropiadas en cada una.

 

A. Diseño conceptual de la base de datos: Es la primera fase del diseño de BD e implica la creación de un modelo de datos conceptual (donde se reflejen los conceptos) para aquellos procesos de la empresa que se desean modelar. Este modelo se construye usando la información documentada en la especificación de requisitos de los usuarios, y es “independiente” de los detalles de implementación tales como el tipo de SMBD, los programas de aplicación, los lenguajes de programación o la plataforma de Hardware, es decir, en esta fase no importa como o donde se va a implementar la base de datos. Este modelo se valida de acuerdo a los requerimientos de los usuarios y es una fuente de información para la siguiente fase.


B. Diseño lógico de la base de datos: En esta segunda fase, el diseñador traduce el modelo conceptual a un modelo lógico, donde se toma en cuenta la implementación del SMBD (si es relacional, orientado a objetos, entre otros), pero ninguna otra consideración física, igualmente se valida con los requerimientos de los usuarios y se verifica que no tenga problemas de redundancia. 



C. Diseño físico de la base de datos. En esta fase el diseñador decide como implementar la base de datos, por lo tanto se debe tener claro cuál es el SMBD a usar, ya que el diseño físico estará adaptado a este, en esta fase se implementan las estructuras de datos, sus relaciones, sus restricciones y las medidas de seguridad necesarias para resguardar los datos. 



 
PROCESO DE DISEÑO DE UNA BASE DE DATOS:
1. Determinar la finalidad de la base de datos
2. Buscar y organizar la información necesaria: Reúna todos los tipos de información que desee registrar en la base de datos, como los nombres de productos o los números de pedidos.
3. Dividir la información en tablas: Divida los elementos de información en entidades o temas principales, como Productos o Pedidos. Cada tema pasará a ser una tabla.
4. Convertir los elementos de información en columnas: Decida qué información desea almacenar en cada tabla. Cada elemento se convertirá en un campo y se mostrará como una columna en la tabla.
Por ejemplo, una tabla "Empleados" podría incluir campos como "Apellido y Fecha de contratación".
5. Especificar claves principales: Elija la clave principal de cada tabla. La clave principal es una columna que se utiliza para identificar inequívocamente cada fila, como Id. de producto o Código de cliente.
6. Definir relaciones entre las tablas: Examine cada tabla y decida cómo se relacionan los datos de una tabla con las demás tablas. Agregue campos a las tablas o cree nuevas tablas para clarificar las relaciones según sea necesario.
7. Ajustar el diseño: Analice el diseño para detectar errores. Cree las tablas y agregue algunos registros con datos de ejemplo. Compruebe si puede obtener los resultados previstos de las tablas. Realice los ajustes necesarios en el diseño.
8. Aplicar las reglas de normalización: Aplique reglas de normalización de los datos para comprobar si las tablas están estructuradas correctamente. Realice los ajustes necesarios en las tablas.
 Referencias:





















MODELO DE BASE DE DATOS


-Modelos de bases de datos-

  Además de clasificar a las bases de datos por su función, estas a su vez se pueden clasificar por el modelo de administración de datos.

   Un modelo de datos es básicamente una descripción de algo conocido como "contenedor de datos"; que es algo donde se guarda la información.También describe los métodos para almacenar y recuperar información de dichos contenedores.

    Los modelos de datos no son cosas físicas, son conceptualizaciones  que permiten poner en funcionamiento  un sistema eficiente de base de datos. Por lo general, se refieren a algoritmos, y conceptos matemáticos. 
Algunos modelos utilizados con frecuencia en base de datos.

1.Bases de datos Jerárquicas: estas almacenan su información en una 
estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener 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.
       Limitaciones de las Bases de Datos Jerárquicas
  • Al borrar un nodo padre, desaparecen también sus nodos subordinados.
     
  • Sólo podrá añadirse un nodo hijo, si existe el nodo padre.
     
  • Pero lo más significativo es la rigidez de su estructura: sólo un padre por hijo y ausencia de relaciones entre los nodos hijos.

2. Bases 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.

3. Bases de datos transaccionales: Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.

4. Base de datos relacionales: Este modelo considera la base de datos como una colección de relaciones. De manera simple, una relación representa una tabla que no es más que un conjunto de filas, cada fila es un conjunto de campos y cada campo representa un valor que interpretado describe el mundo real. Cada fila también se puede denominar tupla o registro y a cada columna también se le puede llamar campo o atributo.
 
5.Base de datos orientadas a objetos: se propusieron con el fin de cumplir las necesidades de las aplicaciones mas complejas. El enfoque orientado a objetos ofrece la flexibilidad para cumplir con algunos de estos requerimientos sin estar limitados por los tipos de datos y los lenguajes de consulta disponibles en los sistemas de bases de datos tradicionales. Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:
  • Encapsulacion:  Propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos.
  • Herencia: Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases.
  • Polimorfismo: Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.
        SQL, 2013, es el estándar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la compatibilidad con SQL92.

Referencias:

 https://modelosbd2012t1.wordpress.com/2012/01/27/bases-de-datos-orientados-a-objetos