4D v16.3

Page Compactage

Accueil

 
4D v16.3
Page Compactage

Page Compactage  


 

 

Cette page permet d’accéder aux fonctions de compactage du fichier de données et de structure (cf. section Description des fichiers de 4D).

Le compactage d'un fichier répond à deux types de besoins :

  • Réduction de taille et optimisation des fichiers : les fichiers peuvent comporter des emplacements inutilisés (des “trous”). En effet, lorsque vous supprimez des enregistrements, des formulaires, etc., l’emplacement qu’ils occupaient précédemment dans le fichier devient vacant. 4D réutilise ces emplacements vides lorsque c’est possible, mais la taille des données étant variable, les suppressions ou modifications successives génèrent inévitablement des espaces inutilisables pour le programme. Il en va de même lorsqu’une grande quantité de données vient d’être supprimée : les emplacements vides restent inaffectés dans le fichier.
    Le rapport entre la taille du fichier de données et l’espace réellement utilisé pour les données est le taux d’occupation des données. Un taux trop faible peut entraîner, outre un gaspillage de place, une dégradation des performances de la base. La fonction de compactage permet de réorganiser et d’optimiser le stockage des données afin de faire disparaître les “trous”.
    Les zones “Informations” résument les données relatives à la fragmentation des fichiers et suggèrent les opérations à effectuer. Les onglets de la page “Informations” du CSM indiquent la fragmentation courante des fichiers de la base.
  • Réenregistrement intégral des données en appliquant le formatage courant défini dans le fichier de structure. Ce principe est utile lorsque les données d'une même table ont été stockées dans différents formats, par exemple après un changement dans la structure de la base.

Note : Le compactage n’est disponible qu’en mode maintenance. Si vous tentez d’effectuer cette opération en mode standard, une boîte de dialogue d’alerte vous prévient que la base va être fermée puis relancée en mode maintenance. Il est possible de compacter un fichier de données non ouvert par la base de données (cf. paragraphe Compacter les enregistrements et les index ci-dessous).

La procédure de compactage standard du fichier de données et de structure est identique. 

Pour démarrer directement le compactage du fichier de données ou de structure, cliquez sur le bouton correspondant dans la fenêtre du CSM :

Données :

Structure :

Note : Le compactage entraînant la duplication du fichier d’origine, le bouton est désactivé si la place sur le disque contenant le fichier est insuffisante. 

Cette opération défragmente le fichier principal ainsi que les éventuels fichiers d’index. 4D effectue une copie des fichiers d’origine et les place dans un dossier nommé Replaced Files (Compacting), créé à côté du fichier d’origine. A l’issue de l’opération, les fichiers défragmentés remplacent automatiquement les fichiers d’origine. La base de données est immédiatement opérationnelle sans aucune autre manipulation.

Notes :

  • Vous pouvez modifier le dossier dans lequel les fichiers d’origine sont sauvegardés via le mode avancé.
  • Si vous effectuez plusieurs compactages, un nouveau dossier est créé à chaque fois. Il est nommé “Replaced Files (Compacting)_1”, “Replaced Files (Compacting)_2”, etc.

Attention : Chaque compactage entraîne la duplication du fichier d’origine et donc l’augmentation de la taille du dossier de l’application. Il est important de tenir compte de ce mécanisme (notamment sous OS X où les applications 4D apparaissent sous forme de packages) pour que l’application ne grossisse pas de façon excessive. Une intervention manuelle à l’intérieur du package peut être utile afin de supprimer les copies des fichiers d’origine.

A l’issue du compactage, 4D génère un fichier de compte-rendu dans le dossier Logs de la base. Il est créé au format xml et est nommé "<NomBase>_Compact_Log_<aaaa-mm-jj hh-mm-ss>.xml" où :

  • <NomBase> est le nom du fichier de structure sans extension, par exemple "Factures",
  • <aaaa-mm-jj hh-mm-ss> est l'horodatage du fichier, basé sur la date et l'heure système locales au moment du lancement de l'opération de compactage, par exemple "2016-01-22 15-20-45".

Ce fichier permet de visualiser l’ensemble des opérations effectuées. Lorsque vous cliquez sur le bouton Voir le compte rendu, 4D affiche le le fichier de compte-rendu le plus récent dans le navigateur par défaut de l’ordinateur (cf. paragraphe Voir le compte rendu).

La page Compactage comporte un bouton Avancé>, permettant d’accéder à une page d’options pour le compactage des fichiers de données et de structure :

La zone “Compacter les enregistrements et les index” affiche le chemin d’accès du fichier de données courant ainsi qu’un bouton [...] permettant de désigner un autre fichier de données. Lorsque vous cliquez sur ce bouton, une boîte de dialogue standard d’ouverture de documents s’affiche, vous permettant de désigner le fichier de données à compacter. Vous devez sélectionner un fichier de données compatible avec le fichier de structure ouvert.
Une fois la boîte de dialogue validée, le chemin d’accès du fichier à compacter est indiqué dans la fenêtre. 

Le second bouton [...] permet de désigner un autre emplacement pour les sauvegardes des fichiers originaux effectuées avant compactage. Cette option permet notamment de compacter des fichiers volumineux en utilisant différents disques.

Lorsque cette option est cochée, 4D réécrit chaque enregistrement de chaque table lors de l’opération de compactage, en fonction de sa description en structure. Lorsque l’option n’est pas cochée, 4D réorganise uniquement le stockage des données sur le disque. Cette option est utile dans les cas suivants :

  • lorsque des modifications de types de champs ont été apportées à la structure d’une application après que des données ont été saisies. Par exemple, vous pouvez avoir changé le type d’un champ Entier long en Réel. 4D autorise même des modifications entre des types très différents (avec risques de pertes de données), par exemple un champ Réel peut être changé en Texte et inversement.
    Dans ce cas, 4D ne convertit pas rétroactivement les données déjà saisies, elles ne sont converties que si les enregistrements sont chargés puis sauvegardés. L’option permet de forcer la conversion de toutes les données.
  • lorsqu’une option de stockage externe des données de type Texte, Image ou BLOB a été modifiée après que des données aient été saisies. Ce cas peut notamment se produire après conversion d’une base en version 13 ou suivante car de nouvelles options de stockage sont disponibles (cf. section Stockage externe des données). Comme pour le cas du retypage ci-dessus, 4D ne modifie pas rétroactivement les données déjà saisies. Pour cela, vous pouvez forcer la mise à jour des enregistrements afin d’appliquer le nouveau mode de stockage aux enregistrements déjà saisis.
  • lorsque des champs ou des tables ont été supprimé(e)s. Dans ce cas, le compactage avec mise à jour des enregistrements permet de récupérer la place de ces données supprimées et donc de réduire la taille du fichier.

Note : La sélection de cette option entraîne la mise à jour de tous les index.

(option accessible uniquement lorsque la précédente est cochée)

Cette option provoque la reconstruction complète de la table d’adresses des enregistrements au moment du compactage. Cette opération permet d’optimiser la taille de la table d’adresses. Elle est principalement utile dans les bases de données où de très nombreux enregistrements ont été créés puis supprimés. Dans les autres cas, l’optimisation ne sera pas déterminante.

A noter que cette option ralentit le compactage de façon conséquente et qu’elle rend invalides les ensembles sauvegardés via la commande SAVE SET. Il est d’ailleurs fortement recommandé dans ce cas de supprimer les ensembles sauvegardés car leur utilisation peut conduire à des sélections de données erronées. 

Notes :

  • Le compactage tient compte des enregistrements des tables placées dans la corbeille. La présence d’un grand nombre d’enregistrements dans la corbeille peut constituer un facteur de ralentissement supplémentaire pour l’opération.
  • L'utilisation de cette option rend la table d'adresses, et donc la base de données, incompatibles avec le fichier d'historique courant (s'il en existe un). Il sera automatiquement sauvegardé et un nouveau fichier d'historique devra être créé au prochain lancement de la base.

La zone “Compacter le fichier de structure” affiche le chemin d’accès du fichier de structure de la base ainsi qu’un bouton [...] permettant de désigner un autre emplacement pour les sauvegardes des fichiers originaux effectuées avant compactage.

Lorsque vous cliquez sur l’un des boutons Compacter, l’opération débute immédiatement. A l’issue du compactage, 4D génère un fichier de compte-rendu dans le dossier de la base. Lorsque vous cliquez sur le bouton Voir le compte rendu, 4D affiche le fichier de compte-rendu le plus récent dans le navigateur par défaut de l’ordinateur (cf. paragraphe Voir le compte rendu).

 
PROPRIÉTÉS 

Produit : 4D
Thème : Centre de Sécurité et de Maintenance

 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Mode Développement ( 4D v16)
4D - Mode Développement ( 4D v16.1)
4D - Mode Développement ( 4D v16.3)