Tous les produits
Search
Centre de documentation

Elasticsearch:Exemples d'opérations sur les index pour les versions courantes d'ES

Dernière mise à jour :Aug 09, 2026

Cette rubrique explique comment créer un index, insérer des documents, exécuter des recherches et supprimer un index sur Alibaba Cloud Elasticsearch. Tous les exemples s'appuient sur un jeu de données de gestion de patrimoine et présentent la syntaxe spécifique aux versions ES antérieures à 7,0, ainsi qu'aux versions 7.x et 8.x.

Données d'exemple

Les exemples utilisent les six produits de gestion de patrimoine suivants comme documents types. Chargez ces données après avoir créé l'index.

{
    "products": [
        {
            "productName": "Wealth Management Product A",
            "annual_rate": "3.2200%",
            "describe": "A 180-day fixed-term wealth management product. The minimum investment is 20,000. It provides stable returns and lets you choose whether to receive message pushes."
        },
        {
            "productName": "Wealth Management Product B",
            "annual_rate": "3.1100%",
            "describe": "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
        },
        {
            "productName": "Wealth Management Product C",
            "annual_rate": "3.3500%",
            "describe": "A 270-day regular investment product. The minimum investment is 40,000. A message is pushed every day when the earnings are immediately credited to your account."
        },
        {
            "productName": "Wealth Management Product D",
            "annual_rate": "3.1200%",
            "describe": "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
        },
        {
            "productName": "Wealth Management Product E",
            "annual_rate": "3.0100%",
            "describe": "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
        },
        {
            "productName": "Wealth Management Product F",
            "annual_rate": "2.7500%",
            "describe": "A popular 3-day short-term product. No service fee is required. The minimum investment is 500. You can receive earnings messages by text message."
        }
    ]
}

Créer un index

Créez un index nommé product_info avec 5 shards, 1 réplica et des mappings de champs explicites. Les champs productName et describe utilisent l'analyseur ik_smart pour le texte chinois. Le champ annual_rate est stocké en tant que keyword pour permettre des requêtes par correspondance exacte et par plage.

La syntaxe du mapping varie selon les versions, car Elasticsearch 7,0 a supprimé le concept de type de mapping.

Versions 7,0 et ultérieures

PUT /product_info
{
  "settings": {
    "number_of_shards": 5,
    "number_of_replicas": 1
  },
  "mappings": {
      "properties": {
        "productName": {
          "type": "text",
          "analyzer": "ik_smart"
        },
        "annual_rate":{
          "type":"keyword"
        },
        "describe": {
          "type": "text",
          "analyzer": "ik_smart"
        }
    }
  }
}

Versions antérieures à 7,0

PUT /product_info
{
  "settings": {
    "number_of_shards": 5,
    "number_of_replicas": 1
  },
  "mappings": {
    "products": {
      "properties": {
        "productName": {
          "type": "text",
          "analyzer": "ik_smart"
        },
        "annual_rate":{
          "type":"keyword"
        },
        "describe": {
         "type": "text",
         "analyzer": "ik_smart"
        }
      }
    }
  }
}
Important

À partir d'Elasticsearch 7,0, le type de mapping est supprimé du corps mappings. Si vous incluez un nom de type dans la version 7,0 ou une version ultérieure, le cluster renvoie une erreur mapper_parsing_exception. Pour plus d'informations, consultez la documentation Removal of mapping types.

Une requête réussie renvoie :

{
  "acknowledged" : true,
  "shards_acknowledged" : true,
  "index" : "product_info"
}

Insérer des documents

Utilisez l'API Bulk pour insérer les six documents d'exemple en une seule requête. Le chemin de l'endpoint varie selon la version.

Version Endpoint
8.x POST /product_info/_bulk
7.x POST /product_info/_doc/_bulk
Antérieure à 7,0 POST /product_info/products/_bulk
La version 7.10 accepte la syntaxe d'insertion groupée pour les versions ES 7.x et ES 8.x.

Version 8.x

POST /product_info/_bulk
{"index":{}}
{"productName":"Wealth Management Product A","annual_rate":"3.2200%","describe":"A 180-day fixed-term wealth management product. The minimum investment is 20,000. It provides stable returns and lets you choose whether to receive message pushes."}
{"index":{}}
{"productName":"Wealth Management Product B","annual_rate":"3.1100%","describe":"A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product C","annual_rate":"3.3500%","describe":"A 270-day regular investment product. The minimum investment is 40,000. A message is pushed every day when the earnings are immediately credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product D","annual_rate":"3.1200%","describe":"A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product E","annual_rate":"3.0100%","describe":"A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."}
{"index":{}}
{"productName":"Wealth Management Product F","annual_rate":"2.7500%","describe":"A popular 3-day short-term product. No service fee is required. The minimum investment is 500. You can receive earnings messages by text message."}

Version 7.x

POST /product_info/_doc/_bulk
{"index":{}}
{"productName":"Wealth Management Product A","annual_rate":"3.2200%","describe":"A 180-day fixed-term wealth management product. The minimum investment is 20,000. It provides stable returns and lets you choose whether to receive message pushes."}
{"index":{}}
{"productName":"Wealth Management Product B","annual_rate":"3.1100%","describe":"A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product C","annual_rate":"3.3500%","describe":"A 270-day regular investment product. The minimum investment is 40,000. A message is pushed every day when the earnings are immediately credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product D","annual_rate":"3.1200%","describe":"A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product E","annual_rate":"3.0100%","describe":"A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."}
{"index":{}}
{"productName":"Wealth Management Product F","annual_rate":"2.7500%","describe":"A popular 3-day short-term product. No service fee is required. The minimum investment is 500. You can receive earnings messages by text message."}

Versions antérieures à 7,0

POST /product_info/products/_bulk
{"index":{}}
{"productName":"Wealth Management Product A","annual_rate":"3.2200%","describe":"A 180-day fixed-term wealth management product. The minimum investment is 20,000. It provides stable returns and lets you choose whether to receive message pushes."}
{"index":{}}
{"productName":"Wealth Management Product B","annual_rate":"3.1100%","describe":"A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product C","annual_rate":"3.3500%","describe":"A 270-day regular investment product. The minimum investment is 40,000. A message is pushed every day when the earnings are immediately credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product D","annual_rate":"3.1200%","describe":"A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."}
{"index":{}}
{"productName":"Wealth Management Product E","annual_rate":"3.0100%","describe":"A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."}
{"index":{}}
{"productName":"Wealth Management Product F","annual_rate":"2.7500%","describe":"A popular 3-day short-term product. No service fee is required. The minimum investment is 500. You can receive earnings messages by text message."}

Une insertion groupée réussie renvoie une réponse contenant "errors": false.

Rechercher des données

Le chemin de l'endpoint de recherche varie selon la version, suivant le même modèle que les endpoints d'insertion.

Version Endpoint de recherche
8.x GET /product_info/_search
7.x GET /product_info/_doc/_search
Antérieure à 7,0 GET /product_info/products/_search
La version 7.10 accepte la syntaxe de recherche pour les versions ES 7.x et ES 8.x.

Les exemples ci-dessous illustrent deux types de requête : la recherche en texte intégral via une requête match et le filtrage par plage via une requête range.

Une requête match analyse le texte saisi et renvoie les documents dont le champ spécifié contient les termes correspondants, classés par score de pertinence.

Une requête range sur un champ keyword renvoie les documents dont la valeur du champ se situe dans les limites spécifiées. L'exemple suivant trouve les produits dont le taux annuel annual_rate est compris entre 3.0000% et 3.1300%.

Version 8.x

  • Recherche en texte intégral

    GET /product_info/_search
    {
      "query": {
        "match": {
          "describe": "A message is pushed every day when the earnings are credited to your account."
        }
      }
    }

    <details> <summary>Exemple de réponse</summary>

    {
      "took": 15,
      "timed_out": false,
      "_shards": {
        "total": 5,
        "successful": 5,
        "skipped": 0,
        "failed": 0
      },
      "hits": {
        "total": {
          "value": 6,
          "relation": "eq"
        },
        "max_score": 2.41246,
        "hits": [
          {
            "_index": "product_info",
            "_id": "pgAGQZgB5J6iFDPOX2QN",
            "_score": 2.41246,
            "_source": {
              "productName": "Wealth Management Product B",
              "annual_rate": "3.1100%",
              "describe": "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index": "product_info",
            "_id": "pwAGQZgB5J6iFDPOX2QN",
            "_score": 2.343423,
            "_source": {
              "productName": "Wealth Management Product C",
              "annual_rate": "3.3500%",
              "describe": "A 270-day regular investment product. The minimum investment is 40,000. A message is pushed every day when the earnings are immediately credited to your account."
            }
          },
          {
            "_index": "product_info",
            "_id": "qAAGQZgB5J6iFDPOX2QN",
            "_score": 1.7260926,
            "_source": {
              "productName": "Wealth Management Product D",
              "annual_rate": "3.1200%",
              "describe": "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index": "product_info",
            "_id": "qQAGQZgB5J6iFDPOX2QN",
            "_score": 0.9649055,
            "_source": {
              "productName": "Wealth Management Product E",
              "annual_rate": "3.0100%",
              "describe": "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
            }
          },
          {
            "_index": "product_info",
            "_id": "pQAGQZgB5J6iFDPOX2QN",
            "_score": 0.8630463,
            "_source": {
              "productName": "Wealth Management Product A",
              "annual_rate": "3.2200%",
              "describe": "A 180-day fixed-term wealth management product. The minimum investment is 20,000. It provides stable returns and lets you choose whether to receive message pushes."
            }
          },
          {
            "_index": "product_info",
            "_id": "qgAGQZgB5J6iFDPOX2QN",
            "_score": 0.19178316,
            "_source": {
              "productName": "Wealth Management Product F",
              "annual_rate": "2.7500%",
              "describe": "A popular 3-day short-term product. No service fee is required. The minimum investment is 500. You can receive earnings messages by text message."
            }
          }
        ]
      }
    }

    </details>

    Champs clés de la réponse :

    • took — temps d'exécution de la requête en millisecondes.

    • timed_out — true si la requête a dépassé son délai d'attente ; des résultats partiels sont alors renvoyés.

    • _shards — nombre de shards interrogés et nombre de shards ayant abouti.

    • hits.total.value — nombre total de documents correspondants (6 ici, car les termes de la requête apparaissent dans les descriptions des six produits après analyse).

    • max_score — score de pertinence le plus élevé parmi tous les documents correspondants.

    • _score — score de pertinence de chaque document ; plus il est élevé, plus la correspondance est forte.

    • _source — champs originaux du document stockés dans l'index.

  • Recherche par plage

    GET /product_info/_search
    {
      "query": {
        "range": {
          "annual_rate": {
            "gte": "3.0000%",
            "lte": "3.1300%"
          }
        }
      }
    }

    <details> <summary>Exemple de réponse</summary>

    {
      "took": 14,
      "timed_out": false,
      "_shards": {
        "total": 5,
        "successful": 5,
        "skipped": 0,
        "failed": 0
      },
      "hits": {
        "total": {
          "value": 3,
          "relation": "eq"
        },
        "max_score": 1,
        "hits": [
          {
            "_index": "product_info",
            "_id": "qAAGQZgB5J6iFDPOX2QN",
            "_score": 1,
            "_source": {
              "productName": "Wealth Management Product D",
              "annual_rate": "3.1200%",
              "describe": "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index": "product_info",
            "_id": "pgAGQZgB5J6iFDPOX2QN",
            "_score": 1,
            "_source": {
              "productName": "Wealth Management Product B",
              "annual_rate": "3.1100%",
              "describe": "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index": "product_info",
            "_id": "qQAGQZgB5J6iFDPOX2QN",
            "_score": 1,
            "_source": {
              "productName": "Wealth Management Product E",
              "annual_rate": "3.0100%",
              "describe": "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
            }
          }
        ]
      }
    }

    </details>

Pour plus d'informations sur les méthodes de recherche, consultez la documentation Query DSL.

Version 7.x

  • Recherche en texte intégral

    GET /product_info/_doc/_search
    {
      "query": {
        "match": {
          "describe": "A message is pushed every day when the earnings are credited to your account."
        }
      }
    }

    <details> <summary>Exemple de réponse</summary>

    {
      "took" : 19,
      "timed_out" : false,
      "_shards" : {
        "total" : 5,
        "successful" : 5,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : {
          "value" : 3,
          "relation" : "eq"
        },
        "max_score" : 1.0,
        "hits" : [
          {
            "_index" : "product_info",
            "_type" : "_doc",
            "_id" : "gC9RUJgBDC_Ir7OTV2QD",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product D",
              "annual_rate" : "3.1200%",
              "describe" : "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "_doc",
            "_id" : "fi9RUJgBDC_Ir7OTV2QD",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product B",
              "annual_rate" : "3.1100%",
              "describe" : "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "_doc",
            "_id" : "gS9RUJgBDC_Ir7OTV2QD",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product E",
              "annual_rate" : "3.0100%",
              "describe" : "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
            }
          }
        ]
      }
    }

    </details>

  • Recherche par plage

    GET /product_info/_doc/_search
    {
      "query": {
        "range": {
          "annual_rate": {
            "gte": "3.0000%",
            "lte": "3.1300%"
          }
        }
      }
    }

    <details> <summary>Exemple de réponse</summary>

    {
      "took" : 5,
      "timed_out" : false,
      "_shards" : {
        "total" : 5,
        "successful" : 5,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : {
          "value" : 3,
          "relation" : "eq"
        },
        "max_score" : 1.0,
        "hits" : [
          {
            "_index" : "product_info",
            "_type" : "_doc",
            "_id" : "gC9RUJgBDC_Ir7OTV2QD",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product D",
              "annual_rate" : "3.1200%",
              "describe" : "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "_doc",
            "_id" : "fi9RUJgBDC_Ir7OTV2QD",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product B",
              "annual_rate" : "3.1100%",
              "describe" : "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "_doc",
            "_id" : "gS9RUJgBDC_Ir7OTV2QD",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product E",
              "annual_rate" : "3.0100%",
              "describe" : "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
            }
          }
        ]
      }
    }

    </details>

Pour plus d'informations sur les méthodes de recherche, consultez la documentation Query DSL.

Versions antérieures à 7,0

  • Recherche en texte intégral

    GET /product_info/products/_search
    {
      "query": {
        "match": {
          "describe": "A message is pushed every day when the earnings are credited to your account."
        }
      }
    }

    <details> <summary>Exemple de réponse</summary>

    {
      "took" : 21,
      "timed_out" : false,
      "_shards" : {
        "total" : 5,
        "successful" : 5,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : 6,
        "max_score" : 2.6264062,
        "hits" : [
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "J8YIQZgBMhABkprCeWXb",
            "_score" : 2.6264062,
            "_source" : {
              "productName" : "Wealth Management Product B",
              "annual_rate" : "3.1100%",
              "describe" : "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "KcYIQZgBMhABkprCeWXb",
            "_score" : 1.489365,
            "_source" : {
              "productName" : "Wealth Management Product D",
              "annual_rate" : "3.1200%",
              "describe" : "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "KMYIQZgBMhABkprCeWXb",
            "_score" : 1.4445845,
            "_source" : {
              "productName" : "Wealth Management Product C",
              "annual_rate" : "3.3500%",
              "describe" : "A 270-day regular investment product. The minimum investment is 40,000. A message is pushed every day when the earnings are immediately credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "K8YIQZgBMhABkprCeWXb",
            "_score" : 0.5753642,
            "_source" : {
              "productName" : "Wealth Management Product F",
              "annual_rate" : "2.7500%",
              "describe" : "A popular 3-day short-term product. No service fee is required. The minimum investment is 500. You can receive earnings messages by text message."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "JsYIQZgBMhABkprCeWXb",
            "_score" : 0.5469647,
            "_source" : {
              "productName" : "Wealth Management Product A",
              "annual_rate" : "3.2200%",
              "describe" : "A 180-day fixed-term wealth management product. The minimum investment is 20,000. It provides stable returns and lets you choose whether to receive message pushes."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "KsYIQZgBMhABkprCeWXb",
            "_score" : 0.53964466,
            "_source" : {
              "productName" : "Wealth Management Product E",
              "annual_rate" : "3.0100%",
              "describe" : "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
            }
          }
        ]
      }
    }

    </details>

  • Recherche par plage

    GET /product_info/products/_search
    {
      "query": {
        "range": {
          "annual_rate": {
            "gte": "3.0000%",
            "lte": "3.1300%"
          }
        }
      }
    }

    <details> <summary>Exemple de réponse</summary>

    {
      "took" : 15,
      "timed_out" : false,
      "_shards" : {
        "total" : 5,
        "successful" : 5,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : 3,
        "max_score" : 1.0,
        "hits" : [
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "J8YIQZgBMhABkprCeWXb",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product B",
              "annual_rate" : "3.1100%",
              "describe" : "A 90-day regular investment product. The minimum investment is 10,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "KcYIQZgBMhABkprCeWXb",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product D",
              "annual_rate" : "3.1200%",
              "describe" : "A 90-day regular investment product. The minimum investment is 12,000. A message is pushed every day when the earnings are credited to your account."
            }
          },
          {
            "_index" : "product_info",
            "_type" : "products",
            "_id" : "KsYIQZgBMhABkprCeWXb",
            "_score" : 1.0,
            "_source" : {
              "productName" : "Wealth Management Product E",
              "annual_rate" : "3.0100%",
              "describe" : "A recommended 30-day regular investment product. The minimum investment is 8,000. A message about daily earnings is pushed."
            }
          }
        ]
      }
    }

    </details>

    Pour la référence complète du langage Query DSL, consultez la documentation Query DSL.

Pour plus d'informations sur les méthodes de recherche, consultez la documentation Query DSL.

Supprimer l'index

Une fois les exemples terminés, supprimez l'index afin de libérer les ressources.

Avertissement

La suppression d'un index entraîne la suppression définitive de tous les documents et mappings. Cette opération est irréversible.

DELETE /product_info

Une suppression réussie renvoie :

{
  "acknowledged" : true
}