Qual è la differenza tra corrispondenza e booleano in Elasticsearch?

Qual E La Differenza Tra Corrispondenza E Booleano In Elasticsearch



Elasticsearch è un motore di ricerca che utilizza le librerie Apache Lucene del linguaggio di programmazione Java ed è utilizzato da milioni di persone. Consente all'utente di archiviare i dati nel proprio database di analisi e l'utente può anche creare indici e archiviare i dati al loro interno. L'utente può anche applicare diverse query per ottenere dati dalle tabelle/indici e ottenere informazioni utili attraverso di esse.

Questa guida spiegherà la differenza tra le query Match e Boolean in Elasticsearch.







Qual è la corrispondenza in Elasticsearch?

La query Match in Elasticsearch è molto semplice in quanto contiene una condizione full-text per ottenere dati dal database. La query di corrispondenza prende i dati dall'indice e li trasforma in un array, quindi cerca le parole chiave desiderate da esso, il che rende efficiente il recupero dei dati.



Cos'è il valore booleano in Elasticsearch?

La query booleana in Elasticsearch combina più query in istruzioni booleane e visualizza il documento risultante dal database. La query booleana ha più clausole che sono le seguenti:



    • dovere
    • filtro
    • Dovrebbe
    • non devi

Qual è la differenza tra corrispondenza e booleano in Elasticsearch?

La sezione seguente spiega la differenza tra Match e aggregazione booleana con l'aiuto di esempi. Seguiamo la seguente procedura:





Connettiti a Elasticsearch e Kibana

Per utilizzare le query Match e Boolean in Elasticsearch, apri il terminale dalla directory bin di Elasticsearch e utilizza il seguente comando:



elasticsearch.bat



Successivamente, vai all'interno della directory bin di Kibana dal sistema locale per aprire il terminale e usa il seguente comando:

kibana.bat



Utilizza l'host locale con il numero di porta 9200 sul browser Web per accedere a Elasticsearch:

host locale: 9200



Ancora una volta, usa localhost sul browser web ma con un numero di porta 5601 per accedere all'interfaccia utente di Kibana:

host locale: 5601



Entra nel “ Strumenti di sviluppo ” console dalla pagina Kibana dalla barra di ricerca:


Sintassi della query di corrispondenza

Di seguito è riportata la sintassi di base della query Match con una richiesta GET per recuperare i dati:

OTTENERE / _ricerca
{
'domanda' : {
'incontro' : {
'Messaggio' : {
'domanda' : 'Questa è una prova'
}
}
}
}


Il frammento sopra suggerisce:

    • Il codice inizia con a OTTENERE richiesta utilizzando API di ricerca per recuperare i dati da Banca dati e l'utente può aggiungere un file nome indice dopo la parola chiave GET.
    • IL domanda la parola chiave contiene il incontro clausola che ottiene il Messaggio dall'indice o dal database e poi il file dati è menzionato nel domanda frase alla fine.

Usa la query di corrispondenza

Questa sezione illustra un esempio pratico dell'utilizzo della query Match e visualizza i dati da indice-demo usare un OTTENERE richiesta:

OTTENERE / indice-demo / _ricerca



Utilizzare il codice seguente per eseguire la query Match in Elasticsearch su ' indice-demo ” per applicare la query sul “ watson ' nome:

OTTENERE / indice-demo / _ricerca
{
'domanda' : {
'incontro' : {
'nome' : {
'domanda' : 'Watson'
}
}
}
}



Sintassi della query booleana

Di seguito è riportata la sintassi di base della query booleana con una richiesta GET per recuperare i dati dal database:

OTTENERE / _ricerca
{
'domanda' : {
'bollo' : {
'clausola' : {
'campo' : 'termine'
}
}
}
}


Il frammento sopra suggerisce:

    • IL OTTENERE richiesta viene utilizzato per recuperare i dati dall'indice utilizzando API di ricerca .
    • IL domanda la parola chiave contiene il bool per la query che contiene il suo clausola per applicare la query sull'indice o sul database e poi il file dati viene recuperato e visualizzato sullo schermo.

Usa la query booleana

La query seguente utilizza la query booleana per ottenere dati dal ' indice-demo ' usando il ' dovere ” e combinando due query di “ Designazione ' con ' Nome ”:

OTTENERE / indice-demo / _ricerca
{
'domanda' : {
'bollo' : {
'dovere' : [
{
'termine' : {
'Designazione' : 'Tuttofare'
}
} ,
{
'termine' : {
'Nome' : 'Anderson'
}
}
]
}
}
}


Questa combinazione creerà un'istruzione booleana per applicare la query sull'indice:


Questo è tutto sulle differenze tra le query Match e Boolean in Elasticsearch.

Conclusione

Match e Boolean sono due query utilizzate in Elasticsearch per ottenere dati dal database di analisi o dall'indice creato dall'utente. La query Match converte i dati in array e recupera i dati dall'array per rendere il processo più efficiente. La query booleana applica più query per creare un'istruzione e applica una query sull'indice per recuperare i dati. Questa guida ha spiegato le differenze tra le query Match e Boolean in Elasticsearch per ottenere dati dal database.