Pour diminuer l'espace de stockage nécessaire, vous pouvez compresser les classes et tables d'entités vectorielles d'une géodatabase fichier (appelées jeux de données dans le reste de cette rubrique) dans un format en lecture seule. Une fois les données compressées, l'affichage et les performances des requêtes sont identiques à ceux des données décompressées. Vous pouvez remarquer que la compression améliore légèrement les performances lors de certaines opérations et les ralentit pour d'autres.
Deux types de compression peuvent être appliqués aux données d'une géodatabase fichier : sans perte ou avec perte. Avec la compression sans perte, lorsque vous compressez des données, aucune information n'est perdue, quel que soit le système de coordonnées ou les types de données attributaires de la classe ou table d'entités. En outre, toutes les valeurs à virgule flottante sont préservées. La compression avec perte, option introduite dans ArcGIS for Desktop 10.1, offre jusqu'à 20 % de compression supplémentaire des données de la géodatabase fichier, mais les valeurs à virgule flottante sont modifiées. Ce type de compression est utile lorsque vous avez besoin d'une compression maximale et que vos données ne sont pas trop précises ou que leur précision n'est pas essentielle, par exemple, si vous compressez des données à une échelle de 1:1000000 ou supérieure.
Les jeux de données compressés diffèrent des données non compressées au niveau de la mise à jour : un jeu de données compressé passe en lecture seule et ne peut donc être ni mis à jour ni modifié, sauf au niveau de son nom, de ses index attributaires et de ses métadonnées.
Une fois compressé, un jeu de données affiché dans ArcCatalog et ArcMap présente le même aspect qu'avant sa compression. Vous pouvez également l'utiliser de la même manière, sauf dans le cas d'une mise à jour. Les données sont compressées dans un format accessible directement, ce qui vous évite de les décompresser à chaque utilisation et permet à ArcGIS et ArcReader de les lire directement.
La compression permet de consolider des jeux de données ne nécessitant aucune mise à jour supplémentaire. Cependant, si une mise à jour est requise, un jeu de données compressé peut toujours être décompressé afin de rétablir son format de lecture/écriture d'origine.
Compresser des données
Vous pouvez compresser une géodatabase, un jeu de données d'entité, une classe ou une table d'entités autonome.
Pour compresser une géodatabase fichier, cliquez dessus avec le bouton droit dans l'arborescence du Catalogue, puis cliquez sur Administration > Compresser une géodatabase fichier... et OK.
Pour compresser un jeu de données d'entité, ou une table ou une classe d'entités autonome, cliquez dessus avec le bouton droit dans l'arborescence du Catalogue, puis cliquez sur Gérer > Compresser une géodatabase fichier... et OK.
Lorsque vous compressez une géodatabase, toutes les classes et tables d'entités qu'elle contient sont compressées. Lorsque vous compressez un jeu de données d'entité, toutes ses classes d'entités sont compressées.
Les fonctions de compression et décompression sont également intégrées aux outils de géotraitement du jeu d'outils Géodatabase fichier de la boîte à outils Gestion des données. Pour en savoir plus, consultez la rubrique Vue d'ensemble du jeu d'outils Géodatabase fichier.
Une classe ou table d'entités compressée présente le même aspect qu'avant sa compression, mais vous pouvez savoir si les données sont compressées en consultant la liste des classes et tables d'entités dans l'onglet Contenu d'ArcCatalog. Une table ou classe d'entités compressée comporte la mention "(compressée)" dans la colonne Type.
Vous pouvez également le savoir en ouvrant la boîte de dialogue Propriétés de la classe d'entités ou de la table. L'onglet Général indique si les données sont compressées.
Avantages de la compression
Les données de géodatabase fichier compressées occupent moins d'espace disque que les données décompressées tout en offrant des performances d'affichage et d'interrogation comparables.
Le niveau de compression possible des tables et des classes d'entités peut varier entre un rapport négligeable et un rapport supérieur à 4:1. La composition des coordonnées et le nombre de champs attributaires ainsi que leur contenu déterminent le niveau de compression possible.
Le facteur le plus important pour les classes d'entités est le nombre moyen de sommets par entité. Les points et les lignes simples à deux sommets offrent un niveau de compression supérieur aux lignes ou polygones avec de nombreux sommets. Une classe d'entités de points d'adresses ou de routes comportant peu de sommets, par exemple, offre un taux de compression de 3:1, tandis qu'une classe d'entités de rivières ou de données de sol avec de nombreux sommets par entité peut afficher un taux de seulement 3:2. Les entités incluant de nombreux sommets présentent une capacité de stockage déjà efficace lorsque les données sont décompressées. Par conséquent, le taux de compression est moindre. Les champs attributaires jouent également un rôle dans la définition du taux de compression : les champs de type texte, entier et date offrent un meilleur taux de compression que les champs de type flottant et double.
Les exemples suivants comparent des tailles de fichiers non compressés et compressés. La classe d'entités offrant le meilleur taux de compression par rapport à sa taille originale, Lieux en Europe, représente une classe d'entités points. La classe d'entités offrant le taux de compression le plus faible, Routes du Mexique, représente une classe d'entités lignes avec de nombreux sommets par entité.
Classe d'entités | Taille non compressée | Taille compressée | Taux de compression |
---|---|---|---|
Lieux en Europe (61 541 entités ponctuelles, 14 champs) | 6,2 Mo | 0,67 Mo | 9.3 |
Ilots de recensement aux Etats-Unis (8 205 055 entités ponctuelles, 11 champs) | 705 Mo | 80 Mo | 8.8 |
Routes de Californie (2 092 079 entités linéaires, 29 champs) | 329 Mo | 60 Mo | 5.5 |
Voies ferrées européennes (383 531 entités linéaires, 12 champs) | 58 Mo | 9,7 Mo | 6.0 |
Adresses de Calgary (285 285 entités ponctuelles, 8 champs) | 21 Mo | 6,4 Mo | 3.3 |
Bâtiments de Calgary (319 000 entités surfaciques, 9 champs) | 48 Mo | 20 Mo | 2.4 |
Fleuves et autres cours d'eau des Etats-Unis (2 844 231 entités linéaires, 9 champs) | 878 Mo | 288 Mo | 3.0 |
Comtés des Etats-Unis (3 140 entités surfaciques, 57 champs) | 1,6 Mo | 0,8 Mo | 2.5 |
Cours d'eau européens (232 375 entités surfaciques, 10 champs) | 176 Mo | 70 Mo | 2.5 |
Zones d'analyse du trafic américaines (166 747 entités surfaciques, 10 champs) | 68 Mo | 35 Mo | 1.9 |
Routes du Mexique (5 847 entités linéaires, 7 champs) | 3,5 Mo | 1,6 Mo | 2.2 |
Les tables compressent habituellement à un taux de compression supérieur à 2:1. La redondance est le facteur le plus important ; les champs dont les valeurs varient peu d'un enregistrement à l'autre offrent un taux de compression supérieur à ceux comportant de nombreuses valeurs uniques. Comme pour les classes d'entités, les champs de type texte, entier et date offrent un meilleur rapport de compression que les champs de type flottant et double.
Vous pouvez compresser des données de toute taille, mais la compression est optimale lorsqu'elle s'applique à de grands volumes de données. La compression de grands jeux de données ou de jeux de données de taille moyenne ou petite permet de réaliser d'importantes économies en termes de stockage, ce qui peut être utile si vous manquez d'espace disque ou tentez de stocker des données sur un CD ou un DVD. Par exemple, une géodatabase fichier de 8,9 Go contenant des données de recensement aux Etats-Unis peut être compressée à une taille de 3,4 Go (suffisante pour tenir sur un DVD).
Lorsque vous cherchez à réduire le volume de données à stocker, gardez à l'esprit que la compression d'une géodatabase fichier n'est pas la seule option à votre disposition. Si vos données sont stockées à une résolution x,y plus petite que nécessaire, vous pouvez réduire vos besoins de stockage en rechargeant les données à une résolution supérieure avant la compression. Par exemple, si vous utilisez un jeu de données stocké à la résolution par défaut de 1/10 de millimètre et que vos données ne sont précises qu'à 1 mètre, vous pouvez les recharger à une résolution de 1 mètre. Par exemple, le rechargement de la classe d'entités Buildings de Calgary d'une résolution de 1/10 de millimètre à une résolution de 1 mètre permet de réduire le volume de stockage de 48 à 31 Mo. La compression de la classe d'entités de 31 Mo permet de réduire encore la taille des données à 12 Mo.
Classe d'entités | Taille non compressée | Taille compressée |
---|---|---|
Bâtiments de Calgary, résolution de 0,0001 mètre | 48 Mo | 20 Mo |
Bâtiments de Calgary, résolution de 1 mètre | 31 Mo | 12 Mo |
Pour recharger une classe d'entités à une résolution différente, exportez les données vers une nouvelle classe d'entités. Cliquez avec le bouton droit sur la classe d'entités dans l'arborescence du Catalogue, puis sélectionnez Exporter > Vers une géodatabase. (Sélectionnez la commande Multiple pour exporter simultanément plusieurs classes d'entités.) Spécifiez la nouvelle résolution dans la boîte de dialogue Environnements avant d'exporter les données. Pour en savoir plus, consultez les rubriques Résolution XY, Résolution Z et Classe d'entités vers classe d'entités.
Ce que vous pouvez compresser
Vous pouvez compresser une géodatabase, un jeu de données d'entité, une classe ou une table d'entités autonome. Lorsque vous compressez une géodatabase, toutes les classes et tables d'entités qu'elle contient sont compressées. Lorsque vous compressez un jeu de données d'entité, toutes ses classes d'entités sont compressées. Tout élément qui ne peut pas être compressé est ignoré. La liste suivante indique les éléments de l'arborescence du Catalogue qui peuvent être compressés ou non.
Données de géodatabase fichier | Compression possible |
---|---|
Géodatabase | Oui (Toutes les classes ou tables d'entités vectorielles de la géodatabase peuvent être compressées.) |
jeu de données d'entité | Oui (Toutes les classes d'entités vectorielles du jeu de données d'entité peuvent être compressées.) |
Classe d'entités (autonome uniquement) | Oui |
Table | Oui |
Jeu de données raster | Non |
Catalogue d'images | Non |
MNT | Non |
Schéma | Non |
Atelier cadastral | Non |
Jeu de données d'arpentage | Non |
Vous ne pouvez pas compresser ni décompresser isolément une classe d'entités d'un jeu de données d'entité. Pour cela, vous devez compresser ou décompresser toutes les classes d'entités du jeu de données d'entité.
La compression des jeux de données raster et des catalogues d'images est prise en charge de façon limitée par les outils de géotraitement de géodatabases fichier. Vous pouvez en effet compresser séparément chaque jeu de données, mais cette procédure est déconseillée, car elle ne permet pas de réduire les besoins de stockage. Elle est uniquement proposée pour permettre à ArcGIS Publisher d'accéder aux outils avec des jeux de données raster et des catalogues d'images de géodatabases fichier compressés et verrouillés.
Restrictions d'utilisation des données compressées
Outre l'impossibilité de mettre à jour une classe ou une table d'entités compressée, il existe quelques restrictions mineures expliquées ici.
Une fois la classe ou la table d'entités compressée, les propriétés suivantes ne peuvent pas être modifiées :
- Informations sur le système de coordonnées
- Sous-types, domaines attributaires et valeurs par défaut
- Champs et leurs propriétés
- Représentations
Les seules propriétés pouvant être modifiées sont les alias de la table ou classe d'entités et les index attributaires.
Les jeux de données d'entité compressés vous permettent d'ajouter des classes d'entités non compressées à l'aide d'opérations telles que la création d'une classe d'entités vide, le copier-coller d'une classe et l'importation d'une classe. Le résultat est un jeu de données d'entité qui combine des classes d'entités compressées et d'autres non compressées. Si un jeu de données d'entité contient à la fois des classes d'entités compressées et décompressées, vous ne pourrez pas mettre à jour les classes d'entités décompressées. Pour pouvoir mettre à jour une classe d'entités d'un jeu de données d'entité, il faut qu'aucune classe d'entités du jeu ne soit compressée.
Vous pouvez compresser des classes d'entités contenues dans des classes de relations, des topologies, des réseaux géométriques, des jeux de données réseau et des MNT. Cependant, ces éléments présentent certaines restrictions :
- Vous ne pouvez pas créer une topologie ou un réseau géométrique à partir de classes d'entités compressées.
- Si vous compressez un seul côté d'une classe de relations, vous ne pourrez pas ensuite mettre à jour l'autre côté. La mise à jour du côté décompressé peut en effet nécessiter une mise à jour automatique du côté compressé qui est en lecture seule.
- Vous ne pouvez pas modifier les propriétés d'une topologie si ses classes d'entités sont compressées.
Classe de relations | Topologie | Réseau géométrique | Jeu de données réseau | MNT | |
---|---|---|---|---|---|
Compression possible des classes d'entités contenues dans cet élément | Oui | Oui | Oui | Oui | Oui |
Création possible à partir de classes d'entités compressées | Oui | Non | Non | Oui | Oui |
Mise à jour possible des propriétés | Oui | Non | Oui | Oui | Oui |