Bases de datos

Una solución de comercio electrónico implica el manejo de grandes cantidades de información, por lo que es necesario la definición de estructuras que permitan almacenarla, acceder a ella y manipularla. Además, es necesario establecer medidas preventivas y reactivas de seguridad de la información para garantizar su protección frente a accesos no autorizados (confidencialidad) y su disponibilidad e integridad de datos en caso de fallo. Los Sistemas de Bases de Datos cubren todas estas necesidades por lo que serán el sistema empleado.

Un Sistema de Bases de Datos se puede definir como un conjunto de programas que permiten la definición y creación de estructuras para el almacenamiento de información (bases de datos), el acceso a ella para modificarla o actualizarla y la consulta de información . Al conjunto de programas que permiten la creación y manipulación de las bases de datos se le denomina Sistema de Gestión de Bases de Datos (SGBD) (Información sobre SGBD en Wikipedia). Es el SGBD el encargado de permitir el acceso de los usuarios a la información de la Base de Datos, mediante peticiones sobre las estructuras de datos que el traduce a peticiones sobre los ficheros físicos que soportan la base de datos.

El diseño conceptual de la base de datos, es decir aquel en el que se define la estructura de la base de datos, describiendo los datos y estableciendo las relaciones entre ellos (esquema lógico) es fundamental para el buen funcionamiento de la solución de comercio electrónico.

Pasos a dar cuando se diseña una base de datos:

  • ● Determinar la información que se necesita almacenar y manipular. En nuestro caso de desarrollo de una aplicación de comercio electrónico habrá que almacenar información sobre los productos, clientes,…
  • ● Organizar la información, agrupando en temas o entidades. Los productos, los clientes,… Cada entidad o tema constituirá una tabla de la base de datos.
  • ● Determinar para cada entidad o tema los elementos de información que es necesario almacenar de ellos. Por ejemplo, en el caso de un cliente habrá que almacenar los siguientes elementos: nombre, apellidos, DNI, dirección,… Cada elemento constituye una columna de la tabla.
  • ● Definir las claves principales, es una o varias columnasde la tabla que identificarán de manera unívoca a cada fila de la tabla. Se denominan la clave o llave primaria de la tabla. Por ejemplo, en la tabla de clientes, cada cliente ocupará una fila y una clave principal sería el DNI, ya que no puede haber dos clientes con el mismo DNI.
  • ● Definir las relaciones entre las entidades o temas (tablas). Usualmente las tablas o entidades estarán relacionadas unas con otras a través de estas claves principales. Estas relaciones pueden que provoquen la aparición de nuevas tablas. Por ejemplo, la tabla pedidos podría relacionar a los productos con los clientes.
  • ● Aplicar reglas de normalización para comprobar que las tablas están bien estructuradas.

Como ejemplo, Prestashop, en su versión 1.5., emplea 235 tablas para almacenar toda la información necesaria para el funcionamiento de la solución de comercio electrónico (ver online el Diseño Conceptual de la Base de Datos de Prestashop 1.5). En su versión 1.6., se emplean 250 tablas (Descarga el Esquema Conceptual de la Base de Datos de Prestashop 1.6 en formato PDF (3.90 Mb)).

El diseño de la base de datos, que se realice para la solución de comercio electrónico que se esté desarrolando, no debe contener redundancias que puedan dar lugar a inconsistencia de datos. Y debe contener toda la información necesaria para el procesamiento de los datos y de generación de informes que requiere la aplicación de comercio elecrtrónico.

Para finalizar esta sección de la web, se van a nombrar algunos Sistemas Gestores de Bases de Datos que tienen gran uso, por sus ventajas, en la actualidad: