Skip To Content

ArcGIS Data Store REST コマンド

ArcGIS Data Store を構成するときは、ポータルのホスティング サーバーとしての役割を果たす GIS Server サイトと関連付けます。 データ ストアのステータスを変更または確認する操作は、ホスティング サーバーの ArcGIS Server Administrator Directory から ArcGIS Server 管理者として実行します (URL の形式は https://gisserver.domain.com:6443/arcgis/admin です)。スタンバイ コンピューターをリレーショナル データ ストアと ArcGIS Server Administrator Directory の GIS Server サイトから削除することもできます。 次の各セクションには、それぞれの操作の概要と ArcGIS API ドキュメントへのリンクが記載されています。

ホスティング サーバーの ArcGIS Server 管理者でない場合は、管理者と連携してここで説明した作業を実行する必要があります。

以下に示すのは ArcGIS Server Administrator Directory のパスです。各タイプのデータ ストアに対する操作には、これに従ってアクセスする必要があります。

  • リレーショナル データ ストア - [data] > [items] > [enterpriseDatabases] > [<データ ストア名>] > [machines] > [<コンピューター名>] の順にクリックします。
  • 時空間ビッグ データ ストア - [data] > [items] > [nosqlDatabases] > [AGSDataStore_bigdata_<データ ストア名>] > [machines] > [<コンピューター名>] の順にクリックします。
  • タイル キャッシュ データ ストア - [data] > [items] > [nosqlDatabases] > [AGSDataStore_nosql_<データ ストア名>] > [machines] > [<コンピューター名>] の順にクリックします。
  • オブジェクト ストア - [data] > [items] > [objectStores] > [<データ ストア名>] > [machines] > [<コンピューター名>] の順にクリックします。

データ ストア コンピューターのステータスの変更

データ ストア内の各コンピューターを一度停止してから再起動できます。 また、リレーショナル データ ストアのスタンバイ コンピューターや、プライマリ/スタンバイ タイル キャッシュ データ ストアのスタンバイ側をプライマリに昇格させることもできます。

プライマリ データ ストア コンピューターを停止しても、オンプレミスの配置でデータ ストアのフェイルオーバーは行われません。これは、データ ストアを一時的にオフラインにするなどのメンテナンス タスクを実行する場合は、フェイルオーバーを行う必要がないからです。

たとえば、次のアップグレード シナリオの中でデータ ストア コンピューターのステータスを変更します。

  • スタンバイ コンピューターを停止する。
  • スタンバイ コンピューターをアップグレードする。
  • スタンバイ コンピューターを起動する。
  • makePrimary コマンドを使用して、スタンバイをプライマリに昇格させる。
  • 元のプライマリ コンピューターを停止する。
  • 元のプライマリ コンピューターをアップグレードする。
  • 元のプライマリ コンピューターを起動する。
  • 元のプライマリ コンピューターをスタンバイ コンピューターとしてデータ ストアにもう一度追加する。

ホスティング サーバーの ArcGIS Server Administrator Directory に ArcGIS Server サイト管理者としてサイン インした後、特定のコンピューターにアクセスし、次のいずれかのコマンドを使用して、データ ストア コンピューターのステータスを変更します。

  • 停止
  • start
  • makePrimary (リレーショナル データ ストアのスタンバイ コンピューターまたはプライマリ/スタンバイ モードのタイル キャッシュ データ ストアのみ)

データ ストアの整合チェック

validate ArcGIS Server REST コマンドを使用すると、データ ストア内の各コンピューターのステータスを確認できます。

ArcGIS Server サイト管理者として ArcGIS Server Administrator Directory にサイン インし、確認したい特定のデータ ストア タイプ内のコンピューターのうちの 1 つに移動して、[整合チェック] をクリックし、そのデータ ストアに関連する情報を参照します。 データ ストアのステータスに関連する重要な情報として、次のようなものがあります。

  • overallhealth - 値は Healthy または Unhealthy です。 データ ストア内のコンピューターのうちの半分を超えるコンピューターがアクセス不能である場合、そのデータ ストアは Unhealthy と見なされます ("datastore.overallhealth": "Unhealthy")。 コンピューターがアクセス不能である場合、そのコンピューターは Unhealthy と見なされます ("machine.overallhealth": "Unhealthy")。
  • status - リレーショナル データ ストアまたはタイル キャッシュ データ ストアの場合、値は Started または Stopped です。 停止している間、ホスト フィーチャ レイヤーやホスト シーン レイヤーを、ポータルに公開することはできません。
  • clusterStatus - 時空間ビッグ データ ストアの場合、ステータスは次のいずれかです。
    • green — データはすべて揃っています。
    • yellow — データは揃っていますが、レプリカ コピーの一部または全部が存在しないため、時空間ビッグ データ ストアは高可用性構成になっていません。 単一コンピューターで時空間ビッグ データ ストアを構成した場合は、常にこの状態になります。 データのバランス調整中や、時空間ビッグ データ ストアを構成するコンピューターの一部にアクセスできない場合にも、この状態になることがあります。 複数コンピューターによる時空間ビッグ データ ストアでこの状態になった場合は、コンピューターがすべて動作しているかどうか確認してください。 すべて動作している場合は、数時間待ってもう一度確認します。 それでも status が yellow のままであれば、ArcGIS Server ログにエラー情報が現れていないか調べてください。
    • red — データの一部または全部にアクセスできません。 ログを調べて対処してください。
  • diskSpacePercentUsed - 各オブジェクト ストア コンピューターの各ディスクで使用されているディスク容量の割合を示しています。 オブジェクト ストア コンピューターのディスク容量が不足する危険性がある場合は、キャッシュ保持ポリシーを変更するか、最も容量を使用しているレイヤーのキャッシュを直ちに削除することをお勧めします。 ホスト フィーチャ レイヤー内のレイヤーのキャッシュ サイズを表示するには、listobjectstorage ユーティリティを使用します。
  • role — リレーショナル データ ストアまたはプライマリ/スタンバイ タイル キャッシュ データ ストアのコンピューターのみが対象で、primary (プライマリ) か standby (スタンバイ) かを表します。
  • messages - データ ストアのステータスに関連する警告メッセージおよびエラー メッセージがここに表示されます。 たとえば、複数コンピューターのタイル キャッシュ データ ストアを整合チェックする場合、シーンのキャッシュ データが現在高可用性でなければ (言い換えると、1 つ以上のシーンのキャッシュの 1 つのコピーのみが存在する場合)、メッセージを受信します。

データ ストアの整合チェックは、コンピューターが起動しているか停止しているかの確認、makePrimary コマンドを使用した後でスタンバイがプライマリになっているかどうかの確認、タイル キャッシュ データ ストアが高可用性の状態にあるかどうかの識別のために実行できる他、ホスト フィーチャまたはシーン レイヤーを公開できない場合やこれらにアクセスできない場合、GeoAnalytics Tools を実行できない場合に、最初のトラブルシューティング手順としても実行できます。

スタンバイ コンピューターの削除

remove ArcGIS Server REST コマンドを使用すると、リレーショナル データ ストアまたはプライマリ/スタンバイ タイル キャッシュ データ ストアからスタンバイ コンピューターを削除できます。 たとえば、別のコンピューターをスタンバイ コンピューターとして使用する場合は、元のスタンバイ コンピューターをデータ ストアから削除した後、ArcGIS Data Store を新しいコンピューターにインストールし、新しいコンピューターをスタンバイとして構成します。

ホスティング サーバーの ArcGIS Server Administrator Directory に ArcGIS Server サイト管理者としてサイン インして、remove コマンドを使用します。

ホスト フィーチャ レイヤーのクエリ応答キャッシュの管理

頻繁にクエリされるホスト フィーチャ レイヤーの場合、ホスティング サーバーの ArcGIS Server 管理者は、パフォーマンスを向上させるために、個々のレイヤーのクエリ応答キャッシュを有効化することができます。 有効にすると、クライアントがフィーチャ サービスに一意のクエリを送信するたびに、フィーチャと範囲がオブジェクト ストアにキャッシュされます。 キャッシュの格納期間 (キャッシュの有効期限ポリシー) や、オブジェクト ストアが実行されているコンピューターでの空きディスク容量によっては、オブジェクト ストアが一杯になって機能しなくなることがあります。

ArcGIS Data Store 管理者として、コンピューター上のオブジェクト ストアを他のソフトウェアとは分離して構成し、これらのキャッシュを格納するのに十分なディスク容量が存在することを確認する必要があります。 また、ArcGIS Data Store ログを監視して、オブジェクト ストアの容量に近づいたことを検知する必要があります。 オブジェクト ストアを整合チェックして、オブジェクト ストア コンピューターで使用されているディスク容量の割合を確認したり、ユーティリティを実行してキャッシュが最大になっているレイヤーを判断したりすることができます。 必要に応じて、ArcGIS Server 管理者と連携してキャッシュの有効期限ポリシーを変更したり、大規模なレイヤー キャッシュを削除したりしてください。

フィーチャ レイヤーのクエリ応答キャッシュの有効化

ホスト フィーチャ レイヤー (フィーチャ サービス) 内のレイヤーでキャッシュを有効化するには、ホスティング サーバー サイトの ArcGIS Server 管理者がホスティング サーバーの ArcGIS Server Administrator Directory にサイン インして、以下のリクエストを送信する必要があります。

{
    "layerCache": {
        "enabled": true
    }
}

データが頻繁に更新される場合は、キャッシュを有効にしないでください。レイヤーが更新されるたびにキャッシュを再構築する必要があるため、頻繁に編集されるフィーチャ レイヤーでキャッシュされたクエリを使用してもパフォーマンスは向上しません。

キャッシュの有効期限ポリシーの設定または変更

キャッシュは一意のクエリごとに作成されます。 オブジェクト ストア コンピューターに十分なディスク容量があり、そのレイヤーが多くのクライアントからアクセスされている場合は、キャッシュの有効期限が切れないように設定します。 前のセクションで示したリクエストの例では、有効期限なしでキャッシュを有効化します。

継続的にアクセスされていないレイヤーの場合や、ディスク容量が心配な場合は、レイヤーのクエリ応答キャッシュの保持日数を設定します。

{
    "layerCache": {
        "enabled": true, 
        "expiration": <duration_in_days>
    }
}

キャッシュの有効期限は UTC 時間の午前零時に切れることに注意してください。 有効期限ポリシーを 1 に設定すると、キャッシュが作成されたタイミングによっては、最大で約 2 日間キャッシュが保持されます。

たとえば、クライアントが 4:00 UTC にフィーチャ レイヤーにアクセスした場合、そのキャッシュは翌日の 24:00 UTC まで保持されます。

レイヤーのキャッシュの削除

オブジェクト ストアのディスク容量が不足している場合は、ArcGIS Data Store ログに警告が表示され、validate REST コマンドでディスク容量の使用量を表示できます。 既存のオブジェクト ストアにディスク容量やコンピューターを追加することはできないため、キャッシュを一掃してディスク容量を解放する必要がある場合があります。 これには、ホスティング サーバーの ArcGIS Server 管理者がそのレイヤーのキャッシュを無効にする必要があります。

{
    "layerCache": {
        "enabled": false
    }
}