1、Testo
Questo campo viene utilizzato per indicizzare il testo integrale, come il corpo di un'email o la descrizione di un prodotto. Questi campi vengono analizzati, cioè un elenco di singoli termini prima di essere convertiti in un indice dall'analizzatore. Il processo di analisi consente a Elasticsearch di cercare singole parole in ogni campo di testo completo. I campi di testo non sono usati per l'ordinamento e raramente per l'aggregazione (anche se il termine importante aggregazione è un'eccezione notevole). Se devi indicizzare contenuti strutturati come indirizzi email, nomi host, codici di stato o etichette, probabilmente dovresti usare campi di parole chiave. Per codici o tag, dovresti anche usare il campo parola chiave.
A volte è utile avere sia versioni integrali che parole chiave: una per le ricerche in testo completo e l'altra per aggregazione e ordinamento. Questo può essere ottenuto tramite il multifielding.
2、Parola chiave
I campi utilizzati per indicizzare dati strutturati, come indirizzi email, nomi host, codici di stato, codici postali o etichette, sono spesso usati per filtrare (trovare tutti i post del blog con uno stato pubblicato), ordinare e aggregare. I campi delle parole chiave possono essere cercati solo tramite valori esatti. Se devi indicizzare contenuti integrali, come email o descrizioni di prodotto, potresti voler usare il campo testo.
3. Tipo di numero
intero、float
4、array
In Elasticsearch, non esiste un tipo di array specifico. Per impostazione predefinita, qualsiasi campo può contenere 0 o più valori, tuttavia, tutti i valori negli array devono avere lo stesso tipo di dato, ad esempio: Array di corde: ["uno", "due"] Array interi: [1,2] Array di array: [1, [2, 3]], equivalente a [1,2,3] Array di oggetti: [ { "nome": "Mary", "età": 12 }, { "nome": "Giovanni", "età": 10 }]
Quando un campo viene aggiunto automaticamente, il primo valore dell'array determina il tipo di campo. Tutti i valori successivi devono utilizzare lo stesso tipo di dato, o almeno essere in grado di convertirli allo stesso tipo Gli array non supportano tipi di dati misti: [10, "alcune stringhe"] Gli array possono contenere valori nulli che possono essere sostituiti dalla null_value configurata o saltati del tutto. Un array vuoto[] è trattato come un campo inesistente - un campo senza valore.
L'uso del tipo di array nella documentazione non richiede alcuna configurazione anticipata, è supportato nativamente.
5、booleano
I campi booleani accettano valori JSON veri e falsi, ma possono anche accettare stringhe e numeri interpretati come veri o falsi
Deprecato nella versione 5.3.0.
Qualsiasi valore non falso, "falso", vero e "vero" è stato deprecato. Non puoi usare questi valori pseudo-booleani ("off", "no", "0", "", 0, 0, 0.0) per cercare domini booleani. Per favore, usa vero o falso invece.
6、appuntamento
Internamente, la data viene convertita in UTC (se il fuso orario è specificato) e memorizzata come un intero lungo che rappresenta i millisecondi dall'epoca. Il formato della data può essere personalizzato, ma se non viene specificato alcun formato, viene utilizzato il formato predefinito:
"strict_date_optional_time|| epoch_millis"
Cioè, accetterà date con timestamp opzionali che corrispondono a strict_date_optional_time o
millisecondi dall'epoca.
Collegamenti di riferimento:https://www.elastic.co/guide/en/ ... ml#strict-date-time
7、binario
Il tipo binario accetta valori binari come stringhe codificate in Base64. Questo campo non viene memorizzato di default e non è ricercabile
|