Si damos por hecho la integridad referencial de las uniones
En algunos casos, puede mejorar el rendimiento de la consulta para las uniones de columnas seleccionando la opción Asumir la integridad referencial del menú Datos. Cuando use esta opción, Tableau incluirá la tabla combinada en la consulta solo si los campos hacen referencia a ella específicamente en la vista.
Es adecuado usar esta configuración cuando se sabe que los datos tienen integridad referencial (consulte la definición a continuación), pero la base de datos no impone la integridad referencial o no puede imponerla. Si tiene la opción de configurar la integridad referencial en la base de datos, es mejor configurarla ahí que utilizar esta configuración, ya que puede mejorar el rendimiento tanto de la base de datos como de Tableau. La opción Asumir la integridad referencial de Tableau solo puede influir en el rendimiento de Tableau. Si los datos no tienen integridad referencial y activa esta configuración, puede que los resultados de las consultas no sean fiables.
Para entender en qué consiste la integridad referencial, imagine que se conecta a datos de ventas que tienen dos tablas: Ventas y catálogo de productos. Esas dos tablas se muestran a continuación:
Ventas
| Catálogo de productos
|
Ya que todos los productos que se venden deben estar listados en el Catálogo de productos, cada fila de la tabla Ventas tiene una fila correspondiente en la tabla Catálogo de productos. Cuando esas dos tablas se combinan en la ID de producto, obtiene una tabla que se ve así:
ID de producto | Nombre de producto | ID de producto | Monto de venta | Fecha de transacción |
1 | Tableta de 10 pulgadas | 1 | 100 | 01/10/2012 |
1 | Tableta de 10 pulgadas | 1 | 2000 | 02/10/2012 |
2 | Smartphone | 2 | 50 | 30/09/2012 |
3 | Lámpara de escritorio | 3 | 10 | 21/08/2012 |
Digamos que crea una vista para mirar el Monto de venta por Región. De forma predeterminada, arrastrar el campo Monto de venta a la vista crearía una consulta como esta:
SELECT SUM([Sales Amount]) FROM [Sales] S INNER JOIN [Product Catalog] P ON S.ProductID = P.ProductID
Al seleccionar Asumir la integridad referencial, le está indicando a Tableau que las tablas combinadas tienen integridad referencial. En otras palabras, está confirmando que la tabla Ventas siempre tendrá una fila correspondiente en la tabla Catálogo de producto. Ya que es cierto, Tableau no necesita información de la tabla Catálogo de productos para arrojar esos resultados. Cuando arrastra el campo Monto de ventas a la vista, Tableau puede simplificar la consulta a:
SELECT SUM([Sales Amount]) FROM [Sales]
Esta consulta simplificada frecuentemente puede arrojar resultados más rápidos ya que elimina la operación de combinar. Esta opción solo afecta las uniones internas, y no a las fuentes de datos con una tabla única.