Prezentante Elasticsearch paŝon post paŝo

Bonvenon!
Hodiaŭ ni parolos pri la plenteksta serĉilo Elasticsearch (ĉi-poste ES), per kiu
La platformo Docsvision 5.5 funkcias.

Prezentante Elasticsearch paŝon post paŝo

1. Instalado

Vi povas elŝuti la aktualan version de la ligilo: www.elastic.co/downloads/elasticsearch
Ekrankopio de instalilo sube:
Prezentante Elasticsearch paŝon post paŝo

2. Kontrolo de funkciado

Post kiam la instalado estas kompleta, iru al
http://localhost:9200/
La ES-statusa paĝo devus esti montrita, ekzemplo malsupre:
Prezentante Elasticsearch paŝon post paŝo

Se la paĝo ne malfermiĝas, certigu, ke la servo Elasticsearch funkcias. En Vindozo ĉi tio estas
Elasticsearch-servo.
Prezentante Elasticsearch paŝon post paŝo

3. Konekti al Docsvision

Konekto al Elasticsearch estas agordita sur la plenteksta servopaĝo
indeksado.
Prezentante Elasticsearch paŝon post paŝo

Ĉi tie vi devas indiki:
1. Elasticsearch servilo adreso (agordita dum instalado).
2. Konektoŝnuro al la DBMS.
3. Docsvision-adreso (en la formato ConnectAddress=http://SERVER/DocsVision/StorageServer/StorageServerService.
asmx
)
4. Sur la langeto "Kartoj" kaj "Dosierujoj", vi devas agordi la datumojn kiuj
bezonas esti indeksita.
Vi ankaŭ devas certigi, ke la konto sub kiu funkcias la servo Docsvision
Plenteksta Indeksa servo, havas aliron al la datumbazo Docsvision pri MS SQL.
Post konekto, vi devas certigi, ke laboroj kun la prefikso estas kreitaj en la MS SQL-datumbazo:
"DV:FullText_<DBNAME>_CardWithFilesPrepareRange"
Prezentante Elasticsearch paŝon post paŝo

Post kompletigado de la agordoj, la serĉbreto estos malŝlosita en la Vindoza kliento.

4. REST API Elasta

La administranto povas akiri diversajn informojn pri la funkciado de Elasticsearch uzante
provizita de REST API.
En la sekvaj ekzemploj ni uzos Insomnia Rest Client.

Akiro de ĝeneralaj informoj

Post kiam la servo funkcias (http://localhost:9200/ en la retumilo), vi povas
rulu la peton:
http://localhost:9200/_cat/health?v

Ni ricevu respondon pri la stato de la servo Elasticsearch (en la retumilo):
Prezentante Elasticsearch paŝon post paŝo
Respondo de sendormeco:
Prezentante Elasticsearch paŝon post paŝo
Ni atentu Statuson - Verda, Flava, Ruĝa. La oficiala dokumentaro diras la jenon pri statusoj:
• Verda — Ĉio estas bone (La areto estas plene funkcianta)
• Flava - Ĉiuj datumoj haveblas, sed kelkaj kopioj en la areto ankoraŭ ne estas asignitaj por ĝi
• Ruĝa—Parto de la datumoj ne disponeblas ial ajn (la areto mem funkcias normale)
Akiri ŝtatojn pri la nodoj en la areto kaj ilia stato (mi havas 1 nodon):
http://localhost:9200/_cat/nodes?v
Prezentante Elasticsearch paŝon post paŝo

Ĉiuj ES-indeksoj:
http://localhost:9200/_cat/indices?v
Prezentante Elasticsearch paŝon post paŝo

Krom indeksoj de Docsvision, povas ankaŭ ekzisti indeksoj de aliaj aplikoj - korbato,
kibana - se vi uzas ilin. Vi povas ordigi la necesajn el la nenecesaj. Ekzemple,
Ni prenu nur indeksojn, kiuj havas %card% en la nomo:
http://localhost:9200/_cat/indices/*card*?v&s=index
Prezentante Elasticsearch paŝon post paŝo

Elasticsearch-agordo

Akiro de Elasticsearch-agordoj:
http://localhost:9200/_nodes
La rezulto estos sufiĉe ampleksa, inkluzive de la vojoj al la protokoloj:
Prezentante Elasticsearch paŝon post paŝo

Ni jam scias kiel trovi la liston de indeksoj; Docsvision faras tion aŭtomate, donante la nomon al la indekso en la formato:
<datumbaza nomo+speco de Indeksita Karto>
Vi ankaŭ povas krei vian propran sendependan indekson:
http://localhost:9200/customer?pretty
Nur ĉi tio ne estos GET, sed PUT-peto:
Prezentante Elasticsearch paŝon post paŝo

Rezulto:
Prezentante Elasticsearch paŝon post paŝo

la sekva demando montros ĉiujn indeksojn, inkluzive de novaj (kliento):
http://localhost:9200/_cat/indices?v
Prezentante Elasticsearch paŝon post paŝo

5. Akiro de informoj pri indeksitaj datumoj

Elasticsearch-indekstato

Post kiam la komenca agordo de Docsvision finiĝis, la servo devas esti preta funkcii kaj komenci indeksadon de datumoj.
Antaŭ ĉio, ni kontrolu, ke la indeksoj estas plenigitaj kaj ilia grandeco estas pli granda ol normaj "bajtoj" per demando jam konata al ni:
http://localhost:9200/_cat/indices?v
Kiel rezulto, ni vidas: 87 "taskoj" kaj 72 "dokumentoj" estis indeksitaj, parolante laŭ nia EDMS:
Prezentante Elasticsearch paŝon post paŝo

Post iom da tempo, la rezultoj estas kiel sekvas (defaŭlte, indeksaj laboroj estas lanĉitaj ĉiujn 5 minutojn):
Prezentante Elasticsearch paŝon post paŝo

Ni vidas, ke la nombro da dokumentoj pliiĝis.

Kiel vi scias, ke la karto, kiun vi bezonas, estas indeksita?

• Unue, vi devas certigi, ke la karttipo en Docsvision kongruas kun la datumoj specifitaj en la agordoj de Elascticsearch.
• Due, atendu ke la aro de kartoj estu indeksita - kiam ĝi eniras en Docsvision, iom da tempo devas pasi antaŭ ol la datumoj aperos en la stokado.
• Trie, vi povas serĉi karton per CardID. Vi povas fari tion per la sekva peto:

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

Se la karto estas en la stokado, ni vidos ĝiajn "krudajn" datumojn; se ne, ni vidos ion tian:
Prezentante Elasticsearch paŝon post paŝo

Serĉante karton en Elasticsearch-nodo

Trovu dokumenton laŭ ĝusta kongruo de la kampo priskribo:
http://localhost:9200/_search?q=description: Исходящий tv1
Rezulto:
Prezentante Elasticsearch paŝon post paŝo

serĉu dokumenton, kiu havas eniron 'Envenanta' en ĝia Priskribo
http://localhost:9200/_search?q=description like Входящий
Rezulto:
Prezentante Elasticsearch paŝon post paŝo

Serĉu karton laŭ la enhavo de la kuna dosiero
http://localhost:9200/_search?q=content like ‘AGILE’
rezulto:
Prezentante Elasticsearch paŝon post paŝo

Ni trovu ĉiujn kartojn de la dokumenttipo:
http://localhost:9200/_search?q=_type:CardDocument

aŭ ĉiuj kartoj de la taskotipo:
http://localhost:9200/_search?q=_type:CardTask

Uzante dezajnojn kaj kaj la parametrojn, kiujn Elasticsearch donas en la formo de JSON, vi povas kunmeti la jenan peton:
http://localhost:9200/_search?q=_type:CardTask and Employee_RoomNumber: Орёл офиc and Employee_FirstName:Konstantin

Ĝi montros ĉiujn kartojn de la taskotipo, inter uzantoj, kies Antaŭnomo = Konstantin, kaj kiuj estas en la Aglo-Oficejo.
krom KIEL Estas aliaj dokumentitaj parametroj:
male al, kampoj, dokumentoj, enhavo, ktp.
Ĉiuj ili estas priskribitaj tie.

Tio estas ĉio por hodiaŭ!

#docsvision #docsvisionECM

Utilaj ligoj:

  1. Kliento de Sendorma Ripozo 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

fonto: www.habr.com

Aldoni komenton