Propriétés de configuration qui ont une incidence sur les performances d' IBM® Campaign
Vous pouvez améliorer les performances d' IBM® Campaign en ajustant des propriétés de configuration.
DB2NotLoggedInitially
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Cette propriété détermine si IBM® Campaign utilise la syntaxe SQL not logged initially lorsque des tables temporaires sont remplies dans DB2®.
Lorsqu'elle est paramétrée sur TRUE, cette propriété désactive la connexion destinée à l'insertion dans les tables temporaires, ce qui améliore les performances et réduit la consommation des ressources de la base de données. Si, pour quelque raison que ce soit, une transaction de table temporaire échoue lorsque la valeur TRUE est définie, la table sera endommagée et ne devra plus être utilisée. Les données qu'elle contenait auparavant seront toutes perdues.
Si votre version de DB2® ne prend pas en charge la syntaxe not logged initially, paramétrez cette propriété sur FALSE.
Valeur par défaut
TRUE
Valeurs valides
TRUE | FALSE
AllowSegmentUsingSQLCase
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Cette propriété spécifie si le processus Segment consolide plusieurs instructions SQL en une seule instruction SQL, lorsque cela répond aux conditions d'une configuration spécifique.
Si vous définissez cette propriété sur TRUE, vous constaterez une nette amélioration des performances dès lors que toutes les conditions requises seront remplies :
*
*
*
Dans ce cas, IBM® Campaign génère une seule instruction SQL CASE pour exécuter la segmentation, suivie d'un traitement segment-par-zone sur le serveur d'application de Campaign.
Valeur par défaut
TRUE
Valeurs valides
TRUE | FALSE
TempTablePostExecutionSQL
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Utilisez cette propriété pour spécifier une instruction SQL complète qu' IBM® Campaign exécutera immédiatement après la création d'une table temporaire dans une source de données utilisateur ou dans la base de données des tables système. Par exemple, pour améliorer les performances, vous pouvez créer un index sur une table temporaire immédiatement après sa création (voir les exemples ci-dessous). Pour activer la création de tables temporaires dans une source de données, vous devez définir la valeur TRUE pour la propriété AllowTempTables.
Vous pouvez utiliser des jetons pour remplacer le nom de la table (<TABLENAME>) et des colonnes (<KEYCOLUMNS>) dans l'instruction SQL, car les valeurs sont générées dynamiquement lors de l'exécution de la campagne.
Bien que sa syntaxe ne soit pas vérifiée, cette propriété est automatiquement ajoutée à l'expression SQL. Si vous l'utilisez, assurez-vous qu'il s'agit d'une expression légale. Vous pouvez placer la chaîne entre guillemets, mais ce n'est pas obligatoire.
Cette propriété considère les points-virgules comme des délimiteurs qui permettent d'exécuter plusieurs instructions SQL. Si votre instruction SQL comporte des points-virgules et que vous souhaitez l'exécuter sous la forme d'une seule et unique instruction, placez une barre oblique gauche comme caractère d'échappement avant les points-virgules.
*
Les jetons disponibles pour TempTablePostExecutionSQL sont décrits ci-après.
Ce jeton est remplacé par le nom d'utilisateur IBM® EMM associé au diagramme pour lequel les tables temporaires ont été créées.
Ce jeton est remplacé par le nom d'utilisateur Campaign de l'utilisateur exécutant le diagramme.
Valeur par défaut
Aucune valeur par défaut définie.
Exemples
La valeur suivante crée un index sur la table temp juste après sa création, pour améliorer le processus d'extraction des données : CREATE INDEX IND_<TABLENAME> ON <TABLENAME> (<KEYCOLUMNS>)
L'exemple suivant pour Oracle appelle une procédure enregistrée et utilise des barres obliques inverses pour remplacer les points-virgules : begin dbms_stats.collect_table_stats()\; end\;
AllowTempTables
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Cette propriété indique si IBM® Campaign crée des tables temporaires dans la base de données. La création de tables temporaires peut améliorer considérablement la performance des campagnes.
Lorsque la valeur est TRUE, les tables temporaires sont activées. Chaque fois qu'une requête est exécutée sur la base de données (par exemple, par le processus Segment), les ID obtenus seront référencés dans une table de base de données. Si une requête supplémentaire est émise, IBM® Campaign peut utiliser cette table temporaire pour récupérer des lignes de la base de données.
Plusieurs opérations d' IBM® Campaign, telles que useInDbOptimization, utilisent la possibilité de créer des tables temporaires. Si les tables temporaires ne sont pas activées, IBM Campaign conserve les identifiants sélectionnés dans la mémoire du serveur IBM® Campaign. La requête supplémentaire récupère les identifiants de la base de données, puis les compare à ceux de la mémoire du serveur. Cela peut nuire aux performances.
Pour écrire dans la base de données en vue d'utiliser les tables temporaires, vous devez disposer des droits appropriés. Les privilèges sont déterminés par la connexion de base de données que vous fournissez lorsque vous vous connectez à la base de données.
Valeur par défaut
TRUE
*
Généralement, vous définissez la valeur TRUE pour AllowTempTables. Pour remplacer la valeur d'un diagramme spécifique, ouvrez-le en mode édition, sélectionnez Paramètres avancés dans le menu Admin Icône de personne, crayon et cercle avec flèche de menu, puis sélectionnez Ne pas permettre l'utilisation de tables temporaires pour ce diagramme sur l'onglet Optimisation du serveur.
Screen capture of Server Optimization tab
MaxRowFetchRecords
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Il convient de choisir une valeur faible afin de garantir les performances.
Si le nombre d'identifiants sélectionnés est inférieur à la valeur spécifiée par la propriété MaxRowFetchRecords, IBM® Campaign transmet les identifiants à la base de données, un à la fois, dans des requêtes SQL distinctes. Ce processus peut demander beaucoup de temps. Si le nombre d'identifiants sélectionnés est supérieur à la valeur spécifiée par cette propriété, IBM® Campaign utilise des tables temporaires (si cela autorisé dans la base de données), ou réduit les valeurs de la table en excluant les valeurs inutiles.
Valeur par défaut
100
UseMergeForTrack
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Cette propriété implémente la syntaxe SQL MERGE pour améliorer les performances du processus Suivi dans les diagrammes. Cette propriété peut être paramétrée sur TRUE pour DB2®, Oracle, Serveur SQL 2008 et Teradata 12. Elle peut également être utilisée avec d'autres bases de données qui prennent en charge l'instruction SQL MERGE.
Valeur par défaut
TRUE (DB2 et Oracle) | FALSE (toutes les autres sources de données)
Valeurs valides
TRUE | FALSE
MaxQueryThreads
Catégorie de configuration
Campaign|partitions|partition[n]|dataSources|nom_source_données
Description
Cette propriété spécifie la limite supérieure du nombre de requêtes simultanées pouvant être exécutées sur chaque source de base de données à partir d'un seul diagramme d' IBM® Campaign. Les valeurs élevées amiéliorent généralement les performances.
IBM® Campaign exécute les requêtes de la base de données à l'aide de threads indépendants. Etant donné que les processus IBM® Campaign s'exécutent en parallèle, il est courant d'avoir plusieurs requêtes s'exécutant simultanément sur une seule source de données. Si le nombre de requêtes devant être exécutées en parallèle excède la valeur de MaxQueryThreads, le serveur IBM® Campaign limite à cette valeur le nombre de requêtes simultanées.
La valeur maximale est illimitée.
*
Si la propriété maxReuseThreads est définie sur une valeur non égale à zéro, elle devra être supérieure ou égale à la valeur de MaxQueryThreads.
Valeur par défaut
Dépend de la base de données.
maxVirtualMemory
Catégorie de configuration
Campaign|partitions|partition[n]|server|optimization
Description
Cette propriété définit une valeur par défaut pour la quantité maximale de mémoire virtuelle système à utiliser lors de l'exécution des diagrammes. Vous pouvez augmenter la valeur pour améliorer les performances ou la diminuer pour limiter les ressources utilisées par un diagramme. La valeur maximale est 4095 Mo. Si vous entrez une valeur supérieure, Campaign la limite automatiquement à 4095 Mo.
Définissez une valeur égale à (80 % x mémoire disponible ) / (nombre de diagrammes simultanés). Par exemple:
Si la mémoire virtuelle disponible sur le serveur = 32 Go
Le nombre de diagrammes simultanés = 10
Définissez : mémoire virtuelle = ( 80 % x 32 ) / 10 = approximativement 2,5 Go / diagramme
Valeur par défaut
128 (Mo)
maxVirtualMemory est un paramètre de configuration globale. Pour remplacer la valeur d'un diagramme spécifique, ouvrez-le en mode édition, sélectionnez Paramètres avancés dans le menu Admin Icône de personne, crayon et cercle avec flèche de menu, et modifiez la valeur d'Utilisation de la mémoire virtuelle d'IBM Campaign sur l'onglet Optimisation du serveur.
Screen capture of Server Optimization tab
doNotCreateServerBinFile
Catégorie de configuration
Campaign|partitions|partition[n]|server|optimization
Description
Pour améliorer les performances, affectez à cette propriété la valeur TRUE. Lorsque cette propriété a la valeur TRUE, les segments stratégiques créent des tables temporaires Segment dans la source des données plutôt que des fichiers binaires sur le serveur IBM® Campaign. Vous devez définir au moins une source de données dans la boîte de dialogue de configuration du processus Créer un segment (CreateSeg) pour contenir les tables temporaires. En outre, vous devez définir la propriété AllowTempTables sur TRUE pour permettre la création de tables temporaires dans une source de données.
Valeur par défaut
FALSE
Valeurs valides
TRUE | FALSE
keepFlowchartLogOpen
Catégorie de configuration
Campaign|partitions|partition[n]|server|logging
Description
Cette propriété indique si IBM® Campaign ouvre et ferme le fichier journal de diagramme dès lors qu'une ligne y est écrite.
La valeur TRUE peut améliorer les performances des diagrammes interactifs en temps réel. Lorsqu'elle est définie sur TRUE, IBM® Campaign ouvre le fichier journal du diagramme une seule et unique fois, puis le ferme lorsque le processus du serveur du diagramme se ferme. L'utilisation de la valeur TRUE peut cependant empêcher la visibilité immédiate des messages récemment consignés dans le fichier journal. En effet, IBM® Campaign transmet les messages de journal au fichier uniquement lorsque sa mémoire tampon interne arrive à saturation ou lorsque le nombre de messages consignés est égal à la valeur de la propriété logFileBufferSize.
Si la valeur est FALSE, IBM® Campaign ouvre et ferme le fichier journal du diagramme.
Valeur par défaut
FALSE
Valeurs valides
TRUE | FALSE
logFileBufferSize
Catégorie de configuration
Campaign|partitions|partition[n]|server|logging
Description
Cette propriété est utilisée lorsque la valeur de keepFlowchartLogOpen est TRUE. Entrez une valeur pour indiquer le nombre de messages à mettre en mémoire tampon avant d'écrire dans le journal. Si la valeur est définie sur 1, tous les messages de journal sont écrits immédiatement dans le fichier, ce qui désactive la mise en mémoire tampon mais qui freine également les performances.
Cette propriété est ignorée si keepFlowchartLogOpen a la valeur FALSE.
Valeur par défaut
5
Intervalle d'attente de sondage du client
Catégorie de configuration
Platform|Scheduler
Description
IBM® Campaign lance des recherches sur des tâches au niveau du planificateur IBM® EMM et ce, à intervalles réguliers en millisecondes spécifiés par cette valeur. La valeur par défaut est de 60 secondes. Evitez de définir cette propriété sur une valeur inférieure à 10 000 (10 secondes) car cela pourrait diminuer les performances de la campagne.
Valeur par défaut
60000
Intervalle d'attente d'interrogation de l'état
Catégorie de configuration
Platform|Scheduler|Planifier les enregistrements|[Produit]|[Type d'objet]
Pour les diagrammes IBM® Campaign, le chemin d'accès de cette propriété est Platform|Scheduler|Planifier les enregistrements|Campaign|Diagramme
Description
IBM® EMM Scheduler interroge le produit à intervalles réguliers pour obtenir le statut d'exécution des objets planifiés (par exemple, des diagrammes ou des mailings) qui n'ont pas signalé un statut. L'intervalle est spécifié en millisecondes. La valeur par défaut est de dix minutes. Un intervalle d'interrogation plus restreint (une valeur plus petite) peut avoir un impact négatif sur les performances du système. Un intervalle d'interrogation plus large (une valeur plus élevée) réduit la charge du système. Pour IBM® Campaign, définissez un intervalle d'interrogation plus large lorsque vous utilisez un grand nombre de diagrammes Campaign dont l'exécution prend plus de 10 minutes.
Valeur par défaut
600000