Apache Solr

Apache Solr pamoka

Apache Solr pamoka
Šioje pamokoje pamatysime, kaip galime naudoti „Apache Solr“ duomenims saugoti ir kaip galime vykdyti įvairias užklausas.

Kas yra „Apache Solr“

„Apache Solr“ yra viena iš populiariausių „NoSQL“ duomenų bazių, kuri gali būti naudojama duomenims saugoti ir pateikti užklausas beveik realiuoju laiku. Jis pagrįstas „Apache Lucene“ ir parašytas „Java“. Kaip ir „Elasticsearch“, jis palaiko duomenų bazių užklausas per REST API. Tai reiškia, kad mes galime naudoti paprastus HTTP skambučius ir naudoti HTTP metodus, tokius kaip GET, POST, PUT, DELETE ir kt. prieigai prie duomenų. Tai taip pat suteikia galimybę gauti duomenis XML arba JSON forma per REST API.

Architektūra: Apache Solr

Prieš pradėdami dirbti su „Apache Solr“, turime suprasti „Apache Solr“ sudarančius komponentus. Pažvelkime į kai kuriuos jo komponentus:

Apache Solr architektūra

Atkreipkite dėmesį, kad aukščiau pateiktame paveikslėlyje parodyti tik pagrindiniai „Solr“ komponentai. Supraskime jų funkcionalumą ir čia:

Darbo su „Apache Solr“ pradžia

Norėdami pradėti naudoti „Apache Solr“, jis turi būti įdiegtas kompiuteryje. Norėdami tai padaryti, skaitykite „Apache Solr“ diegimas „Ubuntu“.

Įsitikinkite, kad turite aktyvų „Solr“ diegimą, jei norite išbandyti pavyzdžius, kuriuos pateikiame vėliau pamokoje, o administratoriaus puslapį galite pasiekti „localhost“:

Apache Solr tinklapis

Įterpiami duomenys

Norėdami pradėti, apsvarstykime „Solr“ kolekciją, kurią vadiname linux_hint_collection. Nereikia aiškiai apibrėžti šios kolekcijos, nes kai įdedame pirmąjį objektą, kolekcija bus sukurta automatiškai. Išbandykime savo pirmąjį REST API iškvietimą, kad į pavadintą kolekciją įterptume naują objektą linux_hint_collection.

Įterpiami duomenys

curl -X POST -H 'Turinio tipas: programa / JSON'
"http: // localhost: 8983 / solr / linux_hint_collection / update / json / docs" --data-dvejetainis "

„id“: „iduye“,
"name": "Shubham"

Štai ką mes grąžiname naudodami šią komandą:

Komanda įterpti duomenis į „Solr“

Duomenis taip pat galima įterpti naudojant „Solr“ pagrindinį puslapį, kurį apžvelgėme anksčiau. Pabandykime tai čia, kad viskas būtų aišku:

Įterpti duomenis per „Solr“ pagrindinį puslapį

Kadangi „Solr“ turi puikų sąveikos būdą su „HTTP RESTful“ API, nuo šiol mes demonstruosime DB sąveiką naudodami tas pačias API ir daug dėmesio nesieksime duomenų įterpimui per „Solr“ tinklalapį.

Išvardinkite visas kolekcijas

Mes taip pat galime surašyti visas „Apache Solr“ kolekcijas naudodami REST API. Štai komanda, kurią galime naudoti:

Išvardinkite visas kolekcijas

susisukti http: // localhost: 8983 / solr / admin / kolekcijos?veiksmai = SĄRAŠAS & wt = json

Pažiūrėkime šios komandos išvestį:

Čia matome dvi „Solr“ instaliacijos kolekcijas.

Gauti objektą pagal ID

Dabar pažiūrėkime, kaip mes galime gauti duomenis iš „Solr“ kolekcijos su konkrečiu ID. Čia yra komanda REST API:

Gauti objektą pagal ID

susisukti http: // localhost: 8983 / solr / linux_hint_collection / get?id = iduye

Štai ką mes grąžiname naudodami šią komandą:

Gauti visus duomenis

Paskutinėje „REST“ API užklausėme duomenis naudodami konkretų ID. Šį kartą gausime visus duomenis, esančius mūsų „Solr“ kolekcijoje.

Gauti objektą pagal ID

susisukti http: // localhost: 8983 / solr / linux_hint_collection / select?q = *: *

Štai ką mes grąžiname naudodami šią komandą:

Atkreipkite dėmesį, kad užklausos parametre naudojome „*: *“. Tai nurodo, kad „Solr“ turėtų grąžinti visus kolekcijoje esančius duomenis. Net jei mes nurodėme, kad visi duomenys turėtų būti grąžinti, „Solr“ supranta, kad kolekcijoje gali būti didelis duomenų kiekis ir taip, jis grąžins tik pirmuosius 10 dokumentų.

Ištrinti visus duomenis

Iki šiol visose bandytose API buvo naudojamas JSON formatas. Šį kartą mes bandysime XML užklausos formatą. XML formato naudojimas yra labai panašus į JSON, nes XML taip pat apibūdina save.

Pabandykime komandą ištrinti visus duomenis, kuriuos turime savo kolekcijoje.

Ištrinti visus duomenis

garbanoti "http: // localhost: 8983 / solr / linux_hint_collection / update?įsipareigoti = tiesa "-H" turinio tipas: tekstas / xml "--data-dvejetainis" *: * "

Štai ką mes grąžiname naudodami šią komandą:

Ištrinkite visus duomenis naudodami XML užklausą

Jei vėl bandysime gauti visus duomenis, pamatysime, kad dabar duomenų nėra:

Gauti visus duomenis

Bendras objektų skaičius

Norėdami sužinoti paskutinę komandą CURL, pažiūrėkime komandą, su kuria galime rasti objektų, esančių rodyklėje, skaičių. Čia yra to paties komanda:

Bendras objektų skaičius

garbanos http: // localhost: 8983 / solr / linux_hint_collection / query?derinti = užklausa & q = *: *

Štai ką mes grąžiname naudodami šią komandą:

Suskaičiuoti objektų skaičių

Išvada

Šioje pamokoje apžvelgėme, kaip galime naudoti „Apache Solr“ ir perduoti užklausas naudodami garbaną tiek JSON, tiek XML formatu. Mes taip pat matėme, kad „Solr“ administratoriaus skydas yra naudingas taip pat, kaip ir visos mūsų ištirtos garbanojimo komandos.

„AppyMouse“ ekrano „Trackpad“ ir pelės žymeklis, skirtas „Windows“ tabletėms
Planšetinių kompiuterių vartotojai dažnai praleidžia pelės žymeklį, ypač kai įprasta naudoti nešiojamus kompiuterius. Jutiklinio ekrano išmanieji tele...
Vidutinis pelės mygtukas neveikia sistemoje „Windows 10“
The vidurinis pelės mygtukas padeda naršyti ilgus tinklalapius ir ekranus, kuriuose yra daug duomenų. Jei tai sustos, gerai, jūs naudosite klaviatūrą ...
Kaip pakeisti kairįjį ir dešinįjį pelės mygtukus „Windows 10“ kompiuteryje
Gana įprasta, kad visi kompiuterio pelės įrenginiai yra ergonomiškai sukurti dešiniarankiams. Tačiau yra pelių prietaisų, specialiai sukurtų kairiaran...