Analyser les jeux de données (Gestion des données)

Récapitulatif

Met à jour les statistiques de base de données des tables de base, tables delta et tables d'archive, ainsi que les statistiques sur les index de ces tables. Cet outil est utilisé dans les géodatabases d'entreprise pour aider à optimiser les performances de l'optimiseur de requête du SGBDR. Des statistiques obsolètes peuvent appauvrir les performances de la géodatabase.

Utilisation

Syntaxe

AnalyzeDatasets_management (input_database, include_system, {in_datasets}, {analyze_base}, {analyze_delta}, {analyze_archive})
ParamètreExplicationType de données
input_database

Géodatabase d'entreprise contenant les données à analyser.

Workspace
include_system

Indique si les statistiques seront rassemblées sur les états et tables de généalogies des états.

RemarqueRemarque :

Vous devez être l'administrateur de la géodatabase pour activer cette option.

Cette option s'applique uniquement aux géodatabases. Si l'espace de travail en entrée est une base de données, cette option est ignorée.

  • NO_SYSTEMAucune statistique n'est collectée concernant les états et tables de généalogies des états. Il s'agit de l'option par défaut.
  • SYSTEMDes statistiques seront collectées concernant les états et tables de généalogies des états.
Boolean
in_datasets
[in_datasets,...]
(Facultatif)

Noms des jeux de données qui seront analysés. Un jeu de données individuel ou une liste Python de jeux de données est autorisé€. Les noms des jeux de données utilisent des chemins d'accès relatifs à l'espace de travail en entrée ; les chemins complets ne sont pas acceptés en tant qu'entrée.

Notez que l'utilisateur connecté doit être le propriétaire de données pour les jeux de données fournis.

String
analyze_base
(Facultatif)

Indique si les tables de base de jeux de données sélectionnées seront analysées.

Cette option s'applique uniquement aux géodatabases. Si l'espace de travail en entrée est une base de données, cette option est ignorée.

  • ANALYZE_BASE Des statistiques seront collectées sur les tables de base pour les jeux de données sélectionnés. Il s'agit de l'option par défaut.
  • NO_ANALYZE_BASE Aucune statistique ne sera collectée pour les tables de base pour les jeux de données sélectionnés.
Boolean
analyze_delta
(Facultatif)

Indique si les tables delta de jeux de données sélectionnées seront analysées.

Cette option s'applique uniquement aux géodatabases. Si l'espace de travail en entrée est une base de données, cette option est ignorée.

  • ANALYZE_DELTA Des statistiques seront collectées sur les tables delta pour les jeux de données sélectionnés. Il s'agit de l'option par défaut.
  • NO_ANALYZE_DELTA Aucune statistique ne sera collectée pour les tables delta pour les jeux de données sélectionnés.
Boolean
analyze_archive
(Facultatif)

Indique si les tables d'archives de jeux de données sélectionnées seront analysées.

Cette option s'applique uniquement aux géodatabases. Si l'espace de travail en entrée est une base de données, cette option est ignorée.

  • ANALYZE_ARCHIVE Des statistiques seront collectées sur les tables d'archives pour les jeux de données sélectionnés. Il s'agit de l'option par défaut.
  • NO_ANALYZE_ARCHIVE Aucune statistique ne sera collectée pour les tables d'archives pour les jeux de données sélectionnés.
Boolean

Exemple de code

Exemple 1 d'utilisation de l'outil Analyze Datasets (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil Analyze Datasets en mode immédiat.

# Import system modules
import arcpy

arcpy.AnalyzeDatasets_management("Database Connections/tenone@sde.sde",
                                 "SYSTEM",
                                 "gdb.city;gdb.state;map.lines",
                                 "ANALYZE_BASE",
                                 "ANALYZE_DELTA",
                                 "ANALYZE_ARCHIVE")
Exemple 2 d'utilisation de l'outil Analyze Datasets (script autonome)

Le script autonome suivant montre comment utiliser l'outil Analyze Datasets pour analyser tous les jeux de données pour une connexion utilisateur donné.

# Name: AnalyzeDatasets.py
# Description: analyzes all datasets in an enterprise geodatabase
#              for a given user.

# Import system modules
import arcpy, os

# set workspace
# the user in this workspace must be the owner of the data to analyze.
workspace = arcpy.GetParameterAsText(0)

# set the workspace environment
arcpy.env.workspace = workspace

# NOTE: Analyze Datasets can accept a Python list of datasets.

# Get a list of all the datasets the user has access to.
# First, get all the stand alone tables, feature classes and rasters.
dataList = arcpy.ListTables() + arcpy.ListFeatureClasses() + arcpy.ListRasters()

# Next, for feature datasets get all of the datasets and featureclasses
# from the list and add them to the master list.
for dataset in arcpy.ListDatasets("", "Feature"):
    arcpy.env.workspace = os.path.join(workspace,dataset)
    dataList += arcpy.ListFeatureClasses() + arcpy.ListDatasets()

# reset the workspace
arcpy.env.workspace = workspace

# Get the user name for the workspace
userName = arcpy.Describe(workspace).connectionProperties.user.lower()

# remove any datasets that are not owned by the connected user.
userDataList = [ds for ds in dataList if ds.lower().find(".%s." % userName) > -1]

# Execute analyze datasets
# Note: to use the "SYSTEM" option the workspace user must be an administrator.
arcpy.AnalyzeDatasets_management(workspace, "NO_SYSTEM", dataList, "ANALYZE_BASE","ANALYZE_DELTA","ANALYZE_ARCHIVE")
print "Analyze Complete"

Environnements

Thèmes connexes

9/12/2013