2016-07-16 97 views
0

我得到嘗試使用Elasticsearch API上傳JSON文件的錯誤,但我不斷收到此錯誤:Elasticsearch大批量上傳查詢

Caught exception while handling client http traffic, closing connection [id: 0x0d08b235, /172.17.0.1:33780 => /172.17.0.2:9200] 
org.jboss.netty.handler.codec.frame.TooLongFrameException: HTTP content length exceeded 104857600 bytes. 
    at org.jboss.netty.handler.codec.http.HttpChunkAggregator.messageReceived(HttpChunkAggregator.java:169) 
    at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) 
    at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) 

有沒有辦法來塊這容易嗎?

回答

1

你需要增加http.max_content_length值比默認(100MB)更大的事物:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-http.html

你需要小心使用這些值,而不是增加他們太多。到達節點的批量操作在被分割並被髮送到適當的節點進行進一步處理之前將暫時存儲在內存緩衝區中的隊列中(如果同時存在太多的話)。所以,如果你有太多的併發批量操作,並且這些操作足夠大,他們可能會使用大量內存。