Rotation de tables
Optimisez les performances et gérez le cycle de vie des données en faisant pivoter les tables, ce qui permet d’archiver systématiquement les données plus anciennes tout en maintenant l’efficacité du système.
La rotation des tables préserve les performances de l’instance et évite les risques associés à l’interrogation de jeux de données croissants. Cette fonctionnalité utilise le champ sys_created_on pour séparer les ensembles de données en plusieurs tables en fonction de la date.
- Fonction
- L’administrateur spécifie le paramètre de temps (durée) du processus et le nombre de tables (rotations) qu’il contient. Une fois que la rotation a écrit la dernière table d’une rotation, la rotation remplace la première table de la rotation. Contactez ServiceNow l’assistance technique avant d’appliquer la rotation de table à une table personnalisée.Exemples :
- La requête
Enregistrements créés entre le 10/12/2015 à 08:49 et le 09/12/2015 au 34/07/2015 où topic=SystemCommandest traduit en requête SQL sur une seule table, car la clause sur sys_created_on cible une seule partition. - La requête
Enregistrements mis à jour entre le 10/12/2015 à 08:49 et le 09/12/2015 au 34/07/2015 où topic=SystemCommand, ou sans plage de dates, doit cibler toutes les partitions et est donc traduite comme une requête d’union sur toutes les partitions.
- La requête
- Avantages
- Permet de supprimer d’anciennes données sans affecter les données actuelles (par exemple, pour supprimer ou tronquer une table).
- Garantit que les tables n’atteignent qu’une taille raisonnable.
- Réduit l’ensemble de données de travail lorsque la date est connue pour la requête.
- Inconvénients
- Les requêtes qui n’utilisent pas la date de rotation de table (par exemple, en utilisant le champ sys_created_on ) forcent une requête union inefficace à interroger des plages temporelles qui couvrent plusieurs tables et peuvent être extrêmement lentes si le nombre de sous-tables est important.
Pour améliorer les performances, il est recommandé que la requête inclue une fenêtre de dates de création.
- Les utilisateurs ne peuvent pas remonter pas à pas vers une table pivotée.
- Les requêtes qui n’utilisent pas la date de rotation de table (par exemple, en utilisant le champ sys_created_on ) forcent une requête union inefficace à interroger des plages temporelles qui couvrent plusieurs tables et peuvent être extrêmement lentes si le nombre de sous-tables est important.
Vous pouvez utiliser la rotation de table pour les tables écrites de manière séquentielle ou pour les tables à insertion seule. Vous ne pouvez pas utiliser la rotation de table pour sys_import tables ou les tables qui étendent la table Tâche [task].