O ES-Indexer (Elasticsearch Indexer) é uma ferramenta simples de linha de comando simultânea escrita no Python para ajudá-lo a preencher rapidamente alguns dados JSON no Elasticsearch.
Normalmente, você terá que usar um software de terceiros ou uma biblioteca de clientes para indexar dados para o Elasticsearch e configurar isso pode ser realmente demorado e cansativo ( tosse com tosse de logstash ). O ES-Indexer ajuda a indexar o conteúdo bruto de *.json documenta rapidamente com a ajuda de multi-threading.
Atualmente, o ES-Indexer não fornece nenhuma sincronização dos dados, você precisará reindexar os dados se eles mudarem, mas sempre preencherão um novo índice e, em seguida, criar um alias, os dados antigos estarão presentes ao reiniciar até que o novo índice esteja totalmente preenchido. Uma atualização futura pode incluir a sincronização.
Como o Elasticsearch expõe um API REST na porta 9200, não há necessidade de ES-Indexer fornecendo um API REST.
Requer python 3.x e é compatível com elasticsearch 7.xx
$ pip install es-indexer
(OU)
Clone o repositório.
$ git clone https://github.com/itsron717/es-indexer.git
Mova -se dentro do repo.
$ cd es-indexer
Instale o pacote localmente.
$ pip install .
Você precisa criar um config.yml antes de executar o ES-Indexer:
host: http://127.0.0.1:9200
index: twitter-example
type: documents
mapping:
settings:
number_of_shards: 1
number_of_replicas: 0
Você pode fornecer um mapeamento personalizado no arquivo de configuração, o ES-Indexer converterá o mapeamento YAML 1: 1 em JSON.
$ es-indexer --config path/to/config/file --source path/to/json/folder
Mais fontes de dados além json , como SQL , Filesystem , etc. também devem ser adicionadas à ferramenta ES-Indexer, de modo que possa ser um lojista único para todas as necessidades de indexação do Elasticsearch. Qualquer pessoa que gostasse de contribuir na integração de outras fontes de dados pode aumentar e emitir e podemos começar a trabalhar nele!.
json . SQL . FileSystem . O ES-Indexer foi construído usando a insipiração desta incrível ferramenta escrita em Go.
A licença do MIT (MIT)
Copyright (c) 2019 Rounak Vyas