我有一个带有 4 台 r3.4Xlarge 机器的 EMR 设置(总共 128GB(32G/节点)和 1000GB(250GB)SSD 分配给了alluxio)。
我已经加载了大约 650GB 的 ORC 数据。但我可以看到 3 名工人使用了 80% + 分配的空间,但其中一名工人只使用了 1%。
有什么方法可以在所有工作人员之间均匀分布数据?
提前致谢
通常,当Alluxio客户端从UFS读取数据时,客户端会将数据缓存到本地worker。如果数据分布存在较大的不平衡,则可能表明任务分布不均匀。
有一个 Alluxio 客户端配置参数可以改变缓存数据到 Alluxio 时的默认行为。例如,您可以设置:
alluxio.user.file.write.location.policy.class=alluxio.client.file.policy.RoundRobinPolicy
将写入位置策略更改为轮询,这将使数据更均匀地分布在工作人员之间。此配置参数必须在 Alluxio 客户端上更新,这取决于您使用的特定框架。