Elasticsearch est un puissant moteur de recherche et d'analyse qui alimente les applications à grande échelle telles que la journalisation, les moteurs de recherche, etc.
Lorsque vous travaillez en mode développement, où vous pourriez avoir une petite base de données à des fins de test, vous pouvez rencontrer une instance où vous devez récupérer tous les enregistrements de la base de données.
Dans cet article, vous apprendrez à utiliser la requête de recherche Elasticsearch pour récupérer tous les enregistrements d'un index donné.
Utilisation de la recherche et du caractère générique
Nous pouvons utiliser la requête de recherche Elasticsearch et le paramètre générique pour récupérer tous les enregistrements à partir d'un index donné. La syntaxe est comme indiqué:
http: // localhost: 9200 / [index_name] / _search?size = [nombre_of_records] & q = ": *
Par exemple, supposons que nous ayons un index appelé Disney détenant tous les films de films et émissions de télévision Disney. Si nous souhaitons récupérer les dix premiers enregistrements de l'index à l'aide de la requête de recherche, nous pouvons exécuter la demande comme indiqué ci-dessous:
curl -xpost "http: // localhostl9200 / disney / _search?size = 10 & q = *: * "-h" kbn-xsrf: reportage "
L'exécution de la demande ci-dessus doit renvoyer les documents interrogés. Un exemple de sortie est comme indiqué:
"Taked": 12,
"timed_out": faux,
"_fragments":
"Total": 1,
"réussi": 1,
"sauté": 0,
"Échec": 0
,
"les coups":
"total":
"Valeur": 1450,
"relation": "EQ"
,
"max_score": 1,
"les coups": [
"_index": "Disney",
"_id": "5V_EAMB9KKBW3VLFVRC",
"_score": 1,
"_source":
"durée": "23 min",
"Listed_in": "Animation, famille",
"Cast": "Chris Diamantopoulos, Tony Anselmo, Tress MacNeille, Bill Farmer, Russi Taylor, Corey Burton",
"Date_added": "26 novembre 2021",
"show_id": "s1",
"Directeur": "Alonso Ramirez Ramos, Dave Wasson",
"release_year": 2016,
"Note": "TV-G",
"Description": "Rejoignez Mickey et le gang alors qu'ils esquivaient les salles!",
"Type": "film",
"Titre": "Duck the Halls: A Mickey Mouse Christmas Special"
,
"_index": "Disney",
"_id": "5L_EAMB9KKBW3VLFVRC",
"_score": 1,
"_source":
"durée": "91 min",
"listed_in": "comédie",
"Cast": "Jim Varney, Noelle Parker, Douglas Seale",
"Date_added": "26 novembre 2021",
"show_id": "s2",
"Directeur": "John Cherry",
"libération_year": 1988,
"Note": "PG",
"Description": "Le Père Noël passe son sac magique à un nouveau ST. Nic.",
"Type": "film",
"Titre": "Ernest sauve Noël"
,
"_index": "Disney",
"_id": "51_EAMB9KKBW3VLFVRC",
"_score": 1,
"_source":
"pays": "États-Unis",
"show_id": "s3",
"Directeur": "Karen Disher",
"release_year": 2011,
"Note": "TV-G",
"Description": "Sid the Sloth est sur la liste coquine du Père Noël.",
"Type": "film",
"Titre": "Ice Age: A Mammoth Christmas",
"durée": "23 min",
"Listed_in": "Animation, comédie, famille",
"Cast": "Raymond Albert Romano, John Leguizamo, Denis Leary, Queen Latifah",
"Date_added": "26 novembre 2021"
--------------Sortie tronquée-----------------------------------
Utilisation du type de recherche de scan Elasticsearch
Une autre méthode pour récupérer tous les enregistrements à partir d'un index consiste à utiliser le type de recherche de scan. La syntaxe est comme indiqué:
Get / [index_name] / _search
"mettre en doute":
"match_all":
Il est bon de se rappeler que la recherche de scan est obsolète dans les versions récentes d'Elasticsearch. Il est recommandé d'utiliser la fonction de défilement. Vous pouvez en savoir plus à ce sujet dans le tutoriel de recherche élastique de défilement.
Un exemple est comme indiqué:
curl -xget "http: // localhost: 9200 / disney / _search" -h "kbn-xsrf: reporting" -h "contenu-type: application / json" -d '
"mettre en doute":
"match_all":
'
De même, la demande ci-dessus doit récupérer tous les documents de l'index comme indiqué dans la sortie de l'échantillon ci-dessous:
"Taked": 1,
"timed_out": faux,
"_fragments":
"Total": 1,
"réussi": 1,
"sauté": 0,
"Échec": 0
,
"les coups":
"total":
"Valeur": 1450,
"relation": "EQ"
,
"max_score": 1,
"les coups": [
"_index": "Disney",
"_id": "5V_EAMB9KKBW3VLFVRC",
"_score": 1,
"_source":
"durée": "23 min",
"Listed_in": "Animation, famille",
"Cast": "Chris Diamantopoulos, Tony Anselmo, Tress MacNeille, Bill Farmer, Russi Taylor, Corey Burton",
"Date_added": "26 novembre 2021",
"show_id": "s1",
"Directeur": "Alonso Ramirez Ramos, Dave Wasson",
"release_year": 2016,
"Note": "TV-G",
"Description": "Rejoignez Mickey et le gang alors qu'ils esquivaient les salles!",
"Type": "film",
"Titre": "Duck the Halls: A Mickey Mouse Christmas Special"
,
---------------------Sortie tronquée--------------------
Conclusion
Dans cet article, vous avez découvert deux méthodes principales pour récupérer tous les documents d'un index élastique de recherche donné.