Co to jest Apache Solr
Apache Solr jest jedną z najpopularniejszych baz danych NoSQL, które można użyć do przechowywania danych i zapytania o prawie w czasie rzeczywistym. Opiera się na Apache Lucene i jest napisany w Javie. Podobnie jak ElasticSearch, obsługuje zapytania bazy danych za pośrednictwem API REST. Oznacza to, że możemy użyć prostych połączeń HTTP i użyć metod HTTP, takich jak Get, Post, Put, Delete itp. Aby uzyskać dostęp do danych. Zapewnia również opcję uzyskania danych w postaci XML lub JSON za pośrednictwem API REST.
Architektura: Apache Solr
Zanim zaczniemy pracować z Apache Solr, musimy zrozumieć komponenty, które stanowią Apache Solr. Rzućmy okiem na niektóre elementy:
Architektura Apache Solr
Należy zauważyć, że na powyższym rysunku pokazano tylko główne elementy Solr. Zrozummy również ich funkcjonalność:
Pierwsze kroki z Apache Solr
Aby zacząć używać Apache Solr, należy go zainstalować na komputerze. Aby to zrobić, przeczytaj zainstaluj Apache Solr na Ubuntu.
Upewnij się, że masz aktywną instalację Solr, jeśli chcesz wypróbować przykłady, które przedstawiamy później na lekcji, a strona administracyjna jest osiągalna na LocalHost:
Strona główna Apache Solr
Wstawienie danych
Na początek rozważmy kolekcję w Solr, którą nazywamy Linux_Hint_Collection. Nie ma potrzeby jawnego definiowania tej kolekcji, tak jak w przypadku wstawienia pierwszego obiektu, kolekcja zostanie wykonana automatycznie. Wypróbujmy nasze pierwsze wywołanie API REST, aby wstawić nowy obiekt do nazwanej kolekcji Linux_Hint_Collection.
Wstawienie danych
curl -x post -h 'content -typ: Application/Json'
'http: // localhost: 8983/solr/linux_hint_collection/aktualizacja/json/docs'--data-binary ''
„ID”: „Iduye”,
„Nazwa”: „Shubham”
'
Oto, co wracamy z tym poleceniem:
Polecenie wstawienia danych do Solr
Dane można również wstawić za pomocą strony głównej Solr, na którą spojrzeliśmy wcześniej. Spróbujmy tego tutaj, aby wszystko było jasne:
Włóż dane za pośrednictwem strony głównej Solr
Ponieważ Solr ma doskonały sposób interakcji z interfejsami API HTTP, będziemy odtąd zademonstrować interakcję DB przy użyciu tych samych interfejsów API i nie skupi się zbytnio na wstawianiu danych za pośrednictwem strony internetowej Solr.
Wymień wszystkie kolekcje
Możemy również wymienić wszystkie kolekcje w Apache Solr za pomocą interfejsu API REST. Oto polecenie, których możemy użyć:
Wymień wszystkie kolekcje
curl http: // localhost: 8983/solr/admin/kolekcje?Actions = List & wt = json
Zobaczmy dane wyjściowe tego polecenia:
Widzimy tutaj dwie kolekcje, które istnieją w naszej instalacji Solr.
Uzyskaj obiekt według identyfikatora
Teraz zobaczmy, w jaki sposób możemy uzyskać dane z kolekcji Solr za pomocą konkretnego identyfikatora. Oto polecenie API REST:
Uzyskaj obiekt według identyfikatora
curl http: // localhost: 8983/solr/linux_hint_collection/get?id = IdUye
Oto, co wracamy z tym poleceniem:
Uzyskaj wszystkie dane
W naszym ostatnim interfejsie API REST zapytaliśmy dane za pomocą określonego identyfikatora. Tym razem otrzymamy wszystkie dane w naszej kolekcji Solr.
Uzyskaj obiekt według identyfikatora
curl http: // localhost: 8983/solr/linux_hint_collection/select?Q =*:*
Oto, co wracamy z tym poleceniem:
Zauważ, że użyliśmy „*:*” w parametrze zapytania. Określa to, że Solr powinien zwrócić wszystkie dane obecne w kolekcji. Nawet jeśli określiliśmy, że wszystkie dane powinny zostać zwrócone, Solr rozumie, że gromadzenie może zawierać dużą ilość danych i tak, Zwróci tylko pierwsze 10 dokumentów.
Usuwanie wszystkich danych
Do tej pory wszystkie interfejsy, które próbowaliśmy, używali formatu JSON. Tym razem spróbujemy formatu zapytania XML. Używanie formatu XML jest niezwykle podobne do JSON, ponieważ XML jest również samozadowolenia.
Wypróbujmy polecenie, aby usunąć wszystkie dane, które mamy w naszym kolekcji.
Usuwanie wszystkich danych
curl "http: // localhost: 8983/solr/linux_hint_collection/aktualizacja?commit = true "-h" Content-Type: Text/xml "--Data-Binary"*:*"
Oto, co wracamy z tym poleceniem:
Usuń wszystkie dane za pomocą zapytania XML
Teraz, jeśli ponownie spróbujemy uzyskać wszystkie dane, zobaczymy, że teraz nie są dostępne żadne dane:
Uzyskaj wszystkie dane
Całkowita liczba obiektów
Aby uzyskać ostateczne polecenie Curl, zobaczmy polecenie, z którymi możemy znaleźć liczbę obiektów obecnych w indeksie. Oto polecenie tego samego:
Całkowita liczba obiektów
curl http: // localhost: 8983/solr/linux_hint_collection/zapytanie?debug = zapytanie i q =*:*
Oto, co wracamy z tym poleceniem:
Licz liczbę obiektów
Wniosek
W tej lekcji przyjrzeliśmy się, w jaki sposób możemy używać zapytań Apache Solr i przekazywania za pomocą Curl zarówno w formacie JSON, jak i XML. Widzieliśmy również, że panel administracyjny Solr jest przydatny w sam.