フィールド使用統計API

この機能は技術プレビュー中であり、将来のリリースで変更または削除される可能性があります。Elasticは問題を修正するために取り組みますが、技術プレビューの機能は公式GA機能のサポートSLAの対象ではありません。

インデックスの各シャードおよびフィールドのフィールド使用情報を返します。フィールド使用統計は、クラスターでクエリが実行されると自動的にキャプチャされます。特定のフィールドにアクセスするシャードレベルの検索リクエストは、そのリクエスト中に複数回アクセスされても、単一の使用としてカウントされます。

Python

  1. resp = client.indices.field_usage_stats(
  2. index="my-index-000001",
  3. )
  4. print(resp)

Ruby

  1. response = client.indices.field_usage_stats(
  2. index: 'my-index-000001'
  3. )
  4. puts response

Js

  1. const response = await client.indices.fieldUsageStats({
  2. index: "my-index-000001",
  3. });
  4. console.log(response);

Console

  1. GET /my-index-000001/_field_usage_stats

Request

GET /<index>/_field_usage_stats

Prerequisites

  • Elasticsearchのセキュリティ機能が有効になっている場合、ターゲットインデックスまたはインデックスエイリアスに対してmanage インデックス権限を持っている必要があります。

Path parameters

  • <index>
  • (オプション、文字列)リクエストを制限するために使用されるインデックス名のカンマ区切りリストまたはワイルドカード式。

Query parameters

  • allow_no_indices
  • (オプション、ブール値)falseの場合、リクエストは、任意のワイルドカード式、インデックスエイリアス、または_all値が欠落または閉じたインデックスのみを対象とする場合にエラーを返します。この動作は、リクエストが他のオープンインデックスを対象としている場合でも適用されます。たとえば、foo*,bar*を対象とするリクエストは、fooで始まるインデックスがあるが、barで始まるインデックスがない場合にエラーを返します。
  • expand_wildcards
  • (オプション、文字列)ワイルドカードパターンが一致できるインデックスのタイプ。リクエストがデータストリームを対象にできる場合、この引数はワイルドカード式が隠れたデータストリームに一致するかどうかを決定します。カンマ区切りの値をサポートします。たとえば、open,hidden。有効な値は:
    • all
    • 任意のデータストリームまたはインデックスに一致し、隠れたものを含みます。
    • open
    • オープンで非隠れたインデックスに一致します。また、非隠れたデータストリームにも一致します。
    • closed
    • クローズされた非隠れたインデックスに一致します。また、非隠れたデータストリームにも一致します。データストリームはクローズできません。
    • hidden
    • 隠れたデータストリームおよび隠れたインデックスに一致します。openclosed、またはその両方と組み合わせる必要があります。
    • none
    • ワイルドカードパターンは受け付けられません。
  • ignore_unavailable
  • (オプション、ブール値)falseの場合、リクエストは欠落または閉じたインデックスを対象とする場合にエラーを返します。デフォルトはfalseです。
  • wait_for_active_shards
  • (オプション、文字列)操作を進める前にアクティブでなければならないシャードコピーの数。allまたはインデックスのシャードの総数(number_of_replicas+1)までの任意の正の整数に設定します。デフォルト:1、プライマリシャード。
    アクティブシャードを参照してください。
  • fields
  • (オプション、文字列)統計に含めるフィールドのカンマ区切りリストまたはワイルドカード式。

Response body

レスポンスボディは、インデックス内のフィールドを支えるデータ構造のシャードごとの使用カウントを報告します。特定のリクエストは、同じフィールドに複数回アクセスしても、各カウントを最大1の値で増加させます。

  • any
  • (整数)フィールドの使用のいかなる種類も示します(例:逆インデックス、保存されたフィールド、ドキュメント値などを介して)、特定の検索リクエストに対して使用は1回のみカウントされます。
  • inverted_index
  • (オブジェクト)逆インデックスは、indexマッピングパラメータによって有効化され、フィールドのindex_optionsを設定することによって構成されます。
    1. - `````terms
    • (整数)逆インデックス内の用語の使用を示し、「このフィールドの逆インデックスは使用されていますか?」という質問に答えます。
    • postings
    • (整数)特定の用語のドキュメントIDを含む投稿リストの使用を示します。
    • proximity
    • (整数)逆インデックス内の位置、オフセット、またはペイロードのいずれかの使用を示し、特定の検索リクエストに対して使用は1回のみカウントされます。
    • positions
    • (整数)逆インデックス内の位置データ(用語の順序)の使用を示します。
    • term_frequencies
    • (整数)スコアを計算するために使用される逆インデックス内の用語頻度の使用を示します。
    • offsets
    • (整数)用語の開始および終了文字オフセットを格納する逆インデックス内のオフセットの使用を示します。
    • payloads
    • (整数)逆インデックス内のペイロードの使用を示します。たとえば、区切られたペイロードトークンフィルターやユーザー定義の分析コンポーネントおよびプラグインを介して。
  • stored_fields
  • (整数)保存されたフィールドの使用を示します。これらはstoreマッピングオプションを介して有効化され、stored_fieldsクエリオプションを指定することによってアクセスされます。_sourceおよび_idフィールドはデフォルトで保存されており、その使用はここでカウントされます。
  • doc_values
  • (整数)主にソートおよび集約に使用されるドキュメント値の使用を示します。これらはdoc_valuesマッピングパラメータを介して有効化されます。
  • points
  • (整数)空間データ型数値日付などを含む、ほとんどの数値フィールドデータ型の基礎となるLucene PointValuesの使用を示します。これらは範囲、カウント、バケット、最小/最大、ヒストグラム、空間などのクエリ/集約で使用されます。
  • norms
  • (整数)スコアリングに使用されるインデックス時のブースト値を含むnormsの使用を示します。
  • term_vectors
  • (整数)検索時にドキュメントの用語を取得できるterm vectorsの使用を示します。使用にはハイライトMore Like This Queryが含まれます。
  • knn_vectors
  • (整数)主にk近傍検索(kNN)に使用されるknn_vectorsフィールドタイプの使用を示します。

Examples

以下のリクエストは、現在利用可能なシャード上のインデックスmy-index-000001のフィールド使用情報を取得します。

Python

  1. resp = client.indices.field_usage_stats(
  2. index="my-index-000001",
  3. )
  4. print(resp)

Ruby

  1. response = client.indices.field_usage_stats(
  2. index: 'my-index-000001'
  3. )
  4. puts response

Js

  1. const response = await client.indices.fieldUsageStats({
  2. index: "my-index-000001",
  3. });
  4. console.log(response);

Console

  1. GET /my-index-000001/_field_usage_stats

APIは以下のレスポンスを返します:

Console-Response

  1. {
  2. "_shards": {
  3. "total": 1,
  4. "successful": 1,
  5. "failed": 0
  6. },
  7. "my-index-000001": {
  8. "shards": [
  9. {
  10. "tracking_id": "MpOl0QlTQ4SYYhEe6KgJoQ",
  11. "tracking_started_at_millis": 1625558985010,
  12. "routing": {
  13. "state": "STARTED",
  14. "primary": true,
  15. "node": "gA6KeeVzQkGURFCUyV-e8Q",
  16. "relocating_node": null
  17. },
  18. "stats" : {
  19. "all_fields": {
  20. "any": "6",
  21. "inverted_index": {
  22. "terms" : 1,
  23. "postings" : 1,
  24. "proximity" : 1,
  25. "positions" : 0,
  26. "term_frequencies" : 1,
  27. "offsets" : 0,
  28. "payloads" : 0
  29. },
  30. "stored_fields" : 2,
  31. "doc_values" : 1,
  32. "points" : 0,
  33. "norms" : 1,
  34. "term_vectors" : 0,
  35. "knn_vectors" : 0
  36. },
  37. "fields": {
  38. "_id": {
  39. "any" : 1,
  40. "inverted_index": {
  41. "terms" : 1,
  42. "postings" : 1,
  43. "proximity" : 1,
  44. "positions" : 0,
  45. "term_frequencies" : 1,
  46. "offsets" : 0,
  47. "payloads" : 0
  48. },
  49. "stored_fields" : 1,
  50. "doc_values" : 0,
  51. "points" : 0,
  52. "norms" : 0,
  53. "term_vectors" : 0,
  54. "knn_vectors" : 0
  55. },
  56. "_source": {...},
  57. "context": {...},
  58. "message.keyword": {...}
  59. }
  60. }
  61. }
  62. ]
  63. }
  64. }
インデックス内のすべてのフィールドの使用カウントの合計を報告します(リストされたシャード上)。
次の使用カウントが報告されるフィールド名(リストされたシャード上)。