Попытка определить индекс в Elasticsearch для py-image-dedup - PullRequest
0 голосов
/ 14 февраля 2020

Я пытаюсь заставить работать py-image-dedup (https://github.com/markusressel/py-image-dedup), для которого требуется индекс, созданный вasticsearch. Пока все хорошо, * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}}}}}}}}}}}}}} Теперь все python код для работы py-image-dedup и brew installasticsearch все установлены и работают с серверомasticsearch, счастливо работающими на локальном адресе хоста 127.0.0.1:9200

Так что теперь я пытаюсь построить индекс. В инструкциях написано

curl -X PUT "127.0.0.1:9200/images?pretty" -H "Content-Type: application/json" -d "
{
  \"mappings\": {
    \"image\": {
      \"properties\": {
        \"path\": {
          \"type\": \"keyword\",
          \"ignore_above\": 256
        }
      }
    }
  }
}

, в котором явно не хватает "в конце и, насколько я вижу, не работает ни в одном варианте.

Я пытаюсь

curl -X PUT "127.0.0.1:9200/images?pretty"  -H "Content-Type: application/json" -d "{\"mappings\":{\"image\":{\"properties\":{\"path\":{\"type\":\"keyword\",\"ignore_above\":256}}}}} "


, который выглядит разумным, но получает

{
  "error" : {
    "root_cause" : [
      {
        "type" : "mapper_parsing_exception",
        "reason" : "Root mapping definition has unsupported parameters:  [image : {properties={path={ignore_above=256, type=keyword}}}]"
      }
    ],
    "type" : "mapper_parsing_exception",
    "reason" : "Failed to parse mapping [_doc]: Root mapping definition has unsupported parameters:  [image : {properties={path={ignore_above=256, type=keyword}}}]",
    "caused_by" : {
      "type" : "mapper_parsing_exception",
      "reason" : "Root mapping definition has unsupported parameters:  [image : {properties={path={ignore_above=256, type=keyword}}}]"
    }
  },
  "status" : 400
}

и не может на всю жизнь понять, почему индекс строится неправильно. Благодарен за помощь.

1 Ответ

1 голос
/ 14 февраля 2020

вы пытаетесь использовать типы, которые устарели: https://www.elastic.co/guide/en/elasticsearch/reference/current/removal-of-types.html

Удалите тип image из определения определения.

curl -X PUT "127.0.0.1:9200/images?pretty" -H "Content-Type: application/json" -d "
{
  \"mappings\": {
    \"properties\": {
      \"path\": {
        \"type\": \"keyword\",
        \"ignore_above\": 256
      }
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...