我从Eclipse中的java代码访问elasticsearch并将所有数据转储到本地驱动器。大约有1GB的数据。
我的程序工作到300MB的数据但之后我尝试在eclipse中运行我的代码时抛出以下错误:
{
"error" : "OutOfMemoryError[Java heap space]",
"status" : 500
}
我在网上看到了在Run>下添加-Xmx2048M
的提及为我正在运行的类运行Config。我试过并重新启动eclipse,仍然得到同样的错误。
请指教。感谢。
答案 0 :(得分:0)
您是否尝试将整个数据存储到内存中? 不要那样做。
尝试使用Java中的流API,一旦流已满,它将把数据转储到二级存储。您可以根据可用的RAM定义最大缓冲区大小。
答案 1 :(得分:0)
看起来错误消息来自Elastic搜索,而不是来自您的Java程序。
使用this page为弹性搜索配置更大的堆。