Sto riscontrando problemi nell'utilizzo di ElasticSearch per la mia applicazione java. Mi spiego, ho una mappatura, che è qualcosa di simile:ElasticSearch: ordinamento per i valori dei documenti nidificati
{
"products": {
"properties": {
"id": {
"type": "long",
"ignore_malformed": false
},
"locations": {
"properties": {
"category": {
"type": "long",
"ignore_malformed": false
},
"subCategory": {
"type": "long",
"ignore_malformed": false
},
"order": {
"type": "long",
"ignore_malformed": false
}
}
},
...
Quindi, come potete vedere, ho ricevere un elenco di prodotti, che sono composti di posizioni. Nel mio modello, queste posizioni sono il prodotto di tutte le categorie. Significa che un prodotto può essere in 1 o più categorie. In ciascuna di questa categoria, il prodotto ha un ordine, che è l'ordine che il cliente desidera mostrare.
Ad esempio, un prodotto di diamanti può avere un primo posto in Gioielli, ma il terzo posto in Donna (i miei esempi non sono così logici ^^). Quindi, quando clicco su Gioielli, voglio mostrare questi prodotti, ordinati per località field.order in questa specifica categoria.
Per il momento, quando cerco tutti i prodotti in una categoria specifica per la risposta elasticsearch che ricevo è qualcosa di simile:
{"id":5331880,"locations":[{"category":5322606,"order":1},
{"category":5883712,"subCategory":null,"order":3},
{"category":5322605,"subCategory":6032961,"order":2},.......
E 'possibile ordinare questo prodotti, dall'elemento locations.order per la categoria specifica che sto cercando? Ad esempio, se sto interrogando la categoria 5322606, voglio che venga preso l'ordine 1 per questo prodotto.
Grazie mille in anticipo! Cordiali saluti, Olivier.
Ciao DrTech, Grazie mille per la risposta, che è esattamente quello che stavo cercando. Ho modificato la mia mappatura e funziona bene. Tuttavia, non so come fare la richiesta custom_score con l'API java, e non c'è nulla di menzionato a riguardo. Potresti aiutarmi con quello? Grazie ancora! È davvero molto apprezzato. Buon fine settimana. Olivier –
Quindi dovresti accettare la risposta :) – DrTech
Ho aspettato di sapere se hai qualche feedback sull'API java. Ho appena accettato la risposta poiché è ben spiegata e la mia comprensione ora è molto meglio. Hai qualche conoscenza con l'API java? Grazie mille in anticipo. –