Vous pouvez utiliser DVSYS.COLLECT_STATISTICS permet de collecter des statistiques pour tous les objets virtualisés, à l'exception des objets définis dans le stockage d'objets.
call DVSYS.COLLECT_STATISTICS('schema', 'table_name', 'list_of_columns_commonly_used_in_predicates', 1, null, ?);
Cet appel collecte des statistiques de niveau table et de niveau colonne pour les colonnes incluses dans l'argument list_of_columns_commonly_used_in_predicates. Si la table comporte peu de colonnes, vous pouvez collecter des statistiques pour toutes les colonnes de la table en indiquant la valeur null au lieu d'une liste de colonnes. Pour éviter de collecter des statistiques de colonne, indiquez la chaîne vide ('') à la place.
Le type de collecte " remote-catalog n'est pas pris en charge par toutes les sources de données, et certaines sources de données qui prennent en charge le type de collecte " remote-catalog ne prennent pas en charge toutes les statistiques clés utilisées par la Data Virtualization. Dans les deux cas, il peut être nécessaire d'utiliser le type de collecte de statistiques remote-query . L'exemple suivant est similaire à l'exemple précédent, mais utilise plutôt le type de collection remote-query.
call DVSYS.COLLECT_STATISTICS('schema', 'table_name', 'list_of_columns_commonly_used_in_predicates', 2, null, ?);
call DVSYS.COLLECT_STATISTICS('schema', 'table_name', 'list_of_columns_commonly_used_in_predicates', 2, 'TABLESAMPLE=25', ?);
Evitez de planifier plusieurs travaux de collecte de statistiques en même temps.