0

我正在尝试使用 VoltDB 的 csvloader 实用程序将数据库表加载到 VoltDB 数据库中。当我试图加载一个大小为 5GB 的表时,Voltdb 吃掉 RAM 的速度非常快,以至于可用 RAM 从 55 GB 变为 200 MB,然后 VoltDB 进程被系统杀死。

这可能是什么原因以及为避免这种情况而建议的 VoltDB 设置是什么?

4

1 回答 1

2

您正在加载的表是否已分区?这是要检查的第一件事,因为如果您在单个服务器上有默认的 sitesperhost=8,并且该表没有分区,那么 8 个分区中的每个分区中都会有该表的完整副本。如果表是分区的,则数据基于分区键列的值的散列分配在分区之间分布。

如果它已分区并且您仍然无法加载所有数据,那么接下来要查看的是架构。规划指南中有一些公式描述了给定数据类型和索引的内存使用情况。VMC 界面还有一个大小调整工作表,可根据架构为您提供最小值和最大值。您还可以发布您尝试加载的表的定义,以及您在其上定义的任何索引,我们可以更多地解释它每行将使用的字节数。

于 2016-10-25T18:15:40.277 回答