Теперь мы собираемся добавить отображение к нашему индексу ecommerce. Для этого мы сначала удалим индекс и добавим его снова с отображением. Причина, по которой мы это делаем, заключается в том, что если у вас есть данные в индексе, то вам нужно создать новый индекс и добавить в него данные.
Если в индексе нет данных, то нет необходимости сначала удалять индекс.
1 | curl -XDELETE http://127.0.0.1:9200/ecommerce |
Теперь, когда индекс удален, давайте создадим его снова, но на этот раз с мапингом.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | curl -XPUT http://127.0.0.1:9200/ecommerce -d ' { "mappings": { "product": { "properties": { "name": { "type": "string" }, "price": { "type": "double" }, "description": { "type": "string" }, "status": { "type": "string" }, "quantity": { "type": "integer" }, "categories": { "type": "nested", "properties": { "name": { "type": "string" } } }, "tags": { "type": "string" } } } } } |
Как вы можете видеть, информация отображения вложена в свойство отображения, где свойство продукта является именем типа отображения, который затем содержит свою информацию отображения. Массивы автоматически обнаруживаются в JSON, поэтому отображение полей как строк будет поддерживать строковый массив.
Вот и все! Создать индекс с информацией об отображении очень просто.