2017-08-26 57 views
0

我试图导入JSON数组文件到使用下列命令elasticsearch,无法将json数组文件导入到elasticsearch索引中?

curl -XPOST 'http://localhost:9200/unified/post/1' -d @unified.json 

curl -XPOST 'http://localhost:9200/unified/post/_bulk' --data-binary @unified_1.json 

但是,它是扔错误消息作为

{ “错误”:{ “root_cause”:[{“type”:“mapper_parsing_exception”,“reason”:“无法解析”}],“type”:“mapper_parsing_exception”,“reason”:“解析失败”,“caused_by”:{键入“:”not_x _content_exception“,”reaso n“:”压缩器检测只能在某些xcontent字节或压缩的xcontent字节上调用“}},”status“:400}

任何人都可以帮我解决这个问题。

+1

你能显示你想要导入的文件吗? – froosty

+0

批量api不会期望json输入。这可能是一个重复的https://stackoverflow.com/questions/33340153/elasticsearch-bulk-index-json-data – dshockley

+0

输入文件将如下所示:[{“name1”:“value1”},{“name2 “:”value2“},....]。那么,你能指导我们吗? –

回答

0

问题出在“@ unified_1.json”。看来里面的数据并不遵循所需的适当的json结构。

+0

json文件由jsons数组组成。 –

+0

json文件应该具有以下结构。 {“field1”:“value1”} {“index”:{“_index”:“test”,“_type”:“type1”,“_id” _index“:”test“,”_type“:”type1“,”_id“:”2“}} {”field1“:”value1“} action then document json .. not as json array。 请发布一小部分文件来检查它 – ZiadM