导入JSON文件elasticsearch
curl -XPOST "http://localhost:9200/<my_index_name>" -d @<absolute_path_to_my_json_file>
然后,当我试图使用来获取数据
它给我的数据只为我的JSON文件的第一行。 (包括其他的东西 - 设置,映射,别名等)。 但为什么它无法加载整个json文件? 顺便说一句,我正在使用ES 2.4.0。如果我必须使用批量,那么语法是什么?
你能分享你的json结构吗?在你的例子中,你只需设置一个索引名称。 要将没有类型和id值的数据注入到URI中,您必须在json文件中定义它们。
我的json文件在每一行中有一个元素(一行中有一个元素,而不是多行)。每行(元素)都有许多键:值对。这是我在json文件中的所有内容。那么如何在json文件中定义类型和id? –
使用Bulk API'curl -s -XPOST localhost:9200/_bulk --data-binary @
不知道问题出在我的json文件本身。但是在发布之后,我使用了GET命令来查看我的数据。它显示一个额外的ID。可能是什么问题呢 ?它的工作很好,但一些json文件。无论如何,非常感谢尼古拉斯。 –
GET index
实际上并没有进行搜索。
您还需要运行诸如GET index/_search
之类的东西。
我想在这里添加一件事。当我使用ES 1.4.4时,我能够看到数据。现在我改为2.4.0。它没有显示我的数据.../_搜索。 –
而不是'-d'您通过卷曲发送文件时需要使用'--data-binary'。 – Val
尝试使用--data-binary。它给出了{“确认”:true}。但是当我使用get命令查看数据时。它在第二次击中时为空。使用此命令 - curl -XGET“http:// localhost:9200//_search?pretty = true” –
我想在此添加一件事。当我使用ES 1.4.4时,我能够看到数据。现在我改为2.4.0。它没有显示我的数据.../_搜索。 –