Este artículo proporciona un resumen de TPC-DS, el benchmark estándar de la industria para realizar pruebas y comparativas de rendimiento entre sistemas de Data Warehouse y bases de datos OLAP.
Contenidos
Qué es un Benchmark
Los benchmarks o pruebas de rendimiento intentan proporcionar métricas de rendimiento realizando simulaciones de cargas de trabajo. Estas métricas nos permiten comparar el rendimiento del sistema con otros sistemas teniendo en cuenta el software.
Esta referencia es útil para que los vendedores tecnológicos puedan para mejorar sus productos. Es común que publiquen los resultados favorables para realizar comparaciones aunque estas deben estar siempre acompañadas de las especificaciones técnicas del entorno de pruebas utilizado.
TPC-DS
TPC-DS es un benchmark de procesamiento analítico en línea (OLAP) de apoyo a la toma de decisiones de propósito general. Es una referencia estándar en el sector OLAP y de almacenes de datos. La versión actual es la v3. Esta versión no es compatible con la versión v2.
Para generar las métricas de rendimiento modela un Data Warehouse. Este warehouse representa un productor de retail con el que interaccionan los usuarios realizando ventas y devoluciones de ventas en tiendas, catálogos e internet.
El framework TPC-DS se ha implementado en muchos sistemas de procesamiento analítico para realizar comparaciones. Entre estos sistemas se encuentran Bases de datos relacionales, Redshift, Synapse Analytics, Snowflake, Apache Spark o Apache Flink entre otros muchos.
El primer paso es configurar el esquema de la base de datos. Después debemos generar los datos para las tablas. TPC-DS proporciona la configuración necesaria para controlar el volumen total de los datos generados. Este factor de escala especifica de manera aproximada el volumen de la base de datos en GB. El mínimo de datos generados es 1 GB.
Consultas
TPC-DS especifica un conjunto de 99 consultas distintas en SQL, diseñadas para cubrir el conjunto de datos al completo. Ninguna de estas consultas es estática, todas las consultas se generan mediante un modelo de plantilla con sustituciones aleatorias para modelar el uso del Data Warehouse.
El esquema de los datos incluye siete tablas de hechos: ventas, devoluciones de productos, inventarios de ventas y 17 tablas de dimensiones para modelar los canales de ventas.
En el framework TPC-DS también se reflejan las actualizaciones periódicas de los datos. Este es un proceso típico en los Data Warehouses y está basado en ETL (Extract, Transform, Load). Los ficheros generados representan los resultados extraídos (E) de sistemas externos. Los pasos de transformación (T) y carga son parte de las consultas de mantenimiento del Data Warehouse, con sentencias de tipo UPDATE, INSERT y DELETE.