Apache Solr

Vodič za Apache Solr

Vodič za Apache Solr
U ovoj ćemo lekciji vidjeti kako možemo koristiti Apache Solr za pohranu podataka i kako možemo pokretati razne upite na njemu.

Što je Apache Solr

Apache Solr jedna je od najpopularnijih NoSQL baza podataka koja se može koristiti za pohranu podataka i postavljanje upita u gotovo stvarnom vremenu. Temelji se na Apache Lucene, a napisan je na Javi. Baš kao i Elasticsearch, podržava upite baze podataka putem REST API-ja. To znači da možemo koristiti jednostavne HTTP pozive i HTTP metode poput GET, POST, PUT, DELETE itd. za pristup podacima. Također pruža mogućnost dobivanja podataka u obliku XML ili JSON putem REST API-ja.

Arhitektura: Apache Solr

Prije nego što započnemo raditi s Apache Solr, moramo razumjeti komponente koje čine Apache Solr. Pogledajmo neke komponente koje ima:

Apache Solr Arhitektura

Imajte na umu da su samo glavne komponente za Solr prikazane na gornjoj slici. Shvatimo i njihovu funkcionalnost ovdje:

Početak rada s Apache Solr

Da biste počeli koristiti Apache Solr, mora biti instaliran na stroju. Da biste to učinili, pročitajte Instalacija Apache Solr na Ubuntuu.

Provjerite imate li aktivnu instalaciju Solr ako želite isprobati primjere koje ćemo predstaviti kasnije u lekciji i ako je administratorska stranica dostupna na localhost:

Početna stranica Apache Solr

Umetanje podataka

Za početak, razmotrimo kolekciju u Solru koju nazivamo linux_hint_collection. Nema potrebe izričito definirati ovu zbirku, jer kada umetnemo prvi objekt, zbirka će se napraviti automatski. Pokušajmo s našim prvim REST API pozivom za umetanje novog objekta u zbirku s imenom linux_hint_collection.

Umetanje podataka

curl -X POST -H 'Content-Type: application / json'
'http: // localhost: 8983 / solr / linux_hint_collection / update / json / docs' --data-binarni '

"id": "iduye",
"name": "Shubham"
'

Evo što vraćamo ovom naredbom:

Naredba za umetanje podataka u Solr

Podaci se također mogu umetnuti pomoću Solr početne stranice koju smo ranije gledali. Pokušajmo ovo ovdje kako bi stvari bile jasne:

Umetnite podatke putem Solr početne stranice

Kako Solr ima izvrstan način interakcije s HTTP RESTful API-ima, od sada ćemo demonstrirati DB interakciju koristeći iste API-je i nećemo se usredotočiti puno na umetanje podataka putem web stranice Solr.

Navedi sve zbirke

Sve zbirke u Apache Solr možemo navesti i pomoću REST API-ja. Evo naredbe koju možemo koristiti:

Navedi sve zbirke

uvijanje http: // localhost: 8983 / solr / admin / collection?akcije = POPIS & wt = json

Pogledajmo izlaz za ovu naredbu:

Ovdje vidimo dvije kolekcije koje postoje u našoj instalaciji Solr.

Nabavite objekt po ID-u

Sada, da vidimo kako možemo DOBITI podatke iz Solr kolekcije s određenim ID-om. Evo naredbe REST API:

Nabavite objekt po ID-u

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

Evo što vraćamo ovom naredbom:

Dohvati sve podatke

U našem posljednjem REST API-u ispitivali smo podatke pomoću određenog ID-a. Ovaj put dobit ćemo sve podatke prisutne u našoj zbirci Solr.

Nabavite objekt po ID-u

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

Evo što vraćamo ovom naredbom:

Primijetite da smo upotrijebili '*: *' u parametru upita. To navodi da bi Solr trebao vratiti sve podatke prisutne u zbirci. Čak i ako smo naveli da svi podaci trebaju biti vraćeni, Solr razumije da zbirka može sadržavati veliku količinu podataka i tako, vratit će samo prvih 10 dokumenata.

Brisanje svih podataka

Do sada su svi API-ji koje smo isprobavali koristili JSON format. Ovaj put ćemo pokušati s XML formatom upita. Korištenje XML formata izuzetno je slično JSON-u jer je i XML samoopisan.

Pokušajmo naredbom za brisanje svih podataka koje imamo u našoj zbirci.

Brisanje svih podataka

curl "http: // localhost: 8983 / solr / linux_hint_collection / update?commit = true "-H" Content-Type: text / xml "--data-binarni" *: * "

Evo što vraćamo ovom naredbom:

Izbrišite sve podatke pomoću XML upita

Ako opet pokušamo dobiti sve podatke, vidjet ćemo da sada nisu dostupni podaci:

Dohvati sve podatke

Ukupan broj objekata

Za konačnu naredbu CURL, pogledajmo naredbu pomoću koje možemo pronaći broj objekata koji su prisutni u indeksu. Evo naredbe za isto:

Ukupan broj objekata

curl http: // localhost: 8983 / solr / linux_hint_collection / query?otklanjanje pogrešaka = upit & q = *: *

Evo što vraćamo ovom naredbom:

Broji broj predmeta

Zaključak

U ovoj smo lekciji pogledali kako možemo koristiti Apache Solr i prosljeđivati ​​upite koristeći curl i u JSON i u XML formatu. Također smo vidjeli da je administratorska ploča Solr korisna na isti način kao i sve naredbe za curl koje smo proučavali.

Korisni alati za Linux igrače
Ako volite igrati igre na Linuxu, velika je vjerojatnost da ste možda koristili aplikacije i uslužne programe poput Wine, Lutris i OBS Studio za pobol...
HD Remastered igre za Linux koje ranije nisu imale Linux izdanje
Mnogi programeri i izdavači igara dolaze s HD remasterom starih igara kako bi produžili životni vijek franšize, molimo obožavatelje da zatraže kompati...
Kako koristiti AutoKey za automatizaciju Linux igara
AutoKey je uslužni program za automatizaciju radne površine za Linux i X11, programiran na Python 3, GTK i Qt. Koristeći njegovu skriptiranje i MACRO ...