Yntroduksje fan Elasticsearch stap foar stap

Wolkom!
Hjoed sille wy prate oer de folsleine-tekst sykmasine Elasticsearch (hjirnei ES), wêrmei
It Docsvision 5.5-platfoarm rint.

Yntroduksje fan Elasticsearch stap foar stap

1. Ynstallaasje

Jo kinne de aktuele ferzje downloade fan 'e keppeling: www.elastic.co/downloads/elasticsearch
Ynstallearder skermôfbylding hjirûnder:
Yntroduksje fan Elasticsearch stap foar stap

2. Funksjonaliteit check

As de ynstallaasje foltôge is, gean nei
http://localhost:9200/
De ES-statusside moat werjûn wurde, foarbyld hjirûnder:
Yntroduksje fan Elasticsearch stap foar stap

As de side net iepenet, soargje derfoar dat de Elasticsearch-tsjinst rint. Op Windows is dit
Elasticsearch tsjinst.
Yntroduksje fan Elasticsearch stap foar stap

3. Ferbine mei Docsvision

Ferbining mei Elasticsearch is konfigureare op 'e tsjinstside mei folsleine tekst
yndeksearring.
Yntroduksje fan Elasticsearch stap foar stap

Hjir moatte jo oanjaan:
1. Elasticsearch tsjinner adres (ynsteld by ynstallaasje).
2. Ferbining string nei de DBMS.
3. Docsvision-adres (yn it formaat ConnectAddress=http://SERVER/DocsVision/StorageServer/StorageServerService.
asmx
)
4. Op de "Kaarten" en "Directories" ljepper, jo moatte konfigurearje de gegevens dy't
moat yndeksearre wurde.
Jo moatte ek soargje dat it akkount ûnder dêr't de Docsvision-tsjinst rint
Fulltext Indexing tsjinst, hat tagong ta de Docsvision databank op MS SQL.
Nei it ferbinen moatte jo derfoar soargje dat banen mei it foarheaksel oanmakke wurde yn 'e MS SQL-database:
"DV:FullText_<DBNAME>_CardWithFilesPrepareRange"
Yntroduksje fan Elasticsearch stap foar stap

Nei it foltôgjen fan de ynstellings sil de sykbalke wurde ûntskoattele yn 'e Windows-kliïnt.

4. REST API Elastysk

De behearder kin krije ferskate ynformaasje oer de wurking fan Elasticsearch brûkend
fersoarge troch REST API.
Yn 'e folgjende foarbylden sille wy Insomnia Rest Client brûke.

Algemiene ynformaasje krije

Sadree't de tsjinst op en rint (http://localhost:9200/ yn 'e browser), kinne jo
útfiere it fersyk:
http://localhost:9200/_cat/health?v

Litte wy in antwurd krije oer de steat fan 'e Elasticsearch-tsjinst (yn' e browser):
Yntroduksje fan Elasticsearch stap foar stap
Insomnia status antwurd:
Yntroduksje fan Elasticsearch stap foar stap
Litte wy omtinken jaan oan Status - Grien, giel, read. De offisjele dokumintaasje seit it folgjende oer statusen:
• Grien - Alles is goed (It kluster is folslein operasjoneel)
• Giel - Alle gegevens binne beskikber, mar guon replika's yn it kluster binne der noch net foar tawiisd
• Read - In diel fan 'e gegevens is om hokker reden net beskikber (it kluster sels wurket normaal)
Steaten krije oer de knooppunten yn it kluster en har steat (ik haw 1 knooppunt):
http://localhost:9200/_cat/nodes?v
Yntroduksje fan Elasticsearch stap foar stap

Alle ES-yndeksen:
http://localhost:9200/_cat/indices?v
Yntroduksje fan Elasticsearch stap foar stap

Neist yndeksen fan Docsvision kinne d'r ek yndeksen wêze fan oare applikaasjes - hertslach,
kibana - as jo se brûke. Jo kinne de nedige sortearje fan 'e ûnnedige. Bygelyks,
Litte wy allinich yndeksen nimme dy't %card% yn 'e namme hawwe:
http://localhost:9200/_cat/indices/*card*?v&s=index
Yntroduksje fan Elasticsearch stap foar stap

Elasticsearch-konfiguraasje

Elasticsearch-ynstellingen krije:
http://localhost:9200/_nodes
It resultaat sil frij wiidweidich wêze, ynklusyf de paden nei de logs:
Yntroduksje fan Elasticsearch stap foar stap

Wy witte al hoe't wy de list mei yndeksen kinne fine; Docsvision docht dit automatysk, en jout de namme oan 'e yndeks yn it formaat:
<databasenamme+type fan yndeksearre kaart>
Jo kinne ek jo eigen ûnôfhinklike yndeks oanmeitsje:
http://localhost:9200/customer?pretty
Allinnich dit sil gjin GET wêze, mar in PUT-fersyk:
Yntroduksje fan Elasticsearch stap foar stap

Resultaat:
Yntroduksje fan Elasticsearch stap foar stap

de folgjende query sil alle yndeksen sjen litte, ynklusyf nije (klant):
http://localhost:9200/_cat/indices?v
Yntroduksje fan Elasticsearch stap foar stap

5. It krijen fan ynformaasje oer yndeksearre gegevens

Elasticsearch yndeks status

Neidat de earste konfiguraasje troch Docsvision is foltôge, soe de tsjinst klear wêze moatte om te operearjen en te begjinnen mei yndeksearjen fan gegevens.
Lit ús earst kontrolearje dat de yndeksen binne ynfolle en har grutte is grutter dan standert "bytes" mei in query dy't ús al bekend is:
http://localhost:9200/_cat/indices?v
As resultaat sjogge wy: 87 "taken" en 72 "dokuminten" waarden yndeksearre, sprekend yn termen fan ús EDMS:
Yntroduksje fan Elasticsearch stap foar stap

Nei in skoftke binne de resultaten as folget (standert wurde yndeksearjende banen elke 5 minuten lansearre):
Yntroduksje fan Elasticsearch stap foar stap

Wy sjogge dat it oantal dokuminten tanommen is.

Hoe witte jo dat de kaart dy't jo nedich hawwe is yndeksearre?

• Earst moatte jo derfoar soargje dat it kaarttype yn Docsvision oerienkomt mei de gegevens dy't spesifisearre binne yn 'e Elascticsearch-ynstellingen.
• Twads, wachtsje oant it array fan kaarten wurdt yndeksearre - as it yn Docsvision komt, moat wat tiid passe foardat de gegevens yn 'e opslach ferskine.
• Tredde, kinne jo sykje nei in kaart troch CardID. Jo kinne dit dwaan mei it folgjende fersyk:

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

As de kaart yn 'e opslach is, sille wy syn "rauwe" gegevens sjen; sa net, sille wy sa'n ding sjen:
Yntroduksje fan Elasticsearch stap foar stap

Sykje nei in kaart yn in Elasticsearch-knooppunt

Fyn in dokumint troch krekte oerienkomst fan it Beskriuwingsfjild:
http://localhost:9200/_search?q=description: Исходящий tv1
Resultaat:
Yntroduksje fan Elasticsearch stap foar stap

sykje nei in dokumint dat in yngong 'Ynkommen' hat yn syn beskriuwing
http://localhost:9200/_search?q=description like Входящий
Resultaat:
Yntroduksje fan Elasticsearch stap foar stap

Sykje nei in kaart troch de ynhâld fan it taheakke bestân
http://localhost:9200/_search?q=content like ‘AGILE’
resultaat:
Yntroduksje fan Elasticsearch stap foar stap

Litte wy alle kaarten fan it dokuminttype fine:
http://localhost:9200/_search?q=_type:CardDocument

of alle kaarten fan it taaktype:
http://localhost:9200/_search?q=_type:CardTask

It brûken fan ûntwerpen en en de parameters dy't Elasticsearch jout yn 'e foarm fan JSON, kinne jo it folgjende fersyk gearstalle:
http://localhost:9200/_search?q=_type:CardTask and Employee_RoomNumber: Орёл офиc and Employee_FirstName:Konstantin

It sil alle kaarten fan it taaktype sjen litte, ûnder brûkers waans Foarnamme = Konstantin, en dy't yn it Eagle Office binne.
útsein LIKE D'r binne oare dokuminteare parameters:
oars as, fjilden, dokuminten, ynhâld, ensfh.
Allegear binne beskreaun hjir.

Dat is alles foar hjoed!

#docsvision #docsvisionECM

Nuttige links:

  1. Insomnia Rest client 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

Boarne: www.habr.com

Add a comment