

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Neptune クエリ実行の分析に SPARQL `explain` を使用する方法
<a name="sparql-explain-using"></a>

SPARQL の `explain` 機能は、Neptune エンジンが使用する実行アプローチを理解するために役立つ Amazon Neptune のセルフサービスツールです。`explain` を呼び出すには、パラメータを `explain={{mode}}` フォームで HTTP あるいは HTTPS リクエストに渡します。

モードの値は `static`、`dynamic`、`details` のいずれかです。
+ *静的*モードでは、`explain` はクエリプランの静的構造のみを表示します。
+ *動的*モードでは、`explain` にはクエリプランの動的な要素も含まれます。以上には、演算子を介して通過する中間バインドの数、送信バインドに対する着信バインドの割合、演算子の所要合計時間が含まれる場合があります。
+ *詳細*モードの場合、`explain` は `dynamic` モードで表示される情報に加えて、実際の SPARQL クエリ文字列や、結合演算子が基づくパターンの推定範囲数などの詳細を出力します。

Neptune は `explain` を使用して [W3C SPARQL 1.1 プロトコル](https://www.w3.org/TR/sparql11-protocol/#query-operation)仕様に挙げられている 3 つの SPARQL クエリアクセスプロトコルはすべてサポートしています。すなわち次です。

1. HTTP GET

1. URL エンコードパラメータを使用した HTTP POST

1. テキストパラメータを使用した HTTP POST

SPARQL クエリエンジンの詳細については、「[Neptune における SPARQL クエリエンジンの仕組み](sparql-explain-engine.md)」を参照してください。

SPARQL `explain` を呼び出すことで生成される出力の種類については、「[Neptune の SPARQL `explain` を呼び出す例](sparql-explain-examples.md)」を参照してください。