运行ES 1.5.2 JAVA 1.8_45 Windows 2008 4个节点的32个核心128GB RAM 5TB SSD(每台机器)。我们什么时候需要大量的Elasticsearch堆?
我的目标是索引约25亿份文件。我高达8.1亿。每文档平均30k。
我现在有ES_HEAP_SIZE =30克
但我一直在经历大量的内存压力和STW暂停。示例:目前,一个节点总是使用90%以上的堆使用率,而其余节点则在30%至40%之间的任何地方滑行。所以看来,1节点不会GC?
集群索引(没有错误)记录和一些滚动搜索只发生2件事情。
尽我所能使用doc值。目前没有现场数据缓存(除了奇迹般小)和过滤器缓存非常小,每节点约100MB。
节点仍在尝试恢复,所以我只是不想完全停止集群并将RAM重置为10GB?
How I connect to the cluster in both bulk and scroll search...
// Do this once at application startup and re-use the client instance.
Settings settings = ImmutableSettings
.settingsBuilder()
.put("cluster.name", "xxxx")
.build();
client = new TransportClient(settings)
.addTransportAddress(new InetSocketTransportAddress("xxxx", 9300))
.addTransportAddress(new InetSocketTransportAddress("xxxx", 9300))
.addTransportAddress(new InetSocketTransportAddress("xxxx", 9300))
.addTransportAddress(new InetSocketTransportAddress("xxxx", 9300));
我正在使用TransportClient并使用4个节点的IP进行配置。它会不会是自己的循环?什么是好的堆大小? – user432024
这不是关于堆大小。你有不同行为的节点,这不应该发生。你的一个节点正在做其他人不做的事情。你使用路由吗? –
不是。顺便说一句,我更新了我的主要问题与我如何连接。我也有奇迹和kopf在浏览器中运行,查看不同的统计数据。浏览一个节点,但不是具有内存压力问题的节点。 – user432024