Usuario:Aeencalada/Taller

De Wikipedia, la enciclopedia libre

PROCESO DE CONSTRUCCIÓN DE UNA BASE DE DATOS

El proceso de desarrollo de bases de datos, establece los pasos que debemos seguir para que a partir de una necesidad organizacional de contar con una solución tecnológica que permita organizar, almacenar y gestionar adecuadamente su información -que se expresa en un conjunto de requerimientos de datos- podamos llegar a diseñar e implementar dicha solución a través de los sistemas de bases de datos.


Panorámica[editar]

Es un proceso que marca el camino a recorrer, que da inicio cuando se "concibe" la necesidad de una base de datos, y que luego va tomando forma durante su diseño, que ve la luz cuando se la implementa, que madura cuando se la afina, que tiene vida plena cuando entra en producción, y que permanece un estado de mejora constante. Es decir, es un camino que marca el ciclo de vida de una base de datos (DBLC, por sus siglas en inglés).

Debemos tener claro que normalmente la implementación de una base de datos está inmersa, deriva o forma parte de la implementación de un sistema de información, por lo que hay una estrecha vinculación entre ambos. Debe existir sincronía, en cuanto a planificación (tiempos), coordinación, documentación y otros.

Ciclo de vida de una base de datos[editar]

DBLC por sus siglas en inglés, define las fases que marcan la evolución del desarrollo de un sistema de bases de datos:

  1. Estudio inicial
  2. Diseño
  3. Implementación y carga de datos
  4. Pruebas
  5. Operación
  6. Monitorización y mantenimiento

El Estudio inicial comprendería a su vez 3 etapas:

  • Planificación de la base de datos: Definir el marco general de trabajo, las estrategias y metodologías a aplicar durante todo el proceso de diseño e implementación.
  • Definición del sistema: Establecer el ámbito de aplicación de la base de datos y las vistas de usuario
  • Recopilación y análisis de requisitos: Levantar los requisitos de datos y las transacciones de datos específicos por cada vista de usuario.

Otras consideraciones a tener en cuenta:

  • El estudio inicial del DBLC se realiza a la par con la planeación del SDLC.
  • En la fase de diseño, tomamos como base los requisitos de datos de cada vista de usuario identificados en el estudio inicial y a partir de allí construimos un modelo de datos donde se definen todas las especificaciones lógicas y físicas, necesarias para realizar la implementación de la base de datos. Se realiza de forma paralela a la fase de diseño del sistema.
  • El diseño, que viene a ser el plano de construcción, que se materializa (se edifica) durante la implementación.
  • Como parte de la implementación se debe realizar la carga de datos. Que podría ir desde simplemente cargar ciertos parámetros y catálogos iniciales, hasta migrar todos los datos existentes en sistemas antiguos u otras fuentes de datos, como Excel u otros.
  • Durante las pruebas, se valida toda la implementación de la base de datos tanto de forma aislada, como en conjunto con el sistema de información.
  • Si las pruebas se superaron al 100%, entonces la base de datos entrará formalmente en operación (pasa a producción), donde ya en condiciones de carga real, podrían surgir nuevos problemas de rendimiento que no se hayan detectado antes, por lo que puede requerir un afinamiento adicional.
  • Ya en producción se requiere un monitoreo constante y un mantenimiento que garantice su operación, evolución y mejora permanentes.

El DBLC y el SDLC son procesos vinculados que se van ejecutando paralelamente, son co-dependientes e integrados. Y aquí se vislumbra que, a nivel de bases de datos, la fase de diseño es la más crítica, porque de ella surgen todas las especificaciones que se implementan al instalar y crear la base de datos. Si el diseño no está bien, las pruebas no podrían ser superadas y tendríamos que volver a revisarlo y corregirlo, con el consiguiente esfuerzo y demora que ello implica.

Niveles de abstracción[editar]

Es importante no olvidar los tres niveles de abstracción de los datos, que están presente en todo sistema de bases de datos: físico, lógico, y de vistas.

  • A nivel físico veríamos la base de datos en disco, los archivos de datos, su ubicación, su tamaño, y otros archivos, muy en dependencia del SGBD que usemos.
  • A nivel lógico veríamos las estructuras lógicas de almacenamiento y organización de los datos, que en bases de datos relacionales sabemos, son las relaciones o tablas, con todos sus elementos y asociaciones (campos, tipos de datos, PKs, FKs, y demás restricciones de integridad).
  • A nivel de vistas veríamos lo que vería el usuario final a través de las herramientas o aplicaciones que usa para acceder a los datos, el usuario final no ve tablas o relaciones, ve a través de reportes, formularios, gráficas y otros, solo la información que necesita y a la que tiene acceso.


Metodología de diseño de una base de datos[editar]

Etapas del diseño de una base de datos

Como ya se preveía, dentro del DBLC la fase de diseño es clave. Puesto que es donde traducimos los requerimientos de datos y las transacciones de datos identificados por cada vista de usuario, a especificaciones lógicas y físicas implementables a través de un SGBD.

La fase de diseño de una base de datos se divide en 3 etapas o sub-fases:

  • Diseño conceptual
  • Diseño lógico
  • Diseño físico

El orden de esas 3 etapas a su vez determina su criticidad (de mayor a menor), pues cada una depende de la anterior, una vez en producción, el esquema físico se puede cambiar sin afectar a las aplicaciones, pero un cambio a nivel conceptual y/o lógico, implica que también será necesario corregir las aplicaciones que acceden a la base de datos.

Diseño conceptual[editar]

Proceso de obtener un modelo de datos independiente del modelo de base de datos a usar y de todas las consideraciones físicas. El más usado es el Modelo E-R el cual se basa en la identificación de entidades y sus relaciones.

Diseño lógico[editar]

Se refiere al proceso de obtener un modelo de datos de una empresa, apegado a un esquema de representación específico (relacional, orientado a objetos, NoSQL, orientado a grafos, etc.). Pero aun es independiente de un SGBD específico y otras consideraciones de implementación.

Diseño físico[editar]

El diseño físico es la última etapa del proceso de diseño y es el paso previo para la implementación de la base de datos. Por lo tanto, aquí es donde se deben establecer todas las consideraciones que conlleven a la materialización física de la base de datos. Para ello necesitamos seleccionar el SGBD a usar, y en función de ello definir las especificaciones de implementación. Este diseño debe garantizar que el sistema operará adecuadamente, guardando el debido equilibro entre eficiencia, seguridad y productividad.

La selección del SGBD es muy importante y merece un análisis cuidadoso, en función del presupuesto, de las necesidades, de los requerimientos y expectativas del negocio. Más adelante hablaremos en detalle al respecto.

Roles durante el proceso de diseño[editar]

Durante este proceso, a nivel técnico son 2 los roles que asumen las personas que realizan el diseño:

  • Administrador de los datos: son quienes desarrollan el diseño conceptual y el lógico. En su perfil no se requiere que sean expertos en el SGBD elegido para implementar la base de datos.
  • Administrador de la base de datos: conocido como DBA, por sus siglas en inglés, es quien se encarga de realizar el diseño físico y luego implementar y optimizar la base de datos. Se requiere que sea experto en la administración del SGBD elegido.

Obviamente, una misma persona o equipo, podría asumir ambos roles y ejecutar todo el proceso.

Terminología[editar]

Aunque a veces solemos usar los términos "Sistema de Base de Datos", "Sistema de Gestión de Base de Datos (SGBD)" y "Base de Datos" indistintamente al hablar de bases de datos, dejando su interpretación sujeta al contexto en que se lo use, es importante aclarar la diferencia entre ellos:

  • La base de datos es el conjunto de archivos o medios físicos donde se encuentran guardados los datos. Lo que en la arquitectura que plantea el autor del texto básico sería lo que corresponde a "almacenamiento en disco".
  • El SGBD es el software que permite acceder a la base de datos. Es una colección de numerosas rutinas interrelacionadas, cada una de las cuales es responsable de alguna tarea específica. Es la interfaz entre el usuario (usuario final, DBA, aplicaciones, herramientas) y la base de datos. Incluye lo que en la arquitectura planteada en el texto corresponde a los componentes "gestor de almacenamiento" y "gestor de consultas".
  • El sistema de base de datos vendría a ser el todo, la suma del SGBD + Base de datos, e incluso algunos autores lo conciben agregándole también las herramientas de administración y las aplicaciones de usuario final.

Véase también[editar]

Enlaces externos[editar]

Referencias[editar]