Përshëndetje!
Sot, do të flasim për motorin e kërkimit me tekst të plotë Elasticsearch (më poshtë ES), me të cilin
punon platforma Docsvision 5.5.

1. Instalimi
Versionin aktual mund ta shkarkoni në lidhjen:
Screenshot i instaluesit më poshtë:

2. Kontrollimi i funksionimit
Pas përfundimit të instalimit, vizitoni adresën
Duhet të shfaqet një faqe me statusin e ES, shembulli më poshtë:

Nëse faqja nuk u hap, sigurohuni që shërbimi Elasticsearch është i aktivizuar. Në Windows, kjo është
shërbimi Elasticsearch.

3. Lidhja me Docsvision
Lidhja me Elasticsearch konfigurohet në faqen e shërbimit të indeksimit të teksteve të plota.
1. Adresa e serverit Elasticsearch (caktohet gjatë instalimit).

Këtu duhet të tregoni:
2. Rreshti i lidhjes me DBMS.
3. Adresa e Docsvision (në formatin ConnectAddress=
asmx)
duhen indeksuar.
Po ashtu, duhet të siguroheni që llogaria nën të cilën është aktivizuar shërbimi i Docsvision
shërbimi për indeksimin e teksteve të plota, ka qasje në DB Docsvision në MS SQL.
Pas lidhjes, duhet të siguroheni që në DB MS SQL janë krijuar detyrat me prefiksin:
«DV:FullText_<EMRI_DB>_CardWithFilesPrepareRange»
Pas përfundimit të konfigurimeve, në klientin Windows do të aktivizohet rreshti i kërkimit.

4. REST API Elastic
Administratori mund të marrë informacion të ndryshëm rreth funksionimit të Elasticsearch përmes
REST API të ofruar.
Në shembujt e ardhshëm do të përdorim Insomnia Rest Client.
Marrja e informacionit të përgjithshëm
Sapo shërbimi të jetë aktivizuar dhe të funksionojë (http://localhost:9200/ në shfletues), mund të
kryeni kërkesën:
Do të marrim përgjigjen për statusin e shërbimit Elasticsearch (në shfletues):
Përgjigja për statusin në Insomnia:

VĂ«mendje nĂ« Status â Green, Yellow, Red. Dokumentacioni zyrtar thotĂ« pĂ«r statuset si mĂ« poshtĂ«:

âą Green â TĂ« gjitha janĂ« nĂ« rregull (Klastri funksionon plotĂ«sisht)
âą Yellow â TĂ« dhĂ«nat janĂ« tĂ« gjitha tĂ« qasshme, por disa replika nĂ« klaster akoma nuk janĂ« ndarĂ« pĂ«r to
âą Red â NjĂ« pjesĂ« e tĂ« dhĂ«nave nuk Ă«shtĂ« e qasshme pĂ«r ndonjĂ« arsye (klastri funksionon normalisht)
Marrja e gjendjeve për nodet në klaster dhe gjendja e tyre (kam 1 nod):
TĂ« gjitha indekset (indices) ES:

PĂ«rveç indekseve nga Docsvision, mund tĂ« ketĂ« dhe indekse nga aplikacione tĂ« tjera â heartbeat,

kibana â nĂ«se i pĂ«rdorni. Mund tĂ« klasifikoni tĂ« nevojshmet nga tĂ« panevojshmet. PĂ«r shembull,
merrni vetëm indekset, ku emri ka rd% në titull:
do të marim vetëm indekset, në emrat e të cilëve ka rd% në titull:

Marrja e cilësimeve të Elasticsearch:
Marrja e cilësimeve të Elasticsearch:
Rezultati do të jetë mjaft i gjerë, duke përfshirë rrugët për logjet:

Si të kuptojmë listën e indekseve, ne tashmë e dimë, Docsvision e bën këtë automatikisht, duke dhënë emrin e indeksit në formatin:
<emriBD+llojiIndeksues
Gjithashtu, mund të krijoni një index të pavarur:
Vetëm se kjo do të jetë një kërkesë PUT dhe jo GET:

Rezultati:

kërkesa në vijim do të tregojë të gjitha indekset, duke përfshirë ato të reja (customer):

5. Marrja e informacionit mbi të dhënat e indekseve
Gjendja e indekseve Elasticsearch
Pas përfundimit të konfigurimit fillestar nga ana e Docsvision, shërbimi duhet të jetë i gatshëm për të punuar dhe për të filluar indeksimin e të dhënave.
Së pari, le të kontrollojmë nëse indekset janë duke u mbushur dhe madhësia e tyre është më e madhe se standardet e 'bytes' me kërkesën tashmë të njohur:
si rezultat shohim: janë indeksuar 87 'detyra' dhe 72 'dokumente' në terma të sistemit tonë të menaxhimit të dokumenteve:

Pasi kalon njëfarë kohe, rezultatet janë këto (në mënyrë standarde, indeksi i punës fillon çdo 5 minuta):

Shohim që numri i dokumenteve është rritur.
Si të kuptojmë se kartela e nevojshme është indeksuar?
⹠Së pari, duhet të sigurohemi se lloji i kartelës në Docsvision përputhet me të dhënat e caktuara në konfigurimet e Elasticsearch.
⹠Së dyti, duhet të presim për indeksimin e grupit të kartelave - kur të hyjë në Docsvision duhet të kalojë njëfarë kohe deri sa të shfaqen të dhënat në ruajtje.
⹠Së treti, mund të kërkojmë kartelën sipas CardID. Mund ta bëjmë këtë me kërkesën:
Nëse kartela është në ruajtje, do të shohim të dhënat e saja 'të papërpunuara', nëse nuk ka, do të shohim një përgjigje të tillë:

Kërkimi i kartelës në nodin Elasticsearch
Të gjejmë dokumentin sipas përputhjes së saktë të fushës Description:
Rezultati:

kërkimi i dokumentit, ku në Description ka përfshirje 'I ardhshem'
Rezultati:

Kërkimi i kartelës sipas përmbajtjes së skedarit të bashkangjitur
rezultati:

Të gjejmë të gjitha kartelat e llojit dokument:
ose të gjitha kartelat e llojit detyra:
Duke përdorur ndërtimet dhe dhe parametrat që ofron Elasticsearch në formatin JSON mund të mbledhim një kërkesë të tillë:
Ajo do të shfaqë të gjitha kartelat e llojit detyra, midis përdoruesve që kanë FirstName = Konstantin, dhe janë në Orël Zyre.
Përveç LIKE ka dhe parametro të tjerë të dokumentuar:
unlike, fields, docs, content etj.
Të gjitha ato janë të përshkruara .
Kjo është gjithçka për sot!
#docsvision #docsvisionECM
Linqe të dobishme:
- Insomnia Rest client
Burimi: habr.com
