Buongiorno!
Oggi parleremo del motore di ricerca full-text Elasticsearch (di seguito ES), con cui
lavora la piattaforma Docsvision 5.5.

1. Installazione
È possibile scaricare l'ultima versione dal link:
Screenshot del programma di installazione qui sotto:

2. Verifica del funzionamento
Dopo aver completato l'installazione, visitare l'indirizzo
Dovrebbe essere visualizzata una pagina con lo stato di ES, un esempio qui sotto:

Se la pagina non si apre, assicurati che il servizio Elasticsearch sia in esecuzione. In Windows è
il servizio Elasticsearch.

3. Connessione a Docsvision
La connessione a Elasticsearch è configurata nella pagina del servizio di indicizzazione
full-text.

Qui è necessario specificare:
1. L'indirizzo del server Elasticsearch (impostato durante l'installazione).
2. La stringa di connessione al DBMS.
3. Indirizzo Docsvision (nel formato ConnectAddress=)
4. Nella scheda «Schede» e «Elenco» è necessario configurare i dati che
devono essere indicizzati.
Assicurati anche che l'account con cui è in esecuzione il servizio Docsvision
Fulltext Indexing service abbia accesso al DB Docsvision su MS SQL.
Dopo la connessione, assicurati che nel DB MS SQL siano stati creati i task con il prefisso:
«DV:FullText__CardWithFilesPrepareRange»

Dopo aver completato le impostazioni, nella client Windows sarà sbloccata la barra di ricerca.
4. REST API Elastic
L'amministratore può ottenere diverse informazioni sul funzionamento di Elasticsearch tramite
l'API REST fornita.
Nei prossimi esempi utilizzeremo Insomnia Rest Client.
Ottenere informazioni generali
Una volta che il servizio è avviato e funziona (http://localhost:9200/ nel browser), puoi
inviare una richiesta:
Otterremo una risposta sullo stato del servizio Elasticsearch (nel browser):

Risposta sullo stato in Insomnia:

Notiamo lo Status — Green, Yellow, Red. La documentazione ufficiale dice riguardo agli stati:
• Green — Tutto bene (Il cluster è completamente funzionante)
• Yellow — Tutti i dati sono disponibili, ma alcune repliche nel cluster non sono ancora allocate per loro
• Red — Parte dei dati non è disponibile per qualche motivo (il cluster funziona normalmente)
Ottenere stati sui nodi nel cluster e il loro stato (ho 1 nodo):

Tutti gli indici (indices) ES:

Oltre agli indici di Docsvision, possono esserci anche indici di altre applicazioni — heartbeat,
kibana — se li utilizzi. Quelli necessari possono essere separati da quelli non necessari. Ad esempio,
prendiamo solo gli indici i cui nomi contengono rd% nel titolo:

Configurazione Elasticsearch
Ottenere impostazioni di Elasticsearch:
Il risultato sarà piuttosto ampio, comprese le vie ai log:

Come scoprire l'elenco degli indici, lo sappiamo già, Docsvision lo fa automaticamente, dando il nome all'indice nel formato:
<имябд+видИндексируемойКарточки>
Si può anche creare un indice indipendente:
Solo che non sarà una richiesta GET, ma una richiesta PUT:

Risultato:

La richiesta successiva mostrerà tutti gli indici, compresi i nuovi (customer):

5. Ottenere informazioni sui dati indicizzati
Stato degli indici Elasticsearch
Dopo che la configurazione iniziale da parte di Docsvision è stata eseguita, il servizio dovrebbe essere pronto per lavorare e iniziare a indicizzare i dati.
Innanzitutto verifichiamo che gli indici si stiano riempiendo e che la loro dimensione sia superiore ai 'byte' standard con la richiesta a noi già nota:
come risultato vediamo: indicizzati 87 'compiti' e 72 'documenti' se parliamo in termini del nostro DMS:

Dopo un certo periodo, i risultati sono i seguenti (per impostazione predefinita, il job di indicizzazione si avvia ogni 5 minuti):

Vediamo che il numero di documenti è aumentato.
Come capire che la scheda desiderata è stata indicizzata?
• Prima di tutto, bisogna assicurarsi che il tipo di scheda in Docsvision corrisponda ai dati specificati nelle impostazioni di Elasticsearch.
• In secondo luogo, attendere l'indicizzazione del gruppo di schede: una volta che si trova in Docsvision, deve passare del tempo prima che i dati appaiano nel repository.
• In terzo luogo, si può cercare la scheda per CardID. Questo può essere fatto con la richiesta:
Nel caso in cui la scheda sia presente nel repository, vedremo i suoi dati 'grezzi', nel caso contrario, vedremo una risposta simile a questa:

Ricerca della scheda nel nodo Elasticsearch
Trovare un documento per corrispondenza esatta del campo Description:
Risultato:

cercando un documento il cui Description contiene 'In entrata'
Risultato:

Ricerca della scheda per il contenuto del file allegato
risultato:

Troveremo tutte le schede di tipo documento:
o tutte le schede di tipo compiti:
Utilizzando le costruzioni and e i parametri forniti da Elasticsearch in formato JSON, si può compilare una richiesta del genere:
Mostrerà tutte le schede di tipo compiti, tra gli utenti il cui FirstName = Konstantin e che si trovano nell'ufficio di Orël.
Inoltre LIKE ci sono altri parametri documentati:
unlike, fields, docs, content ecc.
Tutti questi sono descritti .
Per oggi è tutto!
#docsvision #docsvisionECM
Link utili:
- Client di riposo per insonnia
Fonte: habr.com
