Question

Je fais de la maintenance sur une base de données pour une application qui utilise le cadre de persistance de l'objet Delphi pour Delphi. Cette base de données est en production depuis plusieurs années et plusieurs des tables sont devenues assez importantes. L'un d'eux est le BOLD_CLOCKLOG Ce qui a quelque chose à voir avec la gestion des transactions de Bold.

Je veux couper ce tableau (c'est jusqu'à 1,2 Go, avec des entrées de janvier 2006).

Quelqu'un peut-il confirmer que le système n'a pas besoin de ces anciennes informations?

Était-ce utile?

La solution

BOLD_CLOCKLOG est une table facultative, son but est de stocker la cartographie entre les horodatages entiers et les valeurs de DateTime correspondantes.

Cela vous permet de découvrir DateTime de la dernière modification à n'importe quel objet.

Si vous n'avez pas besoin de cette fonctionnalité, n'hésitez pas à vider la table, cela ne causera aucun problème.

En plus de Bold_clocklog, le bold_xfiles est un autre tableau facultatif qui a tendance à croître en grande partie. Mais contrairement au Bold_clocklog, les Bold_xfiles ne peuvent pas être vidés.

Ces deux tables peuvent être activées / désactivées dans les valeurs de balise du modèle.

Autres conseils

De la documentation Bolds:

Bold_clocklog

Pour pouvoir cartographier les numéros de transaction utilisés dans les colonnes d'horodatage jusqu'au temps physique correspondant (comme 2001-01-01 12:34), le mappeur de persistance stockera un journal avec des horodatage et des heures. Normalement, ce journal est écrit pour chaque opération de base de données, mais si le trafic vers la base de données est très intensif, il est possible de restreindre la fréquence à laquelle ce journal est écrit en définissant la propriété ClocklogGranularité. L'événement sur OgetCurrentTime doit également être mis en œuvre pour s'assurer que tous les clients ont le même temps. L'utilisation de ce tableau peut être contrôlée avec la valeur marquée: Model.Useclocklog

Je crois donc que cela est utilisé pour le versioning BoldObjects, voir Extension de version de l'objet Dans la documentation Bolds. Si votre application n'en a pas besoin, vous pouvez abandonner cela dans la base de données.

Dans notre application audacieuse, nous n'utilisons pas cette fonctionnalité. Pourquoi ne pas tester simplement pour désactiver Bold_clocklog dans le modèle, déposez cette grande table et essayez d'utiliser votre application. Je suis à peu près sûr que si quelque chose ne va pas, il le dit tout de suite.

Je peux également mentionner que nous avons un propre objecthistoy personnalisé. Il s'agit simplement de Big String (comme TStringList.DeliMeTedText) dans une classe objecthistoire qui a le temps, l'utilisateur et une note sur l'action. Cela répond mieux à nos besoins qui audassent l'objecthologie intégrée. L'inconvénient est bien sûr que nous devons ajouter des appels dans le code lors de la connexion à l'historique.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top