Как вставить данные в поиск elastics
Я новичок в Elasticearch, и я пытался в течение 2 дней вставить некоторые данные в Elasticearch. Я обнаружил в Google, что существует много страниц, помогающих создать индекс (мне не совсем понятно, что такое "индекс", означает ли это "вставить" в других терминах?). Тогда во многих местах есть какая-то команда curl, а я действительно нет знать, где выполнить эти строки кода для вставки данных. Пример:
curl -XPOST "http://[localhost]:9200/indexname/typename/optionalUniqueId" -d '{ "field" : "value" }'
Я использую Windows 7, и я установил Java и успешно запустилasticsearch. Может ли кто-нибудь показать мне более подробную информацию о том, как вставить данные в Elasticearch
Большое спасибо
Ответы
Ответ 1
Вы должны установить curl
двоичного в вашем компьютере первым. Вы можете скачать его здесь.
После этого распакуйте его в папку. Скажем, C:\curl
. В этой папке вы найдете файл curl.exe
с несколькими файлами .dll
.
Теперь откройте командную строку, набрав cmd
в start menu
. И наберите там cd c:\curl
и вы попадете в папку curl. Теперь выполните команду curl
которая у вас есть.
Во-первых, окна не поддерживают одинарные кавычки вокруг полей. Поэтому вы должны использовать двойные кавычки. Например, я преобразовал вашу команду curl как соответствующую.
curl -H "Content-Type: application/json" -XPOST "http://localhost:9200/indexname/typename/optionalUniqueId" -d "{ \"field\" : \"value\"}"
Ответ 2
Позвольте мне объяснить ясно. Если вы знакомы с rdbms.. Индекс - это база данных.. И индексный тип - это таблица. Это означает, что индекс - это набор типов индексов., например, сбор таблиц как базы данных (DB).
в NOSQL.. Индекс - это база данных и тип индекса - это коллекции. Группа коллекций как база данных.
Чтобы выполнить эти запросы... U нужно установить CURL для Windows.
Curl - это не что иное, как средство останова командной строки. Если вам нужен графический инструмент. Попробуйте
Плагин Sense для хрома...
Надеюсь, что это поможет.
Ответ 3
Чтобы протестировать и попробовать скручивать запросы из Windows, вы можете использовать клиентское расширение Postman Chrome. Это очень простой в использовании и довольно мощный.
Или, как предложено, вы можете установить утилиту cURL.
Пример запроса curl выглядит следующим образом.
curl -X POST -H "Content-Type: application/json" -H "Cache-Control: no-cache" -d '{
"user" : "Arun Thundyill Saseendran",
"post_date" : "2009-03-23T12:30:00",
"message" : "trying out Elasticsearch"
}' "http://10.103.102.56:9200/sampleindex/sampletype/"
Я также начинаю изучать ES и многое другое. Поэтому, пожалуйста, дайте мне знать, если у вас есть другие сомнения.
РЕДАКТИРОВАТЬ: Обновлены имя индекса и имя типа, чтобы быть полностью строчными, чтобы избежать ошибок и следовать соглашению.
Ответ 4
Я начал использовать curl
, но с тех пор перешел на использование kibana
. Вот еще немного информации о стеке ELK отastic.co (поиск Eastic, K kibana): https://www.elastic.co/elk-stack
С kibana ваши запросы POST
немного проще:
POST /<INDEX_NAME>/<TYPE_NAME>
{
"field": "value",
"id": 1,
"account_id": 213,
"name": "kimchy"
}
Ответ 5
Чтобы избежать использования завитушек или плагинов Chrome, вы можете просто использовать встроенные окна Powershell. В командной строке Powershell запустите
Invoke-WebRequest -UseBasicParsing "http://127.0.0.1:9200/sampleindex/sampleType/" -
Method POST -ContentType "application/json" -Body '{
"user" : "Test",
"post_date" : "2017/11/13 11:07:00",
"message" : "trying out Elasticsearch"
}'
Обратите внимание, что имя индекса ДОЛЖНО быть в нижнем регистре.
Ответ 6
Если вы используете KIBANA с эластичным поиском, вы можете использовать запрос RESt ниже, чтобы создать и вставить в индекс.
СОЗДАНИЕ ИНДЕКСА:
http://localhost:9200/company
PUT company
{
"settings": {
"index": {
"number_of_shards": 1,
"number_of_replicas": 1
},
"analysis": {
"analyzer": {
"analyzer-name": {
"type": "custom",
"tokenizer": "keyword",
"filter": "lowercase"
}
}
}
},
"mappings": {
"employee": {
"properties": {
"age": {
"type": "long"
},
"experience": {
"type": "long"
},
"name": {
"type": "text",
"analyzer": "analyzer-name"
}
}
}
}
}
СОЗДАНИЕ ДОКУМЕНТА:
POST http://localhost:9200/company/employee/2/_create
{
"name": "Hemani",
"age" : 23,
"experienceInYears" : 2
}
Ответ 7
Простые основы, Эластичное сообщество выявило индексирование, поиск, удаление операции в качестве веб-службы отдыха.
Вы можете взаимодействовать с эластичными, используя завиток или чувство (chrome plugin) или любой клиент для отдыха, как почтальон.
Если вы просто тестируете несколько команд, я бы порекомендовал использовать сенсорный хром-плагин, который теперь имеет простой интерфейс и довольно зрелый плагин.