Еластиц Сеарцх

Еластицсеарцх Реиндек промени тип поља

Еластицсеарцх Реиндек промени тип поља

Рад са базама података је врло забаван, али понекад може бити изазов, посебно када се ради о већ постојећим подацима.

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

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

Овај водич ће вам показати како да промените тип поља у одређеном индексу у други, користећи чворове Еластицсеарцх Ингест. Коришћење овог приступа елиминисаће застоје који утичу на услуге, а истовремено успева да изврши задатке промене типа поља.

Увод у унос чворова

Улазни чвор Еластицсеарцх вам омогућава да претходно обрадите документе пре њиховог индексирања.

Чвор Еластицсеарцх је специфична инстанца Еластицсеарцх; повезани чворови (више њих) чине један кластер.

Уз захтев можете прегледати чворове доступне у покренутом кластеру:

ГЕТ / _нодес /

Наредба цУРЛ за ово је:

цурл -КСГЕТ “хттп: // лоцалхост: 9200 / _нодес /”

Извршење ове наредбе требало би да вам пружи огромне информације о чворовима, као што је приказано доле (скраћени излаз):


"_нодес":
„укупно“: 3,
„успешно“: 3,
„није успело“: 0
,
"цлустер_наме": "22е0бее6еф91461д82д9б0ф1б4б13б4а",
"чворови":
"гСлМјТКиТемоОКС-ЕО7Ем4в":
"наме": "инстанце-0000000003",
"транспорт_аддресс": "172.28.86.133: 19925 ",
"домаћин": "172.28.86.133 ",
"ип": "172.28.86.133 ",
"версион": "7.10.2 ",
"буилд_флавор": "подразумевано",
"буилд_типе": "доцкер",
"буилд_хасх": "747е1цц71деф077253878а59143ц1ф785афа92б9",
"тотал_индекинг_буффер": 214748364,
"улоге": [
"подаци",
"дата_цолд",
"дата_цонтент",
"дата_хот",
"дата_варм",
„прогутати“,
"мајстор",
"ремоте_цлустер_цлиент",
"преобразити"
],
"атрибути":
"логиц_аваилабилити_зоне": "зона-0",
"сервер_наме": "инстанце-0000000003.22е0бее6еф91461д82д9б0ф1б4б13б4а ",
"аваилабилити_зоне": "ус-запад-1ц",
"кпацк.инсталирано ":" тачно ",
"инстанце_цонфигуратион": "авс.подаци.хигхио.и3 ",
"преобразити.чвор ":" тачно ",
"регион": "ус-запад-1"
,
"подешавања":
"с3": ​​
"клијент":
"еластиц-интернал-22е0бе":
"ендпоинт": "с3-ус-запад-1.амазонавс.цом "


,
--------------------------------излаз скраћен---------------------

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

Да бисмо обрадили пре_процесс, пре индексирања докумената, морамо да дефинишемо цевовод који наводи низ претпроцесора.

Препроцесори су скупови инструкција омотаних око цевовода и извршавају се једна по једна.

Следи општа синтакса како дефинисати цевовод:


"десцриптион": "Претвори ме",
"процесори": [
"цонверт":
"фиелд": "ид",
"типе": "интегер"
]

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

Направите конвертовани цевовод

Да бисте креирали цевовод који ћемо користити за претварање типа, користите захтев ПУТ са крајњом тачком _ингест АПИ као:

ПУТ _ингест / цевовод / цонверт_пипелине

„Десцриптион“: „претвара поље даиОфВеек у лонг из целог броја“,
„процесори“: [

"цонверт":
"фиелд": "даиОфВеек",
"типе": "лонг"


]

За цурл користите наредбу:

цурл -КСПУТ "хттп: // лоцалхост: 9200 / _ингест / пипелине / цонверт_пипелине" -Х 'Цонтент-Типе: апплицатион / јсон' -д '"десцриптион": "претвара поље даиОфВеек у лонг из целог броја", " процесори ": [" цонверт ": " фиелд ":" даиОфВеек "," типе ":" лонг "] '

Реиндек и Цонверт Тип

Једном када имамо цевовод у ингест чвору, све што треба да урадимо је да позовемо АПИ за индексирање и проследимо цевовод као аргумент у одредишту тела захтева као:

ПОСТ _реиндек

"извор":
"индек": "кибана_сампле_дата_флигхтс"
,
"дест":
"индек": "кибана_сампле_типе_дифф",
"пипелине": "цонверт_пипелине"

За цурЛ:

цурл -КСПОСТ "хттп: // лоцалхост: 9200 / _реиндек" -Х 'Цонтент-Типе: апплицатион / јсон' -д '"соурце": "индек": "кибана_сампле_дата_флигхтс", "дест": "индек ":" кибана_сампле_типе_дифф "," пипелине ":" цонверт_пипелине " '

 Верификујте конверзију

Да бисте проверили да ли се цевовод правилно применио, користите ГЕТ захтев да бисте преузели то одређено поље као:

ГЕТ / кибана_сампле_дата_флигхтс / _маппинг / фиелд / даиОфВеек
ГЕТ / кибана_сампле_типе_дифф / _маппинг / фиелд / даиОфВеек

Ово би требало да врати податке као:

-----------------------ИЗВОРНИ ИНДЕКС---------------------------

"кибана_сампле_дата_флигхтс":
"пресликавања":
"дан у недељи" :
"фулл_наме": "даиОфВеек",
"мапирање":
"дан у недељи" :
"типе": "интегер"






-------------------------РЕИНДЕКСИРАНИ ПОДАЦИ-------------------------------

"кибана_сампле_типе_дифф":
"пресликавања":
"дан у недељи" :
"фулл_наме": "даиОфВеек",
"мапирање":
"дан у недељи" :
"типе": "лонг"





Закључак

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

Размотрите документацију да бисте сазнали више.

хттпс: // ввв.еластичан.цо / гуиде / ен / еластицсеарцх / референце / мастер / ингест.хтмл

Најбоље апликације за мапирање гамепада за Линук
Ако волите да играте игре на Линуку са гамепадом уместо са типичним системом за унос тастатуре и миша, за вас постоје неке корисне апликације. Многе и...
Корисни алати за Линук играче
Ако волите да играте игре на Линуку, велика је вероватноћа да сте можда користили апликације и услужне програме попут Вине, Лутрис и ОБС Студио за поб...
ХД Ремастеред игре за Линук које никада раније нису имале Линук издање
Многи програмери и издавачи игара долазе са ХД ремастером старих игара како би продужили живот франшизе, молимо обожаваоце да захтевају компатибилност...