#python #elasticsearch
#python #elasticsearch
Вопрос:
Код приведен ниже
from elasticsearch import Elasticsearch
es = Elasticsearch()
#es.indices.delete(index='my-index', ignore=400)
es.indices.create(index='my-index', ignore=400)
for e in test:
es.index(index="my-index", body=e, id=e['id'])
Мне нужно сначала проверить, есть ли index exists
перед созданием индекса. Если существует, то мои входящие журналы должны быть добавлены, если индекса нет, мне нужно сначала его создать
Ответ №1:
Поскольку вы не создаете свой индекс с определенными сопоставлениями или настройками, вы можете отказаться от этого шага и просто проиндексировать свои данные, и индекс будет создан автоматически.
Итак, этого достаточно:
from elasticsearch import Elasticsearch
es = Elasticsearch()
for e in test:
es.index(index="my-index", body=e, id=e['id'])
Комментарии:
1. допустим, в начале нет my-index? создает ли это новый my-index?
2. есть ли что-нибудь вроде if es.indexes.exists(«my-index») == False:
3. Опять же, вам не нужно, так как вызов
es.index
создастmy-index
индекс автоматически