Przedstawiamy Elasticsearch krok po kroku

Cześć!
Dzisiaj porozmawiamy o wyszukiwarce pełnotekstowej Elasticsearch (zwanej dalej ES), z którą
Platforma Docsvision 5.5 jest uruchomiona.

Przedstawiamy Elasticsearch krok po kroku

1. Instalacja

Aktualną wersję można pobrać pod linkiem: www.elastic.co/downloads/elasticsearch
Poniżej zrzut ekranu instalatora:
Przedstawiamy Elasticsearch krok po kroku

2. Test działania

Po zakończeniu instalacji przejdź do
http://localhost:9200/
Powinna zostać wyświetlona strona stanu ES, przykład poniżej:
Przedstawiamy Elasticsearch krok po kroku

Jeśli strona nie otwiera się, upewnij się, że usługa Elasticsearch jest uruchomiona. W systemie Windows tak jest
Usługa Elasticsearch.
Przedstawiamy Elasticsearch krok po kroku

3. Połącz się z Docsvision

Połączenie z Elasticsearch konfiguruje się na stronie usługi pełnotekstowej
indeksowanie.
Przedstawiamy Elasticsearch krok po kroku

Tutaj musisz wskazać:
1. Adres serwera Elasticsearch (ustawiany podczas instalacji).
2. Parametry połączenia z DBMS.
3. Adres Docsvision (w formacie ConnectAddress=http://SERVER/DocsVision/StorageServer/StorageServerService.
asmx
)
4. W zakładce „Karty” i „Katalogi” należy skonfigurować dane, które
trzeba indeksować.
Musisz także upewnić się, że konto, na którym działa usługa Docsvision
Usługa Fulltext Indexing, posiada dostęp do bazy Docsvision na MS SQL.
Po podłączeniu należy upewnić się, że w bazie MS SQL zostały utworzone zadania z prefiksem:
„DV:FullText_<DBNAME>_CardWithFilesPrepareRange”
Przedstawiamy Elasticsearch krok po kroku

Po zakończeniu ustawień pasek wyszukiwania zostanie odblokowany w kliencie Windows.

4. REST API Elastyczne

Administrator może uzyskać różne informacje na temat działania Elasticsearch za pomocą
udostępniane przez REST API.
W poniższych przykładach użyjemy klienta Insomnia Rest.

Uzyskiwanie informacji ogólnych

Gdy usługa zostanie uruchomiona (http://localhost:9200/ w przeglądarce), możesz to zrobić
uruchom żądanie:
http://localhost:9200/_cat/health?v

Uzyskajmy odpowiedź o stanie usługi Elasticsearch (w przeglądarce):
Przedstawiamy Elasticsearch krok po kroku
Reakcja na stan bezsenności:
Przedstawiamy Elasticsearch krok po kroku
Zwróćmy uwagę na Status - Zielony, Żółty, Czerwony. Oficjalna dokumentacja mówi co następuje o statusach:
• Zielony — wszystko w porządku (klaster jest w pełni sprawny)
• Żółty — wszystkie dane są dostępne, ale niektóre repliki w klastrze nie zostały jeszcze dla nich przydzielone
• Czerwony — część danych jest z jakiegoś powodu niedostępna (sam klaster działa normalnie)
Uzyskiwanie stanów dotyczących węzłów w klastrze i ich stanu (mam 1 węzeł):
http://localhost:9200/_cat/nodes?v
Przedstawiamy Elasticsearch krok po kroku

Wszystkie indeksy ES:
http://localhost:9200/_cat/indices?v
Przedstawiamy Elasticsearch krok po kroku

Oprócz indeksów z Docsvision mogą znajdować się także indeksy innych aplikacji - heartbeat,
kibana – jeśli ich używasz. Możesz oddzielić potrzebne od niepotrzebnych. Na przykład,
Weźmy tylko indeksy, które mają w nazwie %card%:
http://localhost:9200/_cat/indices/*card*?v&s=index
Przedstawiamy Elasticsearch krok po kroku

Konfiguracja Elasticsearch

Uzyskiwanie ustawień Elasticsearch:
http://localhost:9200/_nodes
Wynik będzie dość obszerny, łącznie ze ścieżkami do logów:
Przedstawiamy Elasticsearch krok po kroku

Wiemy już, jak znaleźć listę indeksów; Docsvision robi to automatycznie, nadając indeksowi nazwę w formacie:
<nazwa bazy danych+typ karty indeksowanej>
Możesz także stworzyć swój własny, niezależny indeks:
http://localhost:9200/customer?pretty
Tylko że to nie będzie żądanie GET, ale PUT:
Przedstawiamy Elasticsearch krok po kroku

Wynik:
Przedstawiamy Elasticsearch krok po kroku

poniższe zapytanie wyświetli wszystkie indeksy, łącznie z nowymi (klient):
http://localhost:9200/_cat/indices?v
Przedstawiamy Elasticsearch krok po kroku

5. Pozyskiwanie informacji o danych zaindeksowanych

Stan indeksu Elasticsearch

Po zakończeniu wstępnej konfiguracji przez Docsvision usługa powinna być gotowa do działania i rozpocząć indeksowanie danych.
Na początek sprawdźmy, czy indeksy są zapełnione i czy ich rozmiar jest większy od standardowych „bajtów”, korzystając ze znanego nam już zapytania:
http://localhost:9200/_cat/indices?v
W rezultacie widzimy: zindeksowanych zostało 87 „zadań” i 72 „dokumentów”, mówiąc w kategoriach naszego EDMS:
Przedstawiamy Elasticsearch krok po kroku

Po pewnym czasie wyniki przedstawiają się następująco (domyślnie zadania indeksowania uruchamiane są co 5 minut):
Przedstawiamy Elasticsearch krok po kroku

Widzimy, że liczba dokumentów wzrosła.

Skąd wiesz, że potrzebna Ci karta została zaindeksowana?

• Najpierw musisz upewnić się, że typ karty w Docsvision odpowiada danym określonym w ustawieniach Elascticsearch.
• Po drugie, poczekaj, aż tablica kart zostanie zindeksowana - gdy trafi ona do Docsvision, musi minąć trochę czasu, zanim dane pojawią się w magazynie.
• Po trzecie, możesz wyszukać kartę po CardID. Możesz to zrobić za pomocą następującego żądania:

http://localhost:9200/_search?q=_id=2116C498-9D34-44C9-99B0-CE89465637C9

Jeśli karta znajduje się w pamięci, zobaczymy jej „surowe” dane, jeśli nie, zobaczymy coś takiego:
Przedstawiamy Elasticsearch krok po kroku

Wyszukiwanie karty w węźle Elasticsearch

Znajdź dokument według dokładnego dopasowania pola Opis:
http://localhost:9200/_search?q=description: Исходящий tv1
Wynik:
Przedstawiamy Elasticsearch krok po kroku

wyszukaj dokument, który w swoim opisie ma wpis „Przychodzący”.
http://localhost:9200/_search?q=description like Входящий
Wynik:
Przedstawiamy Elasticsearch krok po kroku

Wyszukaj kartę po zawartości załączonego pliku
http://localhost:9200/_search?q=content like ‘AGILE’
wynik:
Przedstawiamy Elasticsearch krok po kroku

Znajdźmy wszystkie karty typu dokument:
http://localhost:9200/_search?q=_type:CardDocument

lub wszystkie karty typu zadanie:
http://localhost:9200/_search?q=_type:CardTask

Korzystanie z projektów i i parametry, które Elasticsearch podaje w postaci JSON, możesz złożyć następujące żądanie:
http://localhost:9200/_search?q=_type:CardTask and Employee_RoomNumber: Орёл офиc and Employee_FirstName:Konstantin

Wyświetli wszystkie karty typu zadanie, wśród użytkowników, których Imię = Konstantin i którzy znajdują się w Biurze Orła.
Ale LIKE Istnieją inne udokumentowane parametry:
w przeciwieństwie do pól, dokumentów, treści itp.
Wszystkie są opisane tutaj.

To wszystko na dzisiaj!

#dokumentacja #dokumentacjaECM

Przydatne linki:

  1. Klient odpoczynku bezsenności https://insomnia.rest/download/#windows
  2. https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html
  3. https://www.elastic.co/guide/en/elasticsearch/reference/1.4/_exploring_your_data.html
  4. https://stackoverflow.com/questions/50278255/elasticsearch-backup-on-windows-and-restore-on-linux
  5. https://z0z0.me/how-to-create-snapshot-and-restore-snapshot-with-elasticsearch/
  6. https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-mlt-query.html#_document_input_parameters
  7. http://qaru.site/questions/15663281/elasticsearch-backup-on-windows-and-restore-on-linux

Źródło: www.habr.com

Dodaj komentarz