Еластицсеарцх Изаберите одређена поља

Elasticsearch Izaberite Odredena Pola



Еластицсеарцх ће подразумевано вратити сва поља у документу након обављања упита за претрагу. Ово је дефинисано параметром _соурце, који садржи све податке ускладиштене у запису током индексирања.

цурл -КСГЕТ '5Б5БФ24150ЕАДББ0009329099Ф78Е031ЕББ7А0Ф0' -Х 'кбн-ксрф: извештавање'

Излаз:







Међутим, можда нећете желети да преузмете сва поља из датог документа. У овом водичу ћете научити како да изаберете одређена поља из документа.



Опција Еластицсеарцх Фиелдс

Параметар поља нам омогућава да преузмемо одређена поља у захтеву за претрагу. Поред тога, параметар поља ће нам омогућити да преузмемо једно или више поља. Такође можете форматирати датуме и типове просторних података помоћу параметра поља.



На пример, претпоставимо да желимо да преузмемо индекс, ИД, наслов, релеасе_иеар, наведена у пољима, трајање и оцену из Нетфлик индекса, можемо да покренемо упит као што је приказано у наставку:





цурл -КСГЕТ 'ЦЦБ520ЦЦФФ5ДА3А447ББ0733949А10Д51Ц4683Д5' -Х 'кбн-ксрф: извештавање' -Х 'Тип садржаја: апликација/јсон' -д'
{
'упит': {
'утакмица': {
'_ид': 'ХКСИз_ИИБЛбуЦ0з3кКеН2'
}
},
'поља': [
'индекс',
'ид',
'титула',
'година издања',
'наведено_у',
'трајање',
'оцена'
],
'_соурце': нетачно

}'

У захтеву изнад, користимо АПИ за претрагу да бисмо претражили документ са наведеним ИД-ом у параметру подударања.

Затим користимо параметар поља да преузмемо одређена поља из циљног документа.



Имајте на уму да ће Еластицсеарцх подразумевано укључити параметар _соурце, који се састоји од свих поља документа. Да бисмо били сигурни да преузимамо само наведена поља, искључујемо параметар _соурце:

Горенаведени захтев треба да врати одговор као што је приказано:

{
'узео': 1,
'тимед_оут': нетачно,
'_схардс': {
'укупно': 1,
'успешно': 1,
'прескочено': 0,
„неуспешно“: 0
},
'хитови': {
'укупно': {
'вредност': 1,
'релација': 'ек'
},
'мак_сцоре': 1,
'хитови': [
{
'_индек': 'нетфлик',
'_ид': 'ХКСИз_ИИБЛбуЦ0з3кКеН2',
'_сцоре': 1,
'поља': {
'листед_ин': [
'Документарни филмови'
],
'трајање': [
'90 мин'
],
'година издања': [
2020
],
'оцена': [
'ПГ-13'
],
'наслов': [
'Дик Џонсон је мртав'
]
}
}
]
}
}

Такође можете користити параметар _соурце да дефинишете која поља ће се вратити из упита за претрагу. Пример је приказан испод:

цурл -КСГЕТ 'Б6Ц4А871ЕЕ172АБ0Ц5Б1ЦА2Ц5ДЦ568Д8327А03Ц7' -Х 'кбн-ксрф: извештавање' -Х 'Тип садржаја: апликација/јсон' -д'
{
'_соурце': ['титле', 'релеасе_иеар', 'ратинг', 'дуратион'],
'упит': {
'терм': {
'_ид': {
'вредност': 'ХКСИз_ИИБЛбуЦ0з3кКеН2'
}
}
}

}'

У овом случају наводимо поља која желимо да преузмемо као низ у изворном параметру. Горњи захтев би требало да врати одговор као што је приказано:

{
'узео': 0,
'тимед_оут': нетачно,
'_схардс': {
'укупно': 1,
'успешно': 1,
'прескочено': 0,
„неуспешно“: 0
},
'хитови': {
'укупно': {
'вредност': 1,
'релација': 'ек'
},
'мак_сцоре': 1,
'хитови': [
{
'_индек': 'нетфлик',
'_ид': 'ХКСИз_ИИБЛбуЦ0з3кКеН2',
'_сцоре': 1,
'_извор': {
'трајање': '90 мин',
'година издања': 2020,
'рејтинг': 'ПГ-13',
'титле': 'Дик Џонсон је мртав'
}
}
]
}

}

Закључак

У овом чланку сте научили како да преузмете одређена поља из захтева за претрагу користећи поља и параметре _соурце.

Да бисте сазнали више о Еластицсеарцх-у и његовим могућностима, погледајте наше туторијале на ту тему. Гарантовано ћете пронаћи нешто корисно.

Хвала на читању и видимо се у следећем!!