Evitar predicados redundantes
Evite predicados redundantes, especialmente cuando se producen en distintas tablas. En algunos casos, el optimizador no puede detectar que los predicados son redundantes. Esto puede dar como resultado una subestimación de la cardinalidad.
Por ejemplo, en aplicaciones de inteligencia empresarial (BI) SAP , el esquema de copo de nieve con tablas de hechos y dimensiones se utiliza como una estructura de datos optimizada de consulta. En algunos casos, hay una columna característica de tiempo redundante ( "SID_0CALMONTH" para el mes o "SID_0FISCPER" para el año) definida en las tablas de hechos y dimensiones.
El procesador de procesamiento analítico en línea (OLAP) de SAP BI genera predicados redundantes en la columna de características de tiempo de las tablas de dimensiones y hechos.
Estos predicados redundantes pueden dar como resultado un tiempo de ejecución de consulta más largo.
AND ( "DT"."SID_0CALMONTH" = 199605
AND "F". "SID_0CALMONTH" = 199605
OR "DT"."SID_0CALMONTH" = 199705
AND "F". "SID_0CALMONTH" = 199705 )
AND NOT ( "DT"."SID_0CALMONTH" = 199803
AND "F". "SID_0CALMONTH" = 199803 )El optimizador de Db2® no reconoce los predicados como idénticos y los trata como independientes. Esto lleva a la subestimación de cardinalidades, planes de acceso de consulta subóptimos y tiempos de ejecución de consulta más largos.Por este motivo, los predicados redundantes se eliminan mediante la capa de software específica de la plataforma de base de datos Db2 .
AND ( "F". "SID_0CALMONTH" = 199605
OR "F". "SID_0CALMONTH" = 199705 )
AND NOT ( "F". "SID_0CALMONTH" = 199803 )Aplique las instrucciones de las notas de SAP 957070 y 1144883 para eliminar los predicados redundantes.