1、text
Acest câmp este folosit pentru a indexa textul integral, cum ar fi corpul unui email sau descrierea unui produs. Aceste câmpuri sunt analizate, adică o listă de termeni individuali înainte de a fi convertite într-un index de către analizator. Procesul de analiză permite Elasticsearch să caute cuvinte individuale în fiecare câmp de text complet. Câmpurile de text nu sunt folosite pentru sortare și sunt rareori folosite pentru agregare (deși termenul important de agregare este o excepție notabilă). Dacă trebuie să indexezi conținut structurat precum adrese de email, nume de gazdă, coduri de status sau etichete, probabil ar trebui să folosești câmpuri de cuvinte-cheie. Pentru coduri sau etichete, ar trebui să folosești și câmpul cuvinte-cheie.
Uneori este util să ai atât versiuni full-text, cât și pentru cuvinte cheie: una pentru căutări full-text și cealaltă pentru agregare și sortare. Acest lucru poate fi realizat prin multifielding.
2、cuvânt cheie
Câmpurile folosite pentru a indexa date structurate, cum ar fi adrese de email, nume de gazdă, coduri de status, coduri poștale sau etichete, sunt adesea folosite pentru filtrare (găsirea tuturor postărilor de blog cu statutul publicat), sortare și agregare. Câmpurile cuvinte-cheie pot fi căutate doar după valori exacte. Dacă trebuie să indexezi conținut integral, cum ar fi emailuri sau descrieri de produse, atunci poate vrei să folosești câmpul text.
3. Tipul de numere
întreg、float
4、array
În Elasticsearch, nu există un tip specific de tablă. În mod implicit, orice câmp poate conține 0 sau mai multe valori, însă toate valorile din tablouri trebuie să aibă același tip de date, de exemplu: Aranjament de corzi: ["unu", "doi"] Tablouri întregi: [1,2] Tabloul de tabloane: [1, [2, 3]], echivalent cu [1,2,3] Aranjament de obiecte: [ { "nume": "Maria", "vârstă": 12 }, { "nume": "Ioan", "vârstă": 10 }]
Când un câmp este adăugat automat, prima valoare a tabloului determină tipul câmpului. Toate valorile ulterioare trebuie să folosească același tip de date sau cel puțin să poată fi convertite la același tip ca acesta Tablourile nu suportă tipuri mixte de date: [10, "some string"] Tablourile pot conține valori nule care pot fi înlocuite cu null_value configurate sau sărite complet. Un tablou vid[] este tratat ca un câmp inexistent - un câmp fără valoare.
Folosirea tipului de array în documentație nu necesită nicio configurare prealabilă, este suportată nativ.
5、boolean
Câmpurile booleene acceptă valori JSON true și false, dar pot accepta și șiruri și numere interpretate ca adevărate sau false
Depreciat în 5.3.0.
Orice valori nefalse, "false", adevărate și "adevărate" au fost depășite. Nu poți folosi aceste valori pseudo-booleene ("off", "no", "0", "", 0, 0, 0.0) pentru a căuta domenii booleene. Te rog să folosești adevărat sau fals în schimb.
6、Date
Intern, data este convertită în UTC (dacă fusul orar este specificat) și stocată ca un număr întreg lung care reprezintă milisecunde de la epocă. Formatul de dată poate fi personalizat, dar dacă nu este specificat niciun format, se folosește formatul implicit:
"strict_date_optional_time|| epoch_millis"
Adică va accepta date cu timestamp-uri opționale care corespund strict_date_optional_time sau
milisecunde de atunci-a-epocă.
Linkuri de referință:https://www.elastic.co/guide/en/ ... ml#strict-date-time
7、binar
Tipul binar acceptă valori binare ca șiruri codificate în Base64. Acest câmp nu este stocat implicit și nu este căutabil
|