Pid 00221682-4 PDF
Pid 00221682-4 PDF
Pid 00221682-4 PDF
y explotación
de datos en
el comercio
electrónico
Jordi Casas Roma
PID_00223058
© FUOC • PID_00223058 Almacenamiento y explotación de datos en el comercio electrónico
Ninguna parte de esta publicación, incluido el diseño general y la cubierta, puede ser copiada,
reproducida, almacenada o transmitida de ninguna forma, ni por ningún medio, sea éste eléctrico,
químico, mecánico, óptico, grabación, fotocopia, o cualquier otro, sin la previa autorización escrita
de los titulares del copyright.
© FUOC • PID_00223058 Almacenamiento y explotación de datos en el comercio electrónico
Índice
Introducción............................................................................................... 5
Objetivos....................................................................................................... 7
Resumen....................................................................................................... 57
Ejercicios de autoevaluación.................................................................. 59
Solucionario................................................................................................ 60
Glosario........................................................................................................ 62
Bibliografía................................................................................................. 63
© FUOC • PID_00223058 5 Almacenamiento y explotación de datos en el comercio electrónico
Introducción
En este módulo didáctico trataremos el papel fundamental que tienen las ba-
ses de datos en el funcionamiento de una aplicación de comercio electrónico.
Estas serán las responsables de guardar las operaciones que se vayan produ-
ciendo, lo cual permite las interacciones entre el cliente y el vendedor y, por
lo tanto, el intercambio comercial.
Objetivos
4. Comprender cómo se han de gestionar los datos para que tengan suficiente
calidad en posteriores tratamientos y análisis.
Mediante un proceso de diseño de bases de datos se identifica qué datos son relevantes
para el problema que se va a tratar y, por lo tanto, qué datos habrá que almacenar en la
base de datos. El siguiente paso es identificar qué tablas y relaciones debe tener la base
de datos, qué atributos han de tener las diferentes tablas, qué claves primarias y claves
foráneas se tienen que declarar en cada tabla, etc. Todas estas tareas forman parte de este
proceso de diseño que a continuación estudiaremos con más detenimiento. Para poder
entender la estructura de una base de datos y el porqué de algunas de sus características,
conviene conocer este proceso y comprender cómo se va perfilando la estructura de la
base de datos a través de las diferentes etapas que conforman el proceso de diseño.
Los distintos requisitos que ha de cumplir un sistema de información y la Dividir para vencer
complejidad de la información que se presenta en ellos hacen que el diseño
La estrategia de dividir para
de una base de datos sea un proceso complejo. Para simplificarlo, es muy re- vencer (en inglés, divide & con-
comendable utilizar la estrategia de dividir para vencer. quer) es una estrategia que
propone resolver un problema
complejo a partir de dividirlo
en un conjunto de problemas
Aplicando este concepto obtenemos las diferentes etapas del diseño de bases más sencillos, donde la resolu-
ción de los diferentes subpro-
de datos. Estas etapas son secuenciales, y el resultado de cada una de ellas blemas acabará llevando a la
sirve de punto de partida de la siguiente. El resultado de la última etapa será resolución del problema inicial.
Antes de presentar cada etapa del proceso de diseño de una base de datos, lo Sistema gestor de bases
que haremos a continuación, hay que explicitar que en este texto denominare- de datos
mos sistema�gestor�de�bases�de�datos (SGBD) al software específico dedicado En inglés se conocen como da-
a servir de interfaz entre los datos, el usuario y las aplicaciones que la utilizan. tabase management system o
DBMS.
El conjunto de sistemas gestores de bases de datos con características similares
recibe el nombre de tipo�de�bases�de�datos o tipos�de�sistemas�gestores�de
bases�de�datos. Por ejemplo, podemos hablar de bases�de�datos�relacionales
como el tipo de sistema gestor de bases de datos que agrupa todas las bases de
datos que se basan en tablas con filas y columnas, y relaciones entre tablas.
Existen varios tipos de bases de datos, cada uno con un conjunto de características propias
que lo hacen adecuado para un problema o conjunto de problemas concretos. Veamos
algunos de los más empleados:
La primera etapa del proceso de diseño es la de recopilación y análisis de re- Usuarios de una base de
quisitos. Esta etapa debe permitir obtener los requerimientos y restricciones datos
de los datos del problema. Para obtener esta información, será necesario man- Los usuarios de una base de
tener conversaciones con los diferentes usuarios de la futura base de datos y datos son todas aquellas per-
sonas que interactúan con sus
de las aplicaciones relacionadas con esta (como por ejemplo el comercio elec- datos: desde el personal de la
empresa que gestiona los da-
trónico y el sistema de gestión de la información interno de la empresa). Solo tos a través del formulario de
una aplicación o extrae lista-
a partir de cruzar los requerimientos de los diferentes perfiles de usuarios será dos y exportaciones de datos,
posible establecer un marco completo de los requerimientos y restricciones de hasta los administradores o
usuarios avanzados que ejecu-
los datos relacionados con la futura base de datos. tan los análisis de datos.
En la fase inicial del proceso de diseño de bases de datos, el personal de almacén de Bri-
coTodo puede pedir poder ver el código interno de cada producto, y no solo el código de
venta. Este código interno guardará relación con la manera como se ordenan y clasifican
los artículos en el almacén.
A continuación se inicia la etapa de diseño conceptual. En ella se crea un es- Ved también
quema conceptual a partir de las especificaciones y requerimientos obtenidos
Trataremos con más detalle el
en la etapa anterior. Aquí hay que extraer las necesidades y los requerimientos tema del esquema conceptual
de la problemática y sintetizarlos en un modelo visual que permita representar en el subapartado 1.2 de este
módulo.
los datos y las restricciones de los conceptos que se quieren modelar en el sis-
tema de información. Este modelo visual se denomina esquema�conceptual.
Profundizaremos en esta etapa más adelante, cuando expliquemos con más Nota
detalle y ejemplifiquemos el desarrollo de un esquema conceptual. Observad que hasta esta eta-
pa del diseño de bases de da-
tos todavía no ha sido nece-
1.1.3. Diseño lógico sario elegir qué tipo de bases
de datos se utilizará ni tampo-
co se tiene en cuenta qué sis-
tema gestor de bases de da-
En la tercera etapa del proceso de diseño, el diseño lógico, se convierte el es-
tos (SGBD) se utilizará o con
quema conceptual en un�esquema�lógico, que permitirá definir y estructurar qué lenguaje concreto se im-
plementará la base de datos.
los datos y restricciones en un esquema adecuado al tipo de bases de datos que
se pretende utilizar. En el desarrollo de esta etapa, por lo tanto, es necesario
determinar qué tipo de bases de datos se utilizará, a pesar de que todavía no Ved también
es necesario elegir un SGBD concreto.
Trataremos con más detalle el
tema del esquema lógico en el
subapartado 1.3 de este mó-
En este punto, una vez finalizada la etapa del diseño lógico y antes de iniciar dulo.
la etapa de diseño físico, habrá que elegir un SGBD concreto sobre el que se
pretende implementar la base de datos.
© FUOC • PID_00223058 13 Almacenamiento y explotación de datos en el comercio electrónico
Estas etapas del diseño no tienen que seguirse en estricta secuencia, y en mu-
chos casos es habitual rehacer el diseño de la etapa anterior a partir de necesi-
dades detectadas en fases posteriores. Estos bucles�de�retroalimentación son
habituales y permiten afinar los diseños de las diferentes etapas de manera
iterativa.
Los principales elementos del modelo ER son las entidades, los atributos, las Lectura complementaria
claves y las relaciones entre entidades. A continuación se identifican y descri-
Jordi�Casas�Roma;�Jordi�Co-
ben estos elementos: nesa�i�Caralt (2013). Diseño
conceptual de bases de datos
en UML. Barcelona: Editorial
1) La entidad es un objeto o persona del mundo real, que tiene identidad UOC.
propia y que es distinguible del resto de los objetos o personas. Las entidades
pueden ser tangibles (por ejemplo, un destornillador a la venta en el estable-
Ejemplo de entidades y
cimiento electrónico o un cliente que vive en Dinamarca) o intangibles (por tipos de entidades
ejemplo, un servicio o una idea). Las entidades con características comunes y/
El tipo de entidad herramien-
o semántica común se agrupan en tipos�de�entidades. tas puede contener entidades
como, por ejemplo, un destor-
nillador o un martillo de mo-
2) Un atributo es una propiedad que tienen en común todas las entidades delos y marcas concretos. Por
otra parte, el tipo de entidad
consideradas en un tipo de entidad y que permite representar sus característi- clientes puede incluir como en-
cas. El conjunto de posibles valores que puede tomar un atributo se denomina tidades el cliente danés y los
demás clientes del estableci-
dominio del atributo. miento.
La figura siguiente presenta un ejemplo básico del tipo de entidad productos y cinco atri-
butos que pertenecen a ella: el código, que hace referencia al código de barras del produc-
to; la referencia, que podría ser aquella combinación de letras y números que utiliza el
proveedor o fabricante para identificar el modelo concreto de producto; el nombre del
producto; una breve descripción del producto, y finalmente su precio.
El tipo de entidad producto puede contener, por ejemplo, el destornillador con código
“202828609”, referencia “9780671023232”, nombre “Black & Decker 2.6 Volt. Cordless”,
descripción “destornillador eléctrico que funciona sin cables” y precio “15 euros”.
Una clave candidata puede estar formada por uno o más atributos. En el caso
de estar formada por varios atributos recibe el nombre de clave� candidata
compuesta. En este caso, la combinación de los diferentes valores de los atri-
butos debe ser única para identificar de forma unívoca a todas las entidades
de un mismo tipo de entidad.
Continuando con el ejemplo anterior, tenemos dos claves candidatas en la entidad pro-
ductos. La primera es el código, que se refiere al código de barras del producto. Nos permite
referirnos de forma única a cada una de las entidades de productos, y seguramente será
la que mostraremos a los clientes del establecimiento electrónico como identificador del
producto. La segunda clave candidata es la referencia, indicativa del modelo de producto
y su proveedor o fabricante, y también permite identificar de manera inequívoca cada
producto del catálogo.
En la figura siguiente podemos ver que hemos definido como clave primaria el atributo
código, puesto que es la que queremos emplear en el proceso de ventas, de tal modo que
los usuarios del establecimiento puedan ver este código en el catálogo de productos y
en su cesta de compra, y lo puedan usar para cualquier reclamación relacionada con un
producto concreto. No obstante, cabe señalar que, desde el punto de vista de diseño de la
base de datos, podíamos haber elegido el atributo referencia sin ningún tipo de perjuicio
en el funcionamiento de la base de datos. Este atributo quedará definido como clave
candidata, puesto que a pesar de ser un valor único para cada entidad finalmente no ha
sido elegido como clave primaria.
4) Las relaciones son las asociaciones entre entidades. Las relaciones, casi
siempre, tienen una etiqueta�de�relación que indica la acción o el significado
de la asociación entre las dos entidades, y generalmente suele ser un verbo. Al
igual que las entidades, las relaciones pueden agruparse en tipos�de�relaciones
según su semántica y restricciones.
La figura que se recoge a continuación presenta el tipo de relación pertenece entre las
entidades productos y categorías de productos, donde definimos que un producto pertenece
a una única categoría y una categoría puede tener múltiples productos asociados (relación
1:N). En el diagrama leemos que “un producto pertenece a una categoría”, y en sentido
inverso que “a una categoría le pertenecen N productos”, donde N se refiere a 0 o más
productos.
En esta etapa nos concentramos en las cuestiones tecnológicas relacionadas Lectura complementaria
con el modelo de la base de datos, asumiendo que en la etapa anterior ya
Xavier�Burgués�Isla (2012).
hemos dejado resuelta la problemática de la estructuración de la información Disseny lògic de bases de dades.
en un ámbito conceptual. El resultado de esta etapa será un modelo relacional Barcelona: Edicions UOC.
de la estructura de la información.
Por ejemplo, la tabla productos podría contener los siguientes registros o tuplas:
<2423, “M3564”, “Martillo PBH”, “Martillo perforador PBH 2100 550w”, “109,95”, 1> y
<3590, “Z52890-S”, “Sierra PKS”, “Sierra circular PKS 16 MULTO”, “134,95”, 2>
Donde cada uno de los valores separados por una coma corresponden a un campo de
la tabla.
En este caso, la tabla categorías de productos debería contener, como mínimo, dos registros
con los códigos de categoría relacionados, tal y como mostramos a continuación:
Y por lo tanto, mediante el campo código de categoría indicamos que el “martillo PBH”
pertenece a la categoría de productos “martillos neumáticos” y la “sierra PKS” pertenece
a “sierras eléctricas”.
© FUOC • PID_00223058 19 Almacenamiento y explotación de datos en el comercio electrónico
2) El cliente, que tiene una idea aproximada de lo que busca, elige una sección del catá-
logo de productos, observa cómo se le presenta esta sección del surtido y comprueba si
hay posibilidades de interactuar mediante buscadores o directorios para poder afinar la
búsqueda y encontrar el producto que se adapte mejor a sus necesidades. En esta fase, la
base de datos ha de ofrecer diferentes posibilidades de mostrar los productos del surtido.
3) Una vez que el cliente selecciona uno de los productos, averigua si hay información
adicional sobre este para acabar de decidirse. En caso afirmativo, actúa para incorporar
el producto a la cesta de la compra, donde visualiza el producto elegido y se le permite
cambiar las unidades de compra y consultar los costes de transporte y entrega.
4) Cuando el cliente quiere formalizar el pedido, el sistema le solicita los datos personales,
de envío y de pago. Una vez introducidos, el cliente finaliza el pedido y se le envía un
comprobante de este, con una referencia para hacer el seguimiento y, si se tercia, formular
alguna reclamación posterior.
En general, la base de datos operativa debe tener dos características que son
indispensables para el buen funcionamiento de un entorno de comercio elec-
trónico: por un lado, ha de ser robusta y asegurar la consistencia de los datos; y,
por otro lado, tiene que ser bastante rápida para efectuar las diferentes opera-
ciones que se le ordenan en un tiempo razonable. Entre los procesos habituales
que debe realizar la base de datos operativa podemos encontrar el alta de un
© FUOC • PID_00223058 20 Almacenamiento y explotación de datos en el comercio electrónico
Los atributos descritos hasta ahora no dependen del idioma del establecimien-
to electrónico, puesto que todos ellos son numéricos. No obstante, hay otro
tipo de información de carácter textual, como los nombres, la descripción del
producto y la categoría a la cual pertenece, que varía para cada idioma, de
modo que hay que almacenar un valor diferente para cada idioma en el que
opera el establecimiento. Es aconsejable tener un idioma de referencia y em-
pezar por asegurar que todos los productos tengan la denominación, descrip-
ción y categoría correctas en esta lengua. Una vez elaboradas las traducciones,
el sistema podrá mostrar las denominaciones, descripciones y nombres de las
categorías según las preferencias de idioma de cada cliente:
Siguiendo el ejemplo de la ferretería BricoTodo y con lo que hemos comentado sobre los
productos, podemos indicar algunos de los atributos principales que habrá que definir
para cada producto del establecimiento virtual. Claramente, cada producto deberá tener
un código único para referirnos a él de forma única, pero probablemente también habrá
que incorporar la referencia del fabricante y quizá un código interno del almacén. Evi-
dentemente, habrá que incorporar la información básica del producto, como su nombre,
descripción, precio, stock disponible, peso, volumen y tamaño. Para cada producto ha-
brá que incorporar una o más imágenes, puesto que muchas veces no es suficiente con
una sola imagen para hacerse una idea real del producto que estamos comprando en un
establecimiento electrónico. Finalmente, habrá que considerar la estructura de categorías
de productos, donde probablemente un producto podrá formar parte de una o más cate-
gorías (por ejemplo, un destornillador puede pertenecer a la categoría “carpintería” pero
también a las categorías “ferretería” o “electricidad”).
Los tipos de clientes sobre los que se puede llegar a tener información en el
sistema serán los siguientes:
de nuevo todos los datos necesarios. De todos modos, se puede guardar cierta
información de los clientes anónimos, puesto que el uso de cookies, como ve-
remos más adelante, permite reconocer si una conexión anónima proviene de
un ordenador o dispositivo que ya se ha conectado previamente. Esta infor-
mación puede servir para ofrecer productos similares a los que se han buscado
en anteriores conexiones. No obstante, estos datos no se pueden asociar con
clientes concretos si estos clientes no se registran.
© FUOC • PID_00223058 23 Almacenamiento y explotación de datos en el comercio electrónico
Los datos que obtenemos de los clientes, a diferencia de otros datos como
el catálogo de productos, son introducidos directamente por los clientes me-
diante la interfaz web del establecimiento electrónico. Por lo tanto, es impor-
tante asegurarnos de que introducen todos los datos que son necesarios para
el correcto funcionamiento del establecimiento, pero también otros datos que
nos pueden resultar de utilidad para entender el perfil de cliente que tenemos
y podernos ajustar a sus necesidades y demandas. De ahí la importancia de
que los formularios para la introducción de estos datos estén bien diseñados
y nos permitan las siguientes acciones:
1) Obtener todos los datos que consideramos relevantes, haciendo que sea
obligatorio introducir los datos de estos campos en los formularios web.
2) Especificar y validar el formato de los datos que introducen los clientes. Por Edad del cliente
ejemplo, si solicitamos la fecha de nacimiento del cliente, no podemos dejar
La edad del cliente se obtiene
que la introduzca en cualquier formato, puesto que se complicaría bastante su habitualmente por medio de
procesamiento posterior. su fecha de nacimiento. Es pre-
ferible contar con este atribu-
to que con la edad del cliente,
que cambiará cada año.
Formato de la fecha de nacimiento
• Fecha�de�nacimiento: hay que indicar el día, el mes y el año. Para evitar los
errores que se producen al utilizar caracteres separadores, es preferible que
los datos sobre este atributo se introduzcan en tres campos diferenciados.
Sin embargo, internamente se puede guardar todo junto.
En los datos de los pedidos resulta muy habitual replicar algunas informacio-
nes sobre el cliente y los productos adquiridos. Por un lado, es importante al-
macenar en cada pedido los datos de envío y facturación del cliente en el mo-
mento de efectuar la compra, puesto que estos pueden cambiar en el futuro y
nos interesa tener constancia de los datos en aquel preciso momento. Por otro
lado, en las líneas o detalles del pedido también nos interesa guardar el código
de cada producto comprado, su descripción, el precio y la cantidad adquirida.
Podría parecer que guardando el código del producto y la cantidad adquirida
ya sería suficiente porque, mediante la relación con la tabla de productos, se
pueden extraer la descripción y el precio. Pero dado que las descripciones y los
precios de los productos pueden variar en el tiempo, es conveniente guardar
las que estaban vigentes en el momento de efectuar el pedido.
6)� Importe� de� la� compra: este campo, calculado a partir de las líneas del Importe del envío
pedido, indica el importe total del pedido. Generalmente no se trata de un
Cuando el área geográfica que
solo campo, sino que se calcula y almacena información sobre el precio bruto cubre el establecimiento es
de los artículos, el importe de los impuestos, el coste del envío, los descuentos muy amplia, el importe del en-
vío dependerá de varios facto-
aplicados y el importe total del pedido. res, como, por ejemplo, el des-
tino del pedido, el tamaño, el
peso y el volumen. Por lo tan-
to, el establecimiento deberá
7)�Forma�de�pago: Generalmente se detalla la forma de pago elegida por el calcular en función de estos
cliente, y si este ha sido validado y se ha efectuado correctamente o no. Si, por parámetros el importe del en-
vío y comunicárselo al usuario.
ejemplo, el pedido se paga con tarjeta de crédito, el establecimiento redirige al
usuario hacia el sitio web del banco pasándole el código de pedido y el importe
total para pagar. Una vez que el cliente efectúa el pago, el banco lo devuelve
al web del establecimiento y, a través del código de pedido, actualiza en el es-
tablecimiento la información sobre el resultado de la transacción. Si el pedido
se paga mediante transferencia, el vendedor tiene que esperar a recibirla para
entregar el producto.
(1)
A continuación, veremos algunos de los principales atributos de las líneas o Esto es especialmente relevante
cuando los precios o las descripcio-
detalles�de�pedidos, que guardan relación con los productos adquiridos por el
nes de los productos cambian en
cliente. Del mismo modo que en los datos generales del pedido que hacían re- el tiempo.
© FUOC • PID_00223058 27 Almacenamiento y explotación de datos en el comercio electrónico
ferencia al cliente, aquí también duplicaremos algunos datos para poder con-
servar la información que estaba vigente en el momento de formularse el pe-
dido1. Los atributos son estos:
Generalmente, se calcula para cada artículo del pedido y se almacena por A diferencia del importe de la
cuestiones de rendimiento y velocidad, puesto que de este modo no es ne- compra, que forma parte de
los datos generales de cada
cesario efectuar estos cálculos cada vez que hay que generar una consulta pedido, el importe parcial se
recoge en las líneas o detalles
o un informe de ventas. del pedido.
La suma de todos los importes
parciales recogidos en los de-
talles del pedido, más el coste
del envío, los impuestos y los
2.4. Datos relativos a los contenidos posibles descuentos aplicables
sobre toda la compra, ha de
coincidir con el importe de la
Una práctica muy habitual en los webs de establecimientos electrónicos con- compra.
siste en ofrecer información muy completa sobre los productos del surtido,
que va más allá de lo que sería necesario para tomar una decisión de compra.
Así, el sitio web intenta atraer a aquellos clientes potenciales que, por el mo-
mento, solo buscan información sobre unos determinados productos o cate-
gorías de productos a través de los motores de búsqueda de internet. Al ofre-
cer una información muy extensa y detallada sobre las categorías y productos
(características, productos relacionados, procedimientos de instalación, repa-
ración, etc.), el consumidor percibe que el vendedor tiene un conocimiento
exhaustivo de los productos, es un experto en la temática y tiene una verda-
dera voluntad de servicio al cliente.
© FUOC • PID_00223058 28 Almacenamiento y explotación de datos en el comercio electrónico
3)�Novedades: esta sección destaca algunas noticias sobre los productos que
son de especial interés, como por ejemplo los últimos productos que se han
incorporado en el catálogo.
4)�Foros: permiten que los clientes interactúen con otros clientes o con el es- Estrategias para el foro
tablecimiento, ya sea planteando y resolviendo dudas o compartiendo opinio-
Es aconsejable que el foro se
nes sobre determinados productos del establecimiento. El objetivo es propor- active cuando el sitio web ten-
cionar un servicio de atención a los clientes, pero también crear un ambien- ga un número de visitas con-
siderable y que la empresa se
te de comunidad virtual que ayude a dar una imagen de pericia al estableci- implique en su seguimiento
activo. El personal del servicio
miento. de atención al cliente se tendrá
que encargar de que no quede
ninguna pregunta sin respues-
5)�Anuncios: dan a conocer a los usuarios acontecimientos, productos en los ta.
que están interesados, etc. En algunos casos puede ser interesante ofrecer este
espacio para el intercambio de productos de segunda mano entre los propios
clientes.
6)�FAQ: las respuestas a las preguntas más frecuentes permiten resolver dudas
y cuestiones habituales entre los nuevos clientes del establecimiento. Los foros
pueden ser un buen lugar para conocer las dudas recurrentes de los clientes
y añadirlas a las FAQ.
© FUOC • PID_00223058 29 Almacenamiento y explotación de datos en el comercio electrónico
En algunos casos, dependiendo del tipo de producto que se está ofreciendo, Los tamaños de los
es interesante almacenar varias fotografías o imágenes para cada producto y archivos
así facilitar más detalles al cliente. Por otro lado, hay que tener en cuenta Si hacemos cálculos, vemos
que, para un mismo producto, se pueden proporcionar varias imágenes de que con estas medidas de imá-
genes se ocupan unos 80 kB
diferentes tamaños y calidades, en función de la página que el cliente esté por imagen. Por lo tanto, un
catálogo de 1.000 productos,
consultando y del dispositivo que esté empleando. Los sistemas de comercio cada uno con cinco imágenes,
pesará 400 MB en imágenes.
electrónico modernos automatizan esta tarea y generan diferentes calidades
de las imágenes que se incorporan a un producto para optimizar el tamaño y
el peso. Por ejemplo, la imagen del producto que aparece en las listas generales
de productos suele ser una miniatura de unos 80 × 80 píxeles y 5 kB de peso
(denominada habitualmente thumbnail). La imagen mediana (de unos 300 ×
300 píxeles y 25 kB de peso) se puede mostrar cuando el usuario ha elegido
un determinado producto, y se puede proporcionar una imagen ampliada (de
unos 800 × 800 píxeles y 50 kB de peso) en el supuesto de que el cliente solicite
ver más información del producto o la galería de imágenes del mismo.
Modelo ER
Por otro lado, los productos también se relacionan con los detalles de pedidos
mediante una relación 1:N, es decir, el detalle de pedido se relaciona con un
producto, y un producto se puede relacionar con muchos detalles de pedidos.
La entidad detalles de pedidos contiene atributos como la cantidad de producto,
el precio unitario, el descuento y el importe parcial, que es un atributo derivado o
calculado. Este concepto se refiere al hecho de que su valor se calcula a partir
de otros valores, en este caso de la cantidad, el precio y el posible descuento.
Los detalles de los pedidos están relacionados con la entidad pedidos, que con-
tiene los datos generales de cada pedido, como por ejemplo el código del pedi-
do, la fecha y el estado de preparación de este. Y aquí hay que tener presente
© FUOC • PID_00223058 31 Almacenamiento y explotación de datos en el comercio electrónico
que el estado del pedido es también un atributo derivado, puesto que su valor
viene determinado por diferentes condiciones de la base de datos (como por
ejemplo, ¿están los productos del pedido en stock?, ¿se ha facturado el pedi-
do?, ¿se ha servido el pedido?).
Esquema relacional
Distinguimos tres tipos de técnicas para recoger información sobre los usua-
rios de manera automatizada. En primer lugar, veremos aquellas técnicas que
permiten identificar al usuario y guardar información que hay que tener en
cuenta para mejorar y personalizar su experiencia en futuras visitas; en segun-
do lugar, trataremos aquellas técnicas que generan información como resul-
tado de la navegación del usuario por el sitio web y que nos pueden facilitar
estadísticas de los accesos y los comportamientos de los usuarios en el estable-
cimiento electrónico, y en tercer y último lugar, comentaremos brevemente
las herramientas de analítica social que nos pueden aportar información sobre
el grado de satisfacción de los usuarios del establecimiento electrónico.
En este punto es importante recordar que cualquier sitio web funciona utili- Protocolo sin estado
zando el protocolo HTTP (o HTTPS en su versión segura), que es un protocolo
Un protocolo sin estado es un
sin�estado, es decir, que no guarda ningún tipo de información sobre los ac- protocolo de comunicaciones
cesos y las decisiones que hace el cliente en su navegación por el sitio web. No que trata cada petición como
una transacción independien-
obstante, un sitio de comercio electrónico requiere mantener un estado con el te, que no tiene relación con
ninguna solicitud anterior. De
cliente, puesto que, por ejemplo, es necesario guardar información sobre los este modo, la comunicación se
desarrolla a través de pares in-
productos que el cliente acaba de incorporar a la cesta de compra. Para que el dependientes de solicitud (por
servidor pueda mantener este tipo información, se utilizan las cookies. ejemplo, del navegador del
cliente) y respuesta (del servi-
dor del sitio web del estableci-
miento).
© FUOC • PID_00223058 34 Almacenamiento y explotación de datos en el comercio electrónico
Hay que remarcar que las cookies solo pueden almacenar un volumen muy re-
ducido de información, y que no guardan muchos de los datos de los clientes
que son relevantes para el establecimiento. De hecho, tanto la información
personal del usuario (su nombre y apellidos, la dirección de correo electrónico,
la dirección física, etc.), que se obtiene habitualmente a través de los formula-
rios de registro en el sitio web, como la información generada por los ficheros
de registro sobre el comportamiento de navegación del cliente (páginas visi-
tadas, productos consultados, etc.), como la que hace referencia a su compor-
tamiento de compra (artículos adquiridos, momento de la compra, etc.) se al-
macenan en la base de datos operativa del establecimiento y no en las cookies.
Dado que las cookies se almacenan en el dispositivo del usuario, este puede
decidir (a través de las opciones de su navegador) si autoriza o no que la pá-
gina web escriba estos ficheros en su dispositivo. De todos modos, cuando el
establecimiento virtual detecta que el navegador del usuario tiene la opción
de las cookies desactivada, es habitual que lo avise de la necesidad de activarla
para poder navegar por el sitio web, puesto que las cookies, entre otras cosas,
mantienen el código de sesión. Este código permite encadenar los diferentes
procesos que un mismo usuario hace en un sitio web (por ejemplo, seleccionar
productos, introducir los datos de envío y pago, etc.). Por este motivo, hay
muchos sitios web que no permiten efectuar ciertas operaciones si el usuario
tiene las cookies desactivadas.
Hay dos alternativas principales para identificar y reconocer a los clientes cada
vez que vuelven a acceder al sitio web:
• Usuario�registrado: requiere que el cliente se haya registrado como usua- Recordando el idioma
rio del establecimiento electrónico. Cuando el usuario se registra en el es-
Si el usuario selecciona una
tablecimiento, se le solicitan sus datos personales, que serán empleados preferencia de idioma, la apli-
para formalizar los diferentes pedidos que pueda hacer, pero también otros cación web guardará en una
cookie el idioma seleccionado,
datos sobre sus preferencias, tales como el idioma, las categorías de pro- y cada vez que el mismo usua-
rio entre al web, la aplicación
ductos en las que está más interesado, si desea recibir algún tipo de boletín web consultará si existe alguna
cookie donde haya guardado
electrónico (o newsletter) con novedades e información del establecimien- esta preferencia. Si la encuen-
to, etc. Por lo tanto, cada vez que un cliente registrado accede al estable- tra, mostrará el web de acuer-
do con la preferencia. En caso
cimiento y se identifica mediante el nombre de usuario y contraseña que contrario, puede consultar el
idioma del navegador o mos-
previamente ha facilitado, podemos adaptar el idioma y las preferencias trar el idioma por defecto del
de navegación a las que nos ha indicado previamente. establecimiento.
© FUOC • PID_00223058 35 Almacenamiento y explotación de datos en el comercio electrónico
Cada vez que un usuario accede a una de las páginas de nuestro establecimien-
to electrónico, genera información como resultado de la navegación, y esta
información puede ser utilizada para generar estadísticas de los accesos y de
los comportamientos de los usuarios en el establecimiento electrónico.
Google Analytics
Las tres técnicas comentadas, con diferentes matices y detalles, permiten guar-
dar información de las páginas visitadas por cada usuario. A partir de estos
datos se puede extraer la siguiente información:
Podemos definir tres grupos de datos que ofrecen diferente tipo de informa-
ción para el establecimiento: volumétricos, cuantitativos y cualitativos.
3)� Visibilidad: número de menciones que recibe la marca por parte de los
usuarios de los medios sociales.
5)�Difusión: número de usuarios de medios sociales a los que les llega el con-
tenido, ya sean seguidores o no de la marca.
© FUOC • PID_00223058 39 Almacenamiento y explotación de datos en el comercio electrónico
Finalmente, el tercer grado del análisis se hace con datos que no se represen-
tan numéricamente. Aquí el esfuerzo se centra en estudiar e interpretar las
conversaciones de los usuarios. Por lo tanto, se requiere la participación de un
especialista, generalmente conocido como social media manager, que se encar-
gará de analizar qué comentan los usuarios.
Conocer los temas de conversación y los intereses de los usuarios permite de-
finir mejor las estrategias de negocio, efectuar acciones más focalizadas a los
intereses de una determinada comunidad y conectar mejor con los usuarios.
Por lo tanto, es importante prestar atención a todo lo que los usuarios puedan
compartir y comentar de la marca, sus intereses y sus inquietudes y tendencias.
La base de datos analítica ha de poder dar respuesta a preguntas del tipo siguiente:
• ¿Cuáles han sido los productos más vendidos por el establecimiento virtual en cada
país y durante cada trimestre de los últimos cinco años?
• ¿Qué efecto ha tenido una determinada acción de marketing digital sobre las compras
efectuadas por parte de clientes jóvenes (por ejemplo, de entre 18 y 25 años)?
• ¿Cómo podemos segmentar los clientes en línea y dirigirnos a grupos de clientes con
características similares, de manera que despleguemos acciones comerciales específi-
cas para cada grupo?
El almacén de datos, o data warehouse, es una base de datos que integra en una
única plataforma datos procedentes de fuentes y subsistemas operativos dife-
rentes, con el objetivo de dar apoyo en la toma de decisiones para el negocio.
Lectura complementaria
El almacén de datos es una colección de datos orientados al tema, inte-
grados, historiados y no volátiles, organizados para dar apoyo en pro- W.�H.�Inmon;�R.�D.�Hackat-
horn (1994). Using the data
cesos de ayuda a la decisión. warehouse. Nueva York: Wi-
ley.
formación interna de la empresa e incluso otras bases de datos externas. Por lo Todos los atributos que expre-
tanto, es muy importante organizar correctamente la información e integrar- sen sus valores en forma de fe-
chas deben estar guardados en
la en un formato común. El objetivo es que los analistas, a pesar de que los el mismo formato (por ejem-
plo “dd/mm/aaaa”) y con la
datos provengan de fuentes diferentes, lo vean como si provinieran de una misma precisión (por ejemplo,
fecha expresada en año, mes y
única fuente. El sistema debe facilitar la resolución de heterogeneidades tanto día sin tener en cuenta la hora
de semántica como de sistema. y minutos).
© FUOC • PID_00223058 42 Almacenamiento y explotación de datos en el comercio electrónico
A partir de lo que hemos visto sobre las bases de datos operativas y de la defi-
nición que acabamos de dar de las bases de datos analíticas, la tabla siguien-
te nos muestra un resumen de sus características y las principales diferencias
entre ellas.
Datos sobre las operaciones o actividades habituales del negocio Datos sobre temas que afectan a la evolución del negocio
Diseño orientado a que la aplicación cumpla su finalidad Diseño orientado a las áreas de interés del negocio
Datos muy detallados Datos muy detallados, pero también datos resumidos
Información cambiante, muy volátil Información estable, a la cual se va añadiendo los datos más re-
cientes
Fuente: Òscar Alaverdra Martí (2006). Almacenamiento y explotación de datos en el comercio electrónico. Barcelona: Ediciones UOC.
La figura anterior muestra un posible diseño conceptual del data warehouse e ilustra algu-
nas diferencias entre el modelo analítico y el modelo de la base de datos operativa, pero
no es un modelo completo que sea funcional en un entorno real.
En primer lugar, podemos ver que la entidad ventas está en el centro del esquema y se
relaciona con otras tres entidades, que son clientes, productos y tiempo.
Las entidades ventas y clientes se relacionan entre sí de tal manera que un cliente pue-
de haber ordenado varias ventas, pero una venta solo puede estar asociada a un único
cliente. De modo similar, una venta tiene asociado un único producto y cada producto
puede estar asociado a múltiples ventas. Y finalmente, una venta sucede en un instante
de tiempo, aunque un mismo instante de tiempo puede tener más de una venta asociada.
Las entidades clientes y productos ya las hemos visto anteriormente. Por el contrario, en
este esquema aparece una nueva entidad, tiempo, que, como ya hemos comentado, per-
mitirá asociar cada una de las entidades del almacén de datos al instante de tiempo en el
que se ha producido, de tal manera que conservaremos el detalle de los acontecimientos
que han ido sucediendo en orden cronológico. Cada instante de tiempo vendrá definido
por un identificador, la fecha, el número de trimestre del año, el número de semestre y el año.
A pesar de que estas tres últimas informaciones puedan parecer redundantes, permiten
acelerar las consultas en la base de datos, puesto que es muy habitual agrupar resultados
trimestral, semestral o anualmente.
Por lo tanto, la entidad ventas contendrá información sobre cada producto que se ha
vendido, a qué cliente se ha vendido y en qué instante de tiempo. Es interesante remarcar
que en el modelo operacional esta información va agrupada en un pedido, pero en cambio
en el entorno analítico es más probable que nos interese acceder a información sobre
el volumen de compras de cada cliente, el volumen de ventas de cada producto o los
momentos de más ventas, sin tener en cuenta cómo estas ventas se agrupan en pedidos.
Tal y como ilustra este ejemplo, el tiempo adquiere una importancia capital en el almacén
de datos analítico.
© FUOC • PID_00223058 44 Almacenamiento y explotación de datos en el comercio electrónico
Los sistemas operacionales suelen tener muchos usuarios que acceden a pocos
datos, mientras que en los sistemas analíticos para la toma de decisiones tene-
mos pocos usuarios que acceden a grandes volúmenes de información. Pode-
mos identificar tres tipos de usuarios en un data warehouse:
2)�Explorador: este usuario accede a los datos de manera imprevisible e irre- Ved también
gular. Planifica y prepara estudios que analizan una gran cantidad de datos de
El big data se analiza más ade-
forma simultánea. A diferencia del anterior tipo de usuario, a menudo no sabe lante, en el subapartado 4.2.5
realmente lo que busca hasta que lo encuentra, y no garantiza que haya resul- de este mismo módulo.
tados satisfactorios de su análisis. Pero en algunos casos los resultados son muy
interesantes y permiten mejorar de modo sustancial el negocio. Es habitual
que este usuario sea informático y/o estadístico experto en minería de datos
y análisis estadístico. En el contexto actual, con la aparición del big data, la
figura del explorador ha evolucionado hacia una nueva figura conocida como
científico de datos (data scientist).
Los datos del data warehouse se obtienen a partir de los sistemas operacionales
del establecimiento y de fuentes externas. Los datos obtenidos de diferentes
fuentes no se pueden utilizar directamente en el almacén de datos, a causa
principalmente de las diferencias que hay entre ellos en cuanto a su estructu-
ra y organización. Por lo tanto, hay que adaptar cada una de las fuentes de
información a los requerimientos del almacén de datos.
Una vez hemos seleccionado las fuentes de datos de las que nos interesa im-
portar información al data warehouse, hay que tener en cuenta tres situaciones
que pueden generar problemas en el proceso de inserción de datos:
© FUOC • PID_00223058 45 Almacenamiento y explotación de datos en el comercio electrónico
• Hay que depurar los errores o conflictos que se puedan detectar dentro de
los datos de cada una de las fuentes.
• Finalmente, hay que integrar los datos depurando los errores o conflictos
que puedan aparecer entre datos de diferentes fuentes.
Una vez definido el proceso de importación, hay que decidir en qué momen-
to y con qué frecuencia se ejecutará este proceso. Podemos distinguir distin-
tas frecuencias de refresco de los datos, que van desde la actualización unos
segundos después de que se produzcan las modificaciones en las aplicaciones
operacionales, hasta una actualización de manera no planificada.
(2)
• A� partir� de� los� censos: el INE hace encuestas de manera periódica a la La sección censal es una par-
tición de un término municipal
población española y ofrece a las empresas la posibilidad de consultar una
con un volumen de entre 1.000 y
parte de la información agregada obtenida, que se proporciona a nivel 2.500 ciudadanos.
A continuación, estudiaremos una por una todas estas técnicas que permiten
consultar y analizar los datos almacenados en el data warehouse.
Las consultas y listas son técnicas que no son exclusivas del entorno analítico.
Cuando se utilizan para hacer consultas al data warehouse permiten elegir los
datos que interesa obtener, los criterios para filtrarlos, los análisis que se pue-
den efectuar y las formas como se mostrarán los resultados de estos análisis.
Algunas preguntas que podemos resolver empleando estas técnicas son estas:
• ¿Hay productos que concentran sus ventas en determinadas épocas del año?
• ¿Cuál es la tendencia de venta de un determinado producto en los últimos 24 meses?
• ¿Cuáles son los diez mejores clientes de cada zona geográfica y cuál es su tendencia
de compra en los últimos 12 meses?
• ¿Cuáles son los productos más y menos vendidos en el último año?
© FUOC • PID_00223058 48 Almacenamiento y explotación de datos en el comercio electrónico
2)�Necesidades�de�datos: para poder evaluar la hipótesis hay que estudiar las ventas de
todos los productos que pertenecen a la categoría ferretería durante un cierto periodo
de tiempo.
Este proceso se puede iterar y refinar tantas veces como sea necesario, hasta que la hipó-
tesis (esto es, las herramientas de ferretería se venden más en época de vacaciones) quede
validada o desestimada.
4) Son capaces de almacenar la información necesaria para los diferentes aná- Metadatos
lisis teniendo en cuenta no solo el volumen de datos (que puede llegar a ser
Los metadatos son toda aque-
muy grande), sino también el significado�de�los�datos, que se suele materia- lla información descriptiva so-
lizar a través de los metadatos. bre el contexto, la calidad, la
condición o las características
de un dato u objeto, que faci-
lita su recuperación y evalua-
5) Son multidimensionales. Esta es, probablemente, la característica más im- ción. Por ejemplo, cuando ha-
cemos una fotografía con una
portante y la detallaremos a continuación. cámara digital se guarda auto-
máticamente información refe-
rente a la fecha, hora, diafrag-
Las técnicas OLAP están diseñadas para dar apoyo específico a las consultas ad ma, velocidad, modo de cap-
tura, etc. Estos datos son los
hoc que el usuario ha de formular a medida que se le va planteando la nece- metadatos de la fotografía.
sidad de analizar determinados datos. Para facilitar esta tarea, las herramien-
tas OLAP presentan los datos de manera similar a como los analistas están
acostumbrados a verlos, es decir, en función de hechos y dimensiones –y no a
partir de las tablas, atributos y relaciones que son típicas de las bases de datos
del entorno operacional.
Algunas preguntas a las que podemos responder empleando estas técnicas son estas:
En los análisis multidimensionales se suele trabajar con dimensiones que hacen referen-
cia al tiempo, áreas geográficas, edad o sexo de los clientes, tipologías o grupos de clientes
y tipologías o grupos de productos, entre otras.
© FUOC • PID_00223058 51 Almacenamiento y explotación de datos en el comercio electrónico
Las dos técnicas de explotación de datos que hemos visto hasta ahora pertene-
cen al grupo de métodos que hemos denominado de verificación. Como tales,
esencialmente, nos permiten validar o desmentir una hipótesis previamente
definida. En cambio, la minería de datos pertenece al grupo que hemos deno-
minado de descubrimiento, y se define como el proceso no trivial de descubrir
patrones válidos, nuevos, potencialmente útiles y comprensibles dentro de un
conjunto de datos.
Existe una gran cantidad de técnicas de minería de datos. Todas ellas tienen
el mismo objetivo: extraer conocimiento de los datos; pero los métodos que
utilizan pueden diferir mucho entre ellas. Sin pretender ser exhaustivos, enu-
meraremos los principales grupos de técnicas de la minería de datos:
3) Métodos bayesianos.
Dentro de cada uno de estos grupos podemos encontrar diferentes técnicas Cuestiones a las que
y algoritmos, cada una de ellas con características propias. El problema y los podemos responder
empleando la minería de
datos determinan, en gran medida, cuáles son las técnicas más efectivas en datos
cada situación.
Algunas preguntas a las que
podemos responder emplean-
Ejemplo de análisis en el caso de BricoTodo do esta técnica son estas:
• ¿Cuántos y qué tipo de per-
Un ejemplo de análisis utilizando herramientas de minería de datos consiste en anali- files de clientes podemos
zar el perfil y el comportamiento de todos los clientes del data warehouse con el fin de encontrar en el estableci-
identificar grupos de clientes con características, preferencias e intereses similares. Este miento electrónico?
agrupamiento puede resultar muy útil para definir acciones de marketing específicas para
• ¿Qué relaciones hay entre
cada grupo.
los productos que ofrece-
mos en el establecimien-
to? Si, por ejemplo, detec-
En algunos casos, debido a la gran cantidad, variabilidad y dispersión de datos, tamos que hay grupos de
puede ser necesario el uso de almacenes de datos NoSQL o técnicas específicas dos o más productos que
se suelen comprar conjun-
de big data. En estos casos continuamos hablando de procesos de minería de tamente, podremos reco-
mendar productos relacio-
datos, pero con unas especificaciones suficientemente interesantes como para nados cuando un cliente
adquiere uno de ellos.
ser consideradas aparte.
Actualmente, el modelo relacional es el más utilizado por los sistemas de ges- Pramod�J.�Sadalage;�Martin
tión de bases de datos. Pero a pesar de que este modelo es útil, la difusión Fowler (2012). NoSQL disti-
lled: a brief guide to the emer-
de internet y de los dispositivos móviles, además de la internacionalización y ging world of polyglot persisten-
la compartición de información, han impuesto nuevos requisitos a las aplica- ce. Pearson Education.
Las principales características distintivas de las bases de datos NoSQL son que El lenguaje SQL
estas no aplican el modelo relacional, no utilizan el lenguaje SQL como len-
El lenguaje de consultas estruc-
guaje de consultas y están enfocadas a resolver problemas endémicos del mo- turado o SQL (structured query
delo relacional, como por ejemplo gestionar tipos de datos complejos. language) es un lenguaje de-
clarativo de acceso a bases de
datos relacionales que permite
especificar varios tipos de ope-
Dentro de esta categoría encontramos las bases�de�datos�orientadas�a�grafos, raciones, como por ejemplo
consultas, modificaciones o in-
un tipo de base de datos NoSQL que representan la información basándose en serciones, basándose en el ál-
la estructura de un grafo, es decir, como un conjunto de nodos y las relaciones gebra y el cálculo relacional.
entre pares de nodos. Estas bases de datos permiten emplear la teoría de gra-
© FUOC • PID_00223058 53 Almacenamiento y explotación de datos en el comercio electrónico
fos para recorrer la base de datos y hacer consultas sobre los datos. Cualquier
información que se pueda modelar, de forma natural, empleando un grafo
es susceptible de ser implementada utilizando una base de datos orientada a
grafos.
A pesar de que es posible representar esta información en una base de datos relacional,
si optamos por una base de datos NoSQL, concretamente una base de datos orientada a
grafos, obtenemos una serie de ventajas importantes:
• Los datos se expresan de manera mucho más natural en una base de datos orientada
a grafos, ofreciendo una representación muy próxima al dominio de interés.
• Algunas de las preguntas que nos hemos planteado pueden ser resueltas aplicando
teoría de grafos, por ejemplo podemos emplear la segmentación de usuarios o com-
munity detection para detectar comunidades de usuarios en el grafo, basándonos en
las relaciones entre usuarios y sus atributos. También encontramos muchas medidas
de centralidad en la teoría de grafos que nos permitirán identificar a los usuarios más
importantes en el análisis del flujo de la información a través de la red.
• Muchas de estas bases de datos implementan algoritmos de teoría de grafos que per-
miten, por ejemplo, buscar el camino de coste mínimo, calcular la distancia entre
dos vértices, etc.
• Podemos añadir nuevos atributos a los nodos sin necesidad de modificar el esquema
de la base de datos.
La explosión de datos de los últimos años es una realidad. El incremento ex- Lectura complementaria
ponencial de dispositivos con conexión a internet, así como la aparición y el
Viktor�Mayer-Schönberger;
éxito de los medios sociales, han provocado una explosión en el volumen de Kenneth�Cukier (2013). Big
datos disponibles. Además, muchos de estos datos son abiertos y accesibles, lo data. La revolución de los datos
masivos. Madrid: Turner Pu-
que permite que puedan ser analizados por empresas e instituciones de todo blicaciones.
© FUOC • PID_00223058 54 Almacenamiento y explotación de datos en el comercio electrónico
Junto con la aparición de los datos masivos, o big data, ha surgido un nuevo
paradigma en el que la correlación ha sustituido a la causalidad como ob-
jetivo o centro del análisis. Si identificamos una correlación entre diferentes
variables de la muestra (por ejemplo, los adultos de una determinada región
geográfica consumen más productos de una determinada categoría), podemos
explotar esta información aunque desconozcamos la causa. De hecho, proba-
blemente la causa no es ni siquiera relevante para la empresa. Por lo tanto,
en este nuevo paradigma no interesa explicar el porqué de los hechos, sino
identificar correlaciones entre ellos.
Generalmente, el término big data se utiliza para describir las tecnologías, las
técnicas y las metodologías relacionadas con el procesamiento de grandes y
heterogéneos volúmenes de información.
Esta definición se conoce como las tres uves del big data: volumen, velocidad
y variedad. Últimamente se ha añadido una cuarta característica, que es la
veracidad. Veámoslas brevemente:
3)�Variedad: esta característica se refiere a que las técnicas de big data integran Fichero CSV
y trabajan con datos que tienen diferentes formatos y estructuras. Habitual-
El fichero CSV (comma-separa-
mente distinguimos entre datos estructurados, que son datos atómicos o ele- ted values) es un tipo de docu-
mentales, fácilmente interpretables y manipulables (como, por ejemplo, los mento en formato abierto pa-
ra representar datos en forma
de un fichero CSV); datos semiestructurados, que son datos elementales sin de tabla, donde las columnas
se separan mediante una coma
estructura fija (como es el caso, por ejemplo, de los documentos XML), y da- (o punto y coma cuando utili-
zamos la coma para separar los
tos no estructurados (por ejemplo, un documento entero de texto o una foto- decimales) y las filas por saltos
grafía). En este último caso la información no está representada por datos ele- de líneas.
• Desplazamientos de los clientes por las tiendas físicas de la empresa, obtenidos gracias
a las etiquetas RFID que llevan los productos.
Este nuevo escenario presenta los problemas relacionados con las cuatro uves y, por lo
tanto, puede ser tratado mediante técnicas de big data. En primer lugar, a pesar de que
el volumen no supera los límites de las bases de datos relacionales, se sitúa en el límite
aconsejado para un buen rendimiento del data warehouse. En segundo lugar, la velocidad
de las técnicas tradicionales de análisis puede tener un coste temporal elevado con este
volumen y variedad de datos. En tercer lugar, existen diferentes orígenes de datos; algunos
de ellos son semiestructurados, como la relación entre los usuarios, tuits y retuits de
Twitter; y otros son no estructurados, como por ejemplo los comentarios de Facebook
o los surgidos en los focus groups, y esto hace que haya una variedad importante en los
datos que analizar. Y en cuarto y último lugar, tratamos con datos provenientes de medios
sociales (con abreviaturas, faltas de ortografía, interpretaciones ambiguas, etc.), encuestas
(pueden haber respondido en blanco o informaciones ambiguas) y focus groups (que no
© FUOC • PID_00223058 56 Almacenamiento y explotación de datos en el comercio electrónico
Las cuatro uves son un síntoma que puede indicar la conveniencia de utilizar un sistema
de big data para un cierto análisis. La principal diferencia, respecto a un análisis tradicio-
nal, es que se analizan todos los datos de las diferentes fuentes de manera integrada. Al
utilizar todos los datos combinados se reduce la pérdida de información y se incrementan
las posibilidades de encontrar correlaciones en comparación con aquellos análisis que
consideran los datos de manera separada.
© FUOC • PID_00223058 57 Almacenamiento y explotación de datos en el comercio electrónico
Resumen
En el tercer apartado del módulo hemos detallado cómo podemos recoger in-
formación de los usuarios del establecimiento electrónico, que nos permitirá
conocer mejor a nuestros clientes y personalizar su experiencia de navegación.
Ejercicios de autoevaluación
1. Imaginad que estáis creando un establecimiento electrónico que se dedicará a la venta de
vehículos de segunda mano, concretamente de coches y furgonetas. De cada vehículo que
tendréis disponible, el cliente estará interesado en conocer la marca, el modelo, el año de
fabricación, la matrícula, el kilometraje, el color, el número de puertas y una descripción
general del estado del vehículo. Definid el esquema conceptual, empleando el modelo ER,
que permita modelar los conceptos necesarios para representar la información mencionada.
2. Definid el esquema lógico para una base de datos relacional, es decir, el modelo relacional
a partir del modelo ER del ejercicio anterior.
4. Se quiere analizar a los clientes de un establecimiento en línea para comprender las prefe-
rencias de compra en función de determinadas características demográficas y socioeconómi-
cas (estado civil, rango de edad, nivel educativo, etc.). Además, se quiere realimentar la base
de datos operacional para que el sistema ofrezca al cliente registrado aquellos productos que
pueden ser de su interés. El establecimiento considera que serán productos interesantes para
ellos aquellos productos que hayan sido comprados mayoritariamente por clientes con las
mismas características demográficas y socioeconómicas. Explicad cuáles serían las dimensio-
nes del análisis y el proceso de alimentación del data warehouse.
© FUOC • PID_00223058 60 Almacenamiento y explotación de datos en el comercio electrónico
Solucionario
Ejercicios de autoevaluación
Esquema ER
2. La figura siguiente muestra el modelo relacional generado a partir del ejercicio anterior.
Esquema relacional
• Pintura/decoración
• Herramientas
• Ferretería
• Electricidad e iluminación
• Baño y cocina
• Carpintería
• Jardín
• Construcción
• Reformas y proyectos
4. El data warehouse puede analizar las ventas a partir de las dimensiones estado_civil,
rango_edad y producto, por ejemplo.
Por lo tanto, cuando en el entorno operacional se produzca una venta, se debe alimentar el
data warehouse con la información correspondiente para poderla analizar de acuerdo con las
dimensiones anteriores. Para hacerlo efectivo, la base de datos operacional podría contar con
una estructura temporal que fuera almacenando la información de las ventas (con todas las
dimensiones asociadas) hasta que esta se traspasara definitivamente al data warehouse. Por
lo tanto, la tabla “ventas” de la base de datos analítica tendría la información sobre cada
venta, desglosada a partir del estado civil del cliente, el rango de edad, el tipo de cliente y
el producto comprado.
© FUOC • PID_00223058 61 Almacenamiento y explotación de datos en el comercio electrónico
Como ejemplo de resultado de este análisis tendríamos: “Los clientes solteros con edades
comprendidas entre los 20 y los 25 años han comprado el producto con referencia 102”.
© FUOC • PID_00223058 62 Almacenamiento y explotación de datos en el comercio electrónico
Glosario
atributo m Propiedad de un tipo de entidad que interesa representar.
conectividad f Expresión del tipo de correspondencia entre las entidades de una relación.
diseño conceptual m Etapa del diseño de una base de datos que obtiene una estructura
de la información de la futura base de datos independiente de la tecnología que se quiere
emplear.
diseño lógico m Etapa del diseño de una base de datos que parte del resultado del diseño
conceptual y lo transforma de manera que se adapte al modelo de sistema gestor de bases de
datos con el que se desea implementar la base de datos.
dividir para vencer f Estrategia que propone resolver un problema complejo a partir de
dividirlo en un conjunto de problemas más sencillos, donde la resolución de los diferentes
subproblemas acabará conduciendo a la resolución del problema inicial. En inglés se conoce
como divide & conquer.
entidad f Objeto del mundo real que podemos distinguir del resto de los objetos y del cual
nos interesan algunas propiedades.
Bibliografía
Adamson, C.; Venerable, M. (1998). Data warehouse design solutions. Nueva York: John
Wiley & Sons.
Casas Roma, J.; Conesa i Caralt, J. (2013). Diseño conceptual de bases de datos en UML.
Barcelona: Editorial UOC.
Herrera Joancomartí, J.; Alavedra Martí. O.; Domingo Ferrer, J.; Rius Gavidia,
M. A.; Sebé Feixas, F.; Soriano Ibáñez, M. (2001). Comerç electrònic. Barcelona: Editorial
UOC.
Kimball, R.; Ross, M. (2013). The data warehouse toolkit: the definitive guide to dimensional
modeling. Indianapolis, Indiana: John Wiley & Sons.
Krishnan, K. (2013). Data warehousing in the age of big data. Waltham, Massachusetts: Mor-
gan Kaufmann.
Provost, F.; Fawcett, T. (2013). Data science for business: what you need to know about data
mining and data-analytic thinking. Sebastopol, California: O’Reilly Media.
Silverston, L.; Agnew, P. (2008). The data model resource book. Nueva York: John Wiley
& Sons.