Maison > développement back-end > Golang > le corps du texte

Comment effectuer des mises à jour partielles des enregistrements dans ElasticSearch à l'aide d'olivere/elastic dans Go ?

Linda Hamilton
Libérer: 2024-10-24 12:03:02
original
624 Les gens l'ont consulté

How to Perform Partial Record Updates in ElasticSearch Using olivere/elastic in Go?

Comment mettre à jour un enregistrement dans ElasticSearch à l'aide d'olivere/elastic dans Go ?

Lorsque vous travaillez avec ElasticSearch, la mise à jour des enregistrements est souvent nécessaire. Le package olivere/elastic pour Go offre un ensemble complet de fonctionnalités pour interagir avec ElasticSearch, y compris les mises à jour d'enregistrements.

Mise à jour partielle des enregistrements à l'aide de l'API UPDATE

Les mises à jour partielles des enregistrements permettent pour les modifications apportées à des champs spécifiques dans un document. Olivere/elastic fournit la méthode Update pour faciliter les mises à jour partielles. L'extrait de code suivant montre comment mettre à jour un seul champ (« nom ») à l'aide de l'API UPDATE.

<code class="go">update, err := client.Update().
  Index("test3").
  Type("user").
  Id("2").
  Doc(map[string]interface{}{"name": "Updated Name"}).
  Do()

if err != nil {
  // Handle error
}

fmt.Println("updated id: ", update.Id)</code>
Copier après la connexion

Approche alternative (ne fonctionne pas)

Une alternative L'approche des mises à jour partielles utilise la méthode Script. Cependant, cette approche s’est révélée inefficace. L'exemple suivant illustre l'approche alternative tentée.

<code class="go">update := client.Update().
  Index("test3").
  Type("user").
  Id("2").
  Script(elastic.NewScript("ctx._source.name = name").
    Params(map[string]interface{}{"name": "Updated Name"}).
    Lang("groovy"))

fmt.Println("updated id: ", update.Id)</code>
Copier après la connexion

En employant la méthode Update et Doc pour spécifier le champ mis à jour, vous pouvez mettre à jour efficacement les enregistrements dans ElasticSearch en utilisant olivere/elastic dans Go.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!