Un aspect comprend les caractéristiques suivantes :
Dans cet exemple, la famille de produits principale dépend de la famille de produits et celle-ci dépend du produit. De plus, le groupe de clients dépend du client. Il n’y a pas de dépendance entre les autres caractéristiques. Chaque client achète chaque produit. Un million d’enregistrements (1 000 produits x 1 000 clients) sont générés dans la base de données altérables.
Dans votre état, vous voulez naviguer vers le client à partir de la liste des familles de produits principales via les caractéristiques Famille de produits, Produit et Groupe de clients. Si vous définissez un état à l’aide de toutes les caractéristiques, les temps de réponse seront trop longs lors de l’exécution en ligne de l’état, car les données doivent être chargées à partir du niveau de détail le plus bas dans la mémoire.
Vous pouvez résoudre ce problème en procédant comme suit :
Lorsque vous exécutez le premier état, 1 000 enregistrements sont lus à partir du niveau de compression, puisque la famille de produits et la famille de produits principale dépendent du produit et qu’il y a 1 000 produits.
Pour naviguer jusqu’au client, naviguez vers un produit dans le premier état. Appelez alors le deuxième état à l’aide de l’interface état. Comme les trois variables nécessaires sont extraites du premier état, un maximum de 1 000 enregistrements de la base de données altérables doit être lu. Pour ce produit, vous pouvez à présent naviguer jusqu’au client.
Par rapport à un état unique possédant toutes les caractéristiques, où un million d’enregistrements doivent être lus, dans ce cas, seuls 1 000 enregistrements doivent être lus deux fois et les états peuvent être exécutés en ligne.