#elasticsearch #elassandra
#elasticsearch #elassandra
Вопрос:
У меня есть таблица на Elassandra. Мне нужно создать индекс эластичного поиска только для нескольких столбцов этой таблицы, а не для всей таблицы.
{«discover»:». *»} опция создает индекс для всех столбцов таблицы. Но я не могу создать индекс для нескольких столбцов.
curl -XPUT -H 'Content-Type: application/json' 'http://localhost:9200/test_idx' -d '{
"settings": {"keyspace":"dm" },
"mappings": {
"mytable": {
"properties": {
"did": { "type": "text" },
"defectx": { "type": "float" },
"defecty": { "type": "float" },
"mdc": { "type": "text" }
}
}
}
}'
Не уверен, в чем ошибка. Пожалуйста, помогите мне исправить синтаксис для нескольких столбцов, но не для всех.
Комментарии:
1. какова ваша эластичная версия? пожалуйста, предоставьте эластичный ответ
2. Я могу создать индекс для нескольких столбцов, передав cql_collection. «did»: {«type»: «text», «cql_collection»:»singleton» }
Ответ №1:
Ваш синтаксис правильный для создания индекса для нескольких столбцов в существующей таблице. Убедитесь, что индекс еще не существует, и ваше пространство ключей и имена таблиц указаны правильно.
Комментарии:
1. Проверял их несколько раз. Все верно, и этот индекс не существует
2. Я могу создать индекс для нескольких столбцов, передав cql_collection. «did»: {«type»: «text», «cql_collection»:»singleton» }