インデックスの再構築(Rebuild Indexes) (データの管理)
サマリ
エンタープライズ ジオデータベースに格納されているデータセットとシステム テーブルのインデックスを更新します。このツールは、エンタープライズ ジオデータベースで既存の属性インデックスまたは空間インデックスを再構築するために使用します。インデックスが最新でない場合は、ジオデータベースのパフォーマンスが低下する可能性があります。
使用法
- データはエンタープライズ ジオデータベースに存在する必要があります。このツールは、ファイル ジオデータベースまたはパーソナル ジオデータベースでは動作しません。
- データの読み込み、削除、更新、および圧縮操作を行った後は、データベースのインデックスを再構築することが重要です。
- テーブルまたはデータセットを操作しているときに、このツールはベース テーブル、差分テーブル、およびアーカイブ テーブルの属性インデックスと空間インデックスを再構築します。
- ステートおよびステート系統テーブルのインデックスを再構築するかどうかは、[システム テーブルを含める] パラメータで決定します。オプションがオフの場合、これらのテーブルのインデックスは再構築されません。[システム テーブルを含める] パラメータがオフの場合、ツールを実行するには、少なくとも 1 つのデータセットで [インデックスを再構築するデータセット] パラメータを選択する必要があります。
- [インデックスを再構築するデータセット] パラメータの [値の追加] ボタンは、ModelBuilder でのみ使用されます。ModelBuilder では、先のツールが実行されていないか、出力データが存在しないために、[インデックスを再構築するデータセット] パラメータに値が表示されない場合があります。[値の追加] ボタンを使用すると、ダイアログ ボックスを完了してモデルの作成を続行できるように、必要な値が追加されます。
構文
RebuildIndexes_management (input_database, include_system, {in_datasets}, {delta_only})
パラメータ | 説明 | データ タイプ |
input_database |
更新するデータを含むエンタープライズ ジオデータベース。 | Workspace |
include_system |
ステートおよびステート系統テーブルのインデックスを再構築するかどうかを指定します。 注意: 正常に実行するには、ジオデータベース管理者である必要があります。 このオプションの適用対象となるのは、ジオデータベースだけです。入力ワークスペースがデータベースの場合、このオプションは無視されます。
| Boolean |
in_datasets [in_datasets,...] (オプション) | インデックスを再構築するデータセットの名前。データセット名には、入力ワークスペースからの相対パスを使用します。絶対パスは入力として使用できません。 | Dataset |
delta_only (オプション) | 選択したデータセットでインデックスを再構築する方法を指定します。このオプションは [input_datasets] が空の場合は効果がありません。 このオプションの適用対象となるのは、ジオデータベースだけです。入力ワークスペースがデータベースの場合、このオプションは無視されます。
| Boolean |
コードのサンプル
RebuildIndexes(インデックスの再構築)の例 1(Python ウィンドウ)
次の例は、ArcGIS の Python ウィンドウでインデックスを再構築する方法を示しています。
# Import system modules
import arcpy
arcpy.RebuildIndexes_management("c:/Connections/GDB@DC@server.sde", "NO_SYSTEM","db1.GDB.Roads;db1.GDB.Parcels", "ALL")
RebuildIndexes(インデックスの再構築)の例 2(スタンドアロン スクリプト)
次の例は、スタンドアロン スクリプトでインデックスを再構築する方法を示しています。
# Name: RebuildIndexes.py
# Description: rebuilds indexes on delta tables for all datasets in an
# enterprise geodatabase
# Import system modules
import arcpy, os
# set workspace
workspace = arcpy.GetParameterAsText(0)
# set the workspace environment
arcpy.env.workspace = workspace
# NOTE: Rebuild indexes 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 rebuild indexes
# Note: to use the "SYSTEM" option the workspace user must be an administrator.
arcpy.RebuildIndexes_management(workspace, "NO_SYSTEM", userDataList, "ALL")
print 'Rebuild Complete'
環境
このツールはジオプロセシング環境を使用していません
関連トピック
ライセンス情報
ArcGIS for Desktop Basic: ×
ArcGIS for Desktop Standard: ○
ArcGIS for Desktop Advanced: ○
7/28/2014