Introdução ao Elasticsearch passo a passo

Olá!
Hoje falaremos sobre o mecanismo de busca de texto completo Elasticsearch (daqui em diante ES), com o qual
a plataforma Docsvision 5.5. trabalha.

Introdução ao Elasticsearch passo a passo

1. Instalação

Você pode baixar a versão mais recente no link: www.elastic.co/downloads/elasticsearch
A captura de tela do instalador está abaixo:
Introdução ao Elasticsearch passo a passo

2. Verificação de funcionalidade

Após a conclusão da instalação, acesse o endereço
http://localhost:9200/
Deve aparecer uma página com o estado do ES, exemplo abaixo:
Introdução ao Elasticsearch passo a passo

Se a página não abrir, verifique se o serviço Elasticsearch está em execução. No Windows, é a
serviço Elasticsearch.
Introdução ao Elasticsearch passo a passo

3. Conexão com Docsvision

A conexão com o Elasticsearch é configurada na página do serviço de indexação de texto completo.
1. Endereço do servidor Elasticsearch (definido durante a instalação).
Introdução ao Elasticsearch passo a passo

Aqui é necessário especificar:
2. String de conexão com o SGBD.
3. Endereço Docsvision (no formato ConnectAddress=
asmxhttp://SERVER/DocsVision/StorageServer/StorageServerService.
4. Na aba ‘Cartões’ e ‘Referências’, é necessário configurar os dados que
)
precisam ser indexados.
Além disso, é importante garantir que a conta sob a qual o serviço Docsvision
Fulltext Indexing service está em execução tenha acesso ao banco de dados Docsvision no MS SQL.
Após a conexão, deve-se garantir que no banco de dados MS SQL foram criadas tarefas com o prefixo:
‘DV:FullText__CardWithFilesPrepareRange’
Após as configurações, a barra de busca será desbloqueada no cliente Windows.
Introdução ao Elasticsearch passo a passo

4. REST API Elastic

O administrador pode obter várias informações sobre o funcionamento do Elasticsearch através do

REST API fornecido.
Nos exemplos a seguir, usaremos o Insomnia Rest Client.
Obtenção de informações gerais

Assim que o serviço for iniciado e estiver funcionando (http://localhost:9200/ no navegador), é possível

executar a solicitação:
Receberemos a resposta sobre o estado do serviço Elasticsearch (no navegador):
http://localhost:9200/_cat/health?v

Resposta sobre o estado no Insomnia:
Introdução ao Elasticsearch passo a passo
Vamos prestar atenção ao Status — Green, Yellow, Red. A documentação oficial diz sobre os estados o seguinte:
Introdução ao Elasticsearch passo a passo
• Green — Tudo certo (O cluster está completamente operacional)
• Yellow — Todos os dados estão disponíveis, mas algumas réplicas no cluster ainda não estão alocadas
• Red — Parte dos dados não está disponível por qualquer motivo (o cluster em si está funcionando normalmente)
Obtenção dos estados dos nós no cluster e seu estado (eu tenho 1 nó):
Todos os índices (indices) ES:
http://localhost:9200/_cat/nodes?v
Introdução ao Elasticsearch passo a passo

Além dos índices do Docsvision, pode haver índices de outros aplicativos — heartbeat,
http://localhost:9200/_cat/indices?v
Introdução ao Elasticsearch passo a passo

kibana — se você os estiver usando. É possível filtrar os necessários dos desnecessários. Por exemplo,
vamos pegar apenas os índices em cujos nomes contém rd%:
vamos pegar apenas os índices cujos nomes contenham rd% no título:
http://localhost:9200/_cat/indices/*card*?v&s=index
Introdução ao Elasticsearch passo a passo

Obtenção das configurações do Elasticsearch:

Obtendo configurações do Elasticsearch:
http://localhost:9200/_nodes
O resultado será bastante abrangente, incluindo os caminhos para os logs:
Introdução ao Elasticsearch passo a passo

Como saber a lista de índices, já sabemos, a Docsvision faz isso automaticamente, dando o nome ao índice no formato:
<имябд+видИндексируемойКарточки>
Também é possível criar um índice independente:
http://localhost:9200/customer?pretty
Apenas que isso não será uma solicitação GET, mas uma solicitação PUT:
Introdução ao Elasticsearch passo a passo

Resultado:
Introdução ao Elasticsearch passo a passo

a próxima solicitação mostrará todos os índices, inclusive os novos (customer):
http://localhost:9200/_cat/indices?v
Introdução ao Elasticsearch passo a passo

5. Obtendo informações sobre os dados indexados

Estado dos índices Elasticsearch

Depois que a configuração inicial do lado da Docsvision foi realizada, o serviço deve estar pronto para operar e começar a indexar dados.
Antes de tudo, vamos verificar se os índices estão sendo preenchidos e seu tamanho é maior do que os 'bytes' padrão com a consulta que já conhecemos:
http://localhost:9200/_cat/indices?v
como resultado vemos: 87 'tarefas' e 72 'documentos' indexados, falando em termos do nosso SED:
Introdução ao Elasticsearch passo a passo

Após algum tempo, os resultados são os seguintes (por padrão, a tarefa de indexação é iniciada a cada 5 minutos):
Introdução ao Elasticsearch passo a passo

Vemos que o número de documentos aumentou.

Como entender que o cartão desejado foi indexado?

• Em primeiro lugar, é necessário garantir que o tipo de cartão na Docsvision corresponda aos dados especificados nas configurações do Elasticsearch.
• Em segundo lugar, deve-se aguardar a indexação do conjunto de cartões – ao entrar na Docsvision, deve-se passar algum tempo até que os dados apareçam no armazenamento.
• Em terceiro lugar, é possível procurar o cartão pelo CardID. Isso pode ser feito com a solicitação:

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

Caso o cartão esteja no armazenamento, veremos seus dados 'brutos', se não, veremos uma resposta assim:
Introdução ao Elasticsearch passo a passo

Busca de cartão no nó Elasticsearch

Encontrar documento pela correspondência exata do campo Description:
http://localhost:9200/_search?q=description: Saída tv1
Resultado:
Introdução ao Elasticsearch passo a passo

buscar documento que contém ‘Entrada’ na Description
http://localhost:9200/_search?q=description like Entrada
Resultado:
Introdução ao Elasticsearch passo a passo

Busca de cartão pelo conteúdo do arquivo anexado
http://localhost:9200/_search?q=content like ‘AGILE’
resultado:
Introdução ao Elasticsearch passo a passo

Encontraremos todos os cartões do tipo documento:
http://localhost:9200/_search?q=_type:CardDocument

ou todos os cartões do tipo tarefa:
http://localhost:9200/_search?q=_type:CardTask

Usando construções e e os parâmetros que o Elasticsearch fornece em forma de JSON, pode-se montar tal solicitação:
http://localhost:9200/_search?q=_type:CardTask and Employee_RoomNumber: Orël office and Employee_FirstName:Konstantin

Isso mostrará todos os cartões do tipo tarefa, entre os usuários cujo FirstName = Konstantin, e que estão na Orël Office.
Além de LIKE há também outros parâmetros documentados:
unlike, fields, docs, content, etc.
Todos eles estão descritos aqui.

Por hoje é tudo!

#docsvision #docsvisionECM

Links úteis:

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

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster