{"id":35274,"date":"2019-10-31T22:03:22","date_gmt":"2019-10-31T19:03:22","guid":{"rendered":"https:\/\/prohoster.info\/blog\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk\/"},"modified":"2019-10-31T22:03:22","modified_gmt":"2019-10-31T19:03:22","slug":"razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","title":{"rendered":"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/8fe88b798a64e2ed8e77dbbc89558827.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPodsje\u0107amo da se Elastic Stack sastoji od nerelacijske baze podataka Elasticsearch, web su\u010delja Kibana i alata za obradu podataka (najpoznatiji Logstash, razli\u010diti Beats, APM i drugi). Jedan od ugodnih dodataka cijeloj ovoj tehnologiji je analiza podataka pomo\u0107u algoritama strojnog u\u010denja. U ovom \u010dlanku istra\u017eujemo \u0161to ti algoritmi predstavljaju. Molimo vas da nastavite \u010ditati.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nStrojno u\u010denje je pla\u0107ena funkcija uvjetno besplatnog Elastic Stacka i dolazi u paketu X-Pack. Da biste po\u010deli koristiti ovu funkciju, dovoljno je nakon instalacije aktivirati 30-dnevno probno razdoblje. Nakon isteka probnog razdoblja mo\u017eete zatra\u017eiti podr\u0161ku za njegovo produ\u017eenje ili kupiti pretplatu. Cijena pretplate ne ovisi o koli\u010dini podataka, ve\u0107 o broju kori\u0161tenih nodova. Naravno, koli\u010dina podataka utje\u010de na broj potrebnih nodova, no ovakav pristup licenciranju je prijateljskiji prema bud\u017eetu tvrtke. Ako nije potrebna visoka izvedba, mogu\u0107e je u\u0161tedjeti.<\/p>\n<p>ML u Elastic Stacku napisan je na C++ i radi izvan JVM-a, u kojem se pokre\u0107e Elasticsearch. To zna\u010di da proces (koji se, usput, naziva autodetect) koristi sve \u0161to JVM ne mo\u017ee obraditi. Na demo okru\u017eenju to nije kriti\u010dno, ali u produkcijskom okru\u017eenju va\u017eno je dodijeliti odvojene nodove za zadatke strojnog u\u010denja.<\/p>\n<p>Algoritmi strojnog u\u010denja dijele se u dvije kategorije \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81_%D1%83%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D0%B5%D0%BC\">s mentorom<\/a><\/noindex> i <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D1%83%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D1%8F\">bez mentora<\/a><\/noindex>. U Elastic Stacku algoritam pripada kategoriji \"bez mentora\". Prema <noindex><a rel=\"nofollow\" href=\"http:\/\/www.ijmlc.org\/papers\/398-LC018.pdf\">ovoj poveznici<\/a><\/noindex> mo\u017eete pogledati matemati\u010dki aparat algoritama strojnog u\u010denja.<\/p>\n<p>Za provo\u0111enje analize, algoritam strojnog u\u010denja koristi podatke pohranjene u indeksima Elasticsearcha. Zadatke za analizu mogu\u0107e je kreirati i iz su\u010delja Kibana i putem API-ja. Ako to radite putem Kibana, nije potrebno znati neke stvari. Na primjer, dodatne indekse koje algoritam koristi tijekom rada. <\/p>\n<p><b class=\"spoiler_title\">Dodatni indeksi kori\u0161teni tijekom analize<\/b>.ml-state \u2014 informacije o statisti\u010dkim modelima (postavke analize);<br \/>\n.ml-anomalies-* \u2014 rezultati rada algoritama strojnog u\u010denja;<br \/>\n.ml-notifications \u2014 postavke obavijesti o rezultatima analize.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/a6a67b0c05c6650a158d99010c2872f1.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nStruktura podataka u Elasticsearch bazi sastoji se od indeksa i u njima pohranjenih dokumenata. Ako usporedimo s relacijskom bazom podataka, indeks se mo\u017ee usporediti sa shemom baze podataka, a dokument s unosom u tablici. Ova usporedba je uvjetna i navedena je za pojednostavljenje razumijevanja daljnjeg materijala za one koji su tek \u010duli za Elasticsearch.<\/p>\n<p>Putem API-ja dostupan je isti funkcionalnost kao i putem web su\u010delja, stoga \u0107emo za prikaz i razumijevanje koncepata pokazati kako se postavljaju putem Kibane. U izborniku lijevo postoji odjeljak Machine Learning, u kojem mo\u017eete stvoriti novi zadatak (Job). U su\u010delju Kibana to izgleda kao na slici ispod. Sada \u0107emo razraditi svaki tip zadatka i pokazati vrste analiza koje se ovdje mogu konstruirati.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/c0c0bede29fbe38a72270d2128926122.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSingle Metric \u2014 analiza jedne metrike, Multi Metric \u2014 analiza dvije ili vi\u0161e metrike. U oba slu\u010daja, svaka metrika analizira se u izoliranom okru\u017eenju, tj. algoritam ne uzima u obzir pona\u0161anje paralelno analiziranih metrika kao \u0161to bi se moglo \u010diniti u slu\u010daju Multi Metric. Da biste proveli izra\u010dun uzimaju\u0107i u obzir korelaciju razli\u010ditih metrika, mo\u017eete primijeniti Population-analizu. A Advanced \u2014 to je fino pode\u0161avanje algoritama dodatnim opcijama za odre\u0111ene zadatke. <\/p>\n<h2>Single Metric<\/h2>\n<p>\nAnaliza promjena jedne jedine metrike \u2014 najjednostavnije \u0161to se mo\u017ee napraviti ovdje. Nakon pritiska na Create Job, algoritam \u0107e potra\u017eiti anomalije.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/d84d29539c3b97be7a15aac8708bc3be.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nU polje <i>Aggregation<\/i> mo\u017eete odabrati pristup tra\u017eenju anomalija. Na primjer, pri <i>Min<\/i> anomalu \u0107e se smatrati vrijednosti ispod tipi\u010dnih. Postoje <i>Max, High Mean, Low, Mean, Distinct<\/i> i drugi. Opis svih funkcija mo\u017eete pogledati <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/current\/ml-functions.html\">na linku<\/a><\/noindex>.<\/p>\n<p>U polje <i>Field<\/i> navodi se numeri\u010dko polje u dokumentu po kojem \u0107emo provoditi analizu.<\/p>\n<p>U polje <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/blog\/explaining-the-bucket-span-in-machine-learning-for-elasticsearch\"><i>Bucket span<\/i><\/a><\/noindex> \u2014 granularnost intervala na vremenskoj osi prema kojima \u0107e se izvr\u0161iti analiza. Mo\u017eete se osloniti na automatiku ili odabrati ru\u010dno. Na slici ispod prikazan je primjer previ\u0161e niske granularnosti \u2014 mogli biste propustiti anomaliju. Ovom postavkom mo\u017eete promijeniti osjetljivost algoritma na anomalije.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/a2808c0b451703a50d74f7737332ea8b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTrajanje prikupljenih podataka \u2014 klju\u010dna stvar koja utje\u010de na u\u010dinkovitost analize. Tijekom analize, algoritam utvr\u0111uje ponavljaju\u0107e intervale, izra\u010dunava konfidentski interval (bazi\u010dne linije) i otkriva anomalije \u2014 netipi\u010dna odstupanja od uobi\u010dajenog pona\u0161anja metrike. Za primjer:<\/p>\n<p>Osnovne linije na malom uzorku podataka:<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/2a3cbeaa8cf08a2a5dec87071be27db8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKada algoritam ima na \u010demu da u\u010di \u2014 osnovne linije izgledaju ovako:<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/13d636ab405a85d89e2ae4ebfe8bb6bd.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNakon pokretanja zadatka, algoritam defini\u0161e anomalne odstupanja od norme i rangira ih po verovatno\u0107i anomalije (u zagradama je prikazana boja odgovaraju\u0107e oznake):<\/p>\n<p>Warning (plava): manje od 25<br \/>\nMinor (\u017euta): 25-50<br \/>\nMajor (narand\u017easta): 50-75<br \/>\nCritical (crvena): 75-100<\/p>\n<p>Na grafu ispod je primer sa prona\u0111enim anomalijama.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/ed87198f99f0cc93ffc16ce458054a9f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOvde se vidi broj 94, koji ozna\u010dava verovatno\u0107u anomalije. Jasno je da, s obzirom da je vrednost blizu 100, imamo anomaliju. U koloni ispod grafikona prikazana je trivijalno mala verovatno\u0107a od 0.000063634% nastanka te vrednosti metrike.<\/p>\n<p>Pored pronalaska anomalija u Kibani, mogu\u0107e je pokrenuti prognozu. To se jednostavno radi iz iste te vizualizacije sa anomalijama \u2014 dugme <i>Forecast<\/i> u gornjem desnom uglu.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/73429a947befb8834972ebbfe48c2d48.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrognoza se pravi najvi\u0161e na 8 nedelja unapred. \u010cak i ako se jako \u017eeli \u2014 vi\u0161e od toga nije mogu\u0107e zbog dizajna.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/7622608e4b952be741be486f89d1bc43.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nU nekim situacijama prognoza \u0107e biti vrlo korisna, na primer, kada se prati korisni\u010dka optere\u0107enost na infrastrukturi.<\/p>\n<h2>Multi Metric<\/h2>\n<p>\nPrelazimo na slede\u0107u mogu\u0107nost ML u Elastic Stack \u2014 analizu vi\u0161e metrika odjednom. Ali to ne zna\u010di da \u0107e se analizirati zavisnost jedne metrike od druge. To je isto \u0161to i Single Metric, samo s vi\u0161e metrika na jednom ekranu radi lak\u0161eg pore\u0111enja uticaja jedne na drugu. O analizi zavisnosti jedne metrike od druge govori\u0107emo u delu Population.<\/p>\n<p>Nakon \u0161to pritisnete kvadrat sa Multi Metric pojavi\u0107e se prozor sa pode\u0161avanjima. O njima \u0107emo se detaljnije osvrnuti.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/eaa06c8b24b393209ef1fb5ba9cfbd62.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrvo je potrebno odabrati polja za analizu i agregaciju podataka po njima. Opcije agregacije su iste kao i za Single Metric (<i>Max, High Mean, Low, Mean, Distinct<\/i> i druge). Zatim se podaci, ako \u017eelite, razdvajaju po jednom od polja (polje <i>Split Data<\/i>). U primeru to smo uradili po polju <i>OriginAirportID<\/i>. Obratite pa\u017enju da je grafikon metrika s desne strane sada prikazan kao vi\u0161e grafikona.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/746a91b28a010a037c66a569fcf47a1b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPolje <i>Key Fields (Influencers)<\/i> direktno uti\u010de na prona\u0111ene anomalije. Po defaultu ovde \u0107e uvek biti barem jedna vrednost, a mo\u017eete dodati dodatne. Algoritam \u0107e uzeti u obzir uticaj ovih polja prilikom analize i prikazati najsna\u017enije \"influencere\".<\/p>\n<p>Nakon pokretanja u interfejsu Kibana, izgled \u0107e otprilike biti ovakav.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/c6efd8f4815ad150b046c82780c36574.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTo je tzv. toplotna mapa anomalija za svaku vrednost polja. <i>OriginAirportID<\/i>, koji smo naveli u <i>Split Data<\/i>. Kao i kod Single Metric, boja ozna\u010dava razinu abnormalne odstupanja. Sli\u010dnu analizu je prakti\u010dno provoditi, na primjer, po radnim stanicama radi pra\u0107enja onih sa sumnjivo mnogo autorizacija itd. Ve\u0107 smo pisali <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/galssoftware\/blog\/447522\/\">o sumnjivim doga\u0111ajima u EventLog Windows<\/a><\/noindex>, koje tako\u0111er mo\u017eemo prikupljati i analizirati ovdje.<\/p>\n<p>Ispod toplinske karte je popis anomalija, s kojih se mo\u017ee prije\u0107i na prikaz Single Metric za detaljnu analizu.<\/p>\n<h2>Population<\/h2>\n<p>\nKako bismo tra\u017eili anomalije me\u0111u korelacijama izme\u0111u razli\u010ditih metrike u Elastic Stack, postoji specijalizirana analiza Population. Upravo s njom mo\u017eemo potra\u017eiti abnormalne vrijednosti u performansama nekog poslu\u017eitelja u usporedbi s ostalima, na primjer, prilikom pove\u0107anja broja zahtjeva prema ciljanom sustavu.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/00542d57f2a937d424b2db5e692a6289.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNa ovoj ilustraciji, u polju Population, navedena je vrijednost na koju \u0107e se odnositi analizirane metrike. U ovom slu\u010daju, to je ime procesa. Kao rezultat, vidjet \u0107emo kako su optere\u0107enja procesora od strane svakog od procesa me\u0111usobno utjecala.<\/p>\n<p>Primijetite da se grafikon analiziranih podataka razlikuje od slu\u010dajeva s Single Metric i Multi Metric. To je u\u010dinjeno u Kibani s dizajnom radi pobolj\u0161anog percepcije raspodjele vrijednosti analiziranih podataka.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/4af704044bf544ca6cd221404288e6c4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIz grafikona se vidi da je proces <i>stress<\/i> (usput, stvoren posebnim alatom) na poslu\u017eitelju <i>poipu<\/i>, koji je utjecao (ili se ispostavio influencerom) na nastanak ove anomalije.<\/p>\n<h2>Advanced<\/h2>\n<p>\nAnalitika s finim pode\u0161avanjem. U Advanced analizi u Kibani pojavljuju se dodatne postavke. Nakon \u0161to se u izborniku za stvaranje odabere plo\u010dicu Advanced, pojavljuje se ovakav prozor s karticama. Karticu <i>Job Details<\/i> smo namjerno izostavili, jer su tamo osnovne postavke koje se ne odnose izravno na postavke analize.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/abe7941ad56acf3ee7ab992fa5fe7b94.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nU <i>summary_count_field_name<\/i> opcionalno mo\u017eemo navesti naziv polja iz dokumenata koje sadr\u017ei agregirane vrijednosti. U ovom primjeru \u2014 broj doga\u0111aja u minuti. U <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/current\/ml-configuring-categories.html\"><i>categorization_field_name<\/i><\/a><\/noindex> navodi se naziv polja iz dokumenta koje sadr\u017ei neku promjenjivu vrijednost. Prema uzorku na to polje mo\u017eemo razdvojiti analizirane podatke na podskupine. Obratite pa\u017enju na gumb <i>Add detector<\/i> na prethodnoj ilustraciji. Ispod je rezultat pritiska na ovu tipku.<\/p>\n<p><img decoding=\"async\" alt=\"Istra\u017eujemo Machine Learning u Elastic Stack-u (poznatom kao Elasticsearch ili ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/cce9a6401d6baa72c68b8e0c3c6ab209.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOvdje je dodatni blok postavki za prilagodbu detektora anomalija za odre\u0111eni zadatak. Specifi\u010dne primjene (osobito u vezi s sigurno\u0161\u0107u) planiramo obraditi u narednim \u010dlancima. Na primjer, <noindex><a rel=\"nofollow\" href=\"https:\/\/discuss.elastic.co\/t\/dec-4th-2018-en-ml-rarity-analysis-with-machine-learning\/158979\">pogledajte<\/a><\/noindex> jedan od obra\u0111enih slu\u010dajeva. On se odnosi na pronala\u017eenje rijetko prisutnih vrijednosti i realizira se <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/7.1\/ml-rare-functions.html\">funkcijom rare<\/a><\/noindex>.<\/p>\n<p>U polje <i>function<\/i> mo\u017eete odabrati odre\u0111enu funkciju za pronala\u017eenje anomalija. Osim <i>rare<\/i>, postoje jo\u0161 dvije zanimljive funkcije \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/7.1\/ml-time-functions.html\"><i>time_of_day<\/i> i <i>time_of_week<\/i><\/a><\/noindex>. One otkrivaju anomalije u pona\u0161anju metrika tijekom dana ili tjedna, odnosno. Ostale analiti\u010dke funkcije <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/7.1\/ml-functions.html\">nalaze se u dokumentaciji<\/a><\/noindex>.<\/p>\n<p>U <i>field_name<\/i> navodi polje dokumenta prema kojem \u0107e se provoditi analiza. <i>By_field_name<\/i> mo\u017ee se koristiti za razdvajanje rezultata analize po svakoj pojedina\u010dnoj vrijednosti navedenog polja dokumenta. Ako ispunite <i>over_field_name<\/i> dobit \u0107ete population-analizu, koju smo razmatrali ranije. Ako navedete vrijednost u <i>partition_field_name<\/i>, tada \u0107e se za to polje dokumenta izra\u010dunati posebne osnovne linije za svaku vrijednost (vrijednost mo\u017ee biti, na primjer, naziv servera ili proces na serveru). U <i>exclude_frequent<\/i> mo\u017eete odabrati <i>all<\/i> ili <i>none<\/i>, \u0161to \u0107e zna\u010diti isklju\u010denje (ili uklju\u010divanje) \u010desto prisutnih vrijednosti polja dokumenta.<\/p>\n<p>U \u010dlanku smo poku\u0161ali \u0161to sa\u017eetije predstaviti mogu\u0107nosti strojnog u\u010denja u Elastic Stack, ostalo je jo\u0161 mnogo detalja. Javite nam u komentarima koje ste slu\u010dajeve uspjeli rije\u0161iti pomo\u0107u Elastic Stack-a i za koje se svrhe ga koristite. Za kontakt s nama mo\u017eete koristiti privatne poruke na Habru ili <noindex><a rel=\"nofollow\" href=\"https:\/\/gals.software\/solutions\/elasticstack\">obrazac za povratne informacije na web stranici<\/a><\/noindex>.<br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/galssoftware\/blog\/455387\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e \u0432 \u043e\u0441\u043d\u043e\u0432\u0435 Elastic Stack \u043b\u0435\u0436\u0430\u0442 \u043d\u0435\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 Elasticsearch, \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Kibana \u0438 \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u0438-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0441\u0430\u043c\u044b\u0439 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 Logstash, \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 Beats, APM \u0438 \u0434\u0440\u0443\u0433\u0438\u0435). \u041e\u0434\u043d\u043e \u0438\u0437 \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0445 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439 \u0432\u0441\u0435\u0433\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u2014 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0447\u0442\u043e \u0438\u0437 \u0441\u0435\u0431\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u044d\u0442\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b. \u041f\u0440\u043e\u0441\u0438\u043c \u043f\u043e\u0434 \u043a\u0430\u0442. \u041c\u0430\u0448\u0438\u043d\u043d\u043e\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26487,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35274","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441 Machine Learning \u0432 Elastic Stack (\u043e\u043d \u0436\u0435 Elasticsearch, \u043e\u043d \u0436\u0435 ELK) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:03:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:03:22+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Istra\u017eujemo Machine Learning u Elastic Stacku (poznatom i kao Elasticsearch, odnosno ELK) | ProHoster","description":"Podsje\u0107amo.","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441 Machine Learning \u0432 Elastic Stack (\u043e\u043d \u0436\u0435 Elasticsearch, \u043e\u043d \u0436\u0435 ELK) | ProHoster","og:description":"\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c.","og:url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:03:22+00:00","article:modified_time":"2019-10-31T19:03:22+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35274","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 22:37:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:07:28","updated":"2026-01-21 22:37:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/35274","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=35274"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/35274\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/26487"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=35274"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=35274"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=35274"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}