德鲁伊-设备上没有剩余空间(中间管理器)

时间:2018-11-01 21:47:27

标签: java amazon-ec2 memory-management druid

Druid集群,具有2个节点,其中1个具有代理服务节点,而其他节点则执行其余4个druid服务(协调器,重载,历史记录,MiddleManager)。 EC2机器类型为t2.xlarge。

我将数据导入Druid的目标是在1个数据源中记录1.5亿条记录,以测试Druid在消耗方面的能力,以秒为单位。

问题

我已将10M条记录加载到Druids数据源中。在此基准测试之后,由于中层管理者服务,我面临 Java.io.IOException:设备上没有剩余空间。谁能指导我进行适当的配置,以在庞大的数据块中加载数据。

我尝试了以下选择作为“尝试并尝试”策略:

  • 中间管理器和历史服务的JVM内存增加
  • 历史节点的缓冲区大小增加到300 GB
  • 重新启动EC2计算机并重新启动正在运行的服务

enter image description here

1 个答案:

答案 0 :(得分:0)

请检查以下配置中的tmp目录设置。

grep -r“ var” conf / druid / cluster / data

conf /德鲁伊/集群/数据/middleManager/jvm.config:-Djava.io.tmpdir=var/tmp conf /德鲁伊/集群/数据/middleManager/runtime.properties:druid.indexer.task.baseTaskDir=var/德鲁伊/任务 conf /德鲁伊/集群/数据/历史/jvm.config:-Djava.io.tmpdir=var/tmp conf /德鲁伊/集群/数据/历史/runtime.properties:druid.processing.tmpDir=var/德鲁伊/处理 conf / druid / cluster / data / historical / runtime.properties:druid.segmentCache.locations = [{“ path”:“ var / druid / segment-cache”,“ maxSize”:300000000000}]

在我的情况下,var文件夹位于一个很小的卷中(您可以使用“ df -h”进行检查。),我必须将其更新为/ data / var,它具有更多的空间。

希望这会有所帮助。