Elasticsearch è un potente motore di ricerca e analisi che alimenta applicazioni su larga scala come registrazione, motori di ricerca e ecc.
Quando si lavora in modalità di sviluppo, in cui è possibile avere un piccolo database per scopi di test, è possibile incontrare un'istanza in cui è necessario recuperare tutti i record dal database.
In questo post, imparerai come utilizzare la query di ricerca di Elasticsearch per recuperare tutti i record da un determinato indice.
Usando la ricerca e il carattere jolly
Possiamo usare la query di ricerca di Elasticsearch e il parametro jolly per recuperare tutti i record da un determinato indice. La sintassi è come mostrata:
http: // localhost: 9200/[index_name]/_search?size = [numero_of_records] & q = ":*
Ad esempio, supponiamo che abbiamo un indice chiamato Disney Holding All I Disney Movies e TV Show Records. Se desideriamo recuperare i primi dieci record dall'indice utilizzando la query di ricerca, possiamo eseguire la richiesta come mostrato di seguito:
Curl -Xpost "http: // localhostl9200/Disney/_search?Size = 10 & Q =*:*"-H" kbn -xsrf: reporting "
L'esecuzione della richiesta sopra dovrebbe restituire i documenti interrogati. Un output di esempio è come mostrato:
"preso": 12,
"timed_out": false,
"_Shards":
"totale": 1,
"successo": 1,
"saltato": 0,
"fallito": 0
,
"colpi":
"totale":
"Valore": 1450,
"Relazione": "EQ"
,
"max_score": 1,
"colpi": [
"_index": "Disney",
"_id": "5V_EAYMB9KKBW3vlfvrc",
"_score": 1,
"_fonte":
"Durata": "23 min",
"List_in": "Animazione, famiglia",
"Cast": "Chris Diamantoulos, Tony Anselmo, Tress MacNeille, Bill Farmer, Russi Taylor, Corey Burton",
"Date_added": "26 novembre 2021",
"show_id": "S1",
"Direttore": "Alonso Ramirez Ramos, Dave Wasson",
"Release_year": 2016,
"Valutazione": "TV-G",
"Descrizione": "Unisciti a Mickey e alla banda mentre si abbassano le sale!",
"tipo": "film",
"Titolo": "Duck the Halls: A Topolino Speciale di Natale"
,
"_index": "Disney",
"_id": "5l_eaymb9kkbw3vlfvrc",
"_score": 1,
"_fonte":
"Durata": "91 min",
"List_in": "Commedia",
"Cast": "Jim Varney, Noelle Parker, Douglas Seale",
"Date_added": "26 novembre 2021",
"show_id": "S2",
"Direttore": "John Cherry",
"Release_year": 1988,
"Valutazione": "PG",
"Descrizione": "Babbo Natale passa la sua borsa magica a una nuova ST. Nic.",
"tipo": "film",
"Titolo": "Ernest salva il Natale"
,
"_index": "Disney",
"_id": "51_EAYMB9KKBW3VLFVRC",
"_score": 1,
"_fonte":
"Paese": "Stati Uniti",
"show_id": "S3",
"Direttore": "Karen Disher",
"Release_year": 2011,
"Valutazione": "TV-G",
"Descrizione": "Sid the Sloth è nella lista dei cattivi di Babbo Natale.",
"tipo": "film",
"Titolo": "Age glaciale: A Mammoth Christmas",
"Durata": "23 min",
"List_in": "Animazione, commedia, famiglia",
"Cast": "Raymond Albert Romano, John Leguizamo, Denis Leary, Queen Latifah",
"Date_added": "26 novembre 2021"
--------------Output troncato-----------------------------------
Utilizzo del tipo di ricerca di scansione di ElaSticSearch
Un altro metodo per recuperare tutti i record da un indice è l'utilizzo del tipo di ricerca di scansione. La sintassi è come mostrata:
Get /[index_name] /_search
"query":
"Match_all":
È bene ricordare che la ricerca di scansione è deprecata nelle versioni recenti di Elasticsearch. Si consiglia di utilizzare la funzione Scroll. Puoi saperne di più al riguardo nel tutorial di ricerca elastica Scroll.
Un esempio è come mostrato:
Curl -xget "http: // localhost: 9200/Disney/_search" -H "kbn -xsrf: reporting" -h "contenuti -type: applicazione/json" -d '
"query":
"Match_all":
'
Allo stesso modo, la richiesta sopra dovrebbe recuperare tutti i documenti nell'indice come mostrato nell'output del campione di seguito:
"preso": 1,
"timed_out": false,
"_Shards":
"totale": 1,
"successo": 1,
"saltato": 0,
"fallito": 0
,
"colpi":
"totale":
"Valore": 1450,
"Relazione": "EQ"
,
"max_score": 1,
"colpi": [
"_index": "Disney",
"_id": "5V_EAYMB9KKBW3vlfvrc",
"_score": 1,
"_fonte":
"Durata": "23 min",
"List_in": "Animazione, famiglia",
"Cast": "Chris Diamantoulos, Tony Anselmo, Tress MacNeille, Bill Farmer, Russi Taylor, Corey Burton",
"Date_added": "26 novembre 2021",
"show_id": "S1",
"Direttore": "Alonso Ramirez Ramos, Dave Wasson",
"Release_year": 2016,
"Valutazione": "TV-G",
"Descrizione": "Unisciti a Mickey e alla banda mentre si abbassano le sale!",
"tipo": "film",
"Titolo": "Duck the Halls: A Topolino Speciale di Natale"
,
---------------------Output troncato--------------------
Conclusione
In questo post, hai scoperto due metodi principali per recuperare tutti i documenti da un determinato indice di ElasticSearch.