选择在ApacheIgnite中以独占方式将表存储在磁盘上

选择在ApacheIgnite中以独占方式将表存储在磁盘上,ignite,Ignite,据我所知,Apache Ignite的本机持久化模式允许在内存中存储尽可能多的数据,以及磁盘上可能剩余的数据 是否可以手动选择要存储在内存中的表和只存储在磁盘上的表?如果我想节省成本,我应该给Ignite大量的磁盘空间和少量的内存吗?如果我知道一些表应该尽可能快地返回结果,而其他表在速度方面的优先级较低(即使访问频率较高),该怎么办?是否有任何功能可以在表级别或任何其他级别将数据存储到内存中进行优先级排序?您可以定义两个不同的数据区域-一个具有少量内存并启用持久性,另一个不具有持久性,但具有更大

据我所知,Apache Ignite的本机持久化模式允许在内存中存储尽可能多的数据,以及磁盘上可能剩余的数据


是否可以手动选择要存储在内存中的表和只存储在磁盘上的表?如果我想节省成本,我应该给Ignite大量的磁盘空间和少量的内存吗?如果我知道一些表应该尽可能快地返回结果,而其他表在速度方面的优先级较低(即使访问频率较高),该怎么办?是否有任何功能可以在表级别或任何其他级别将数据存储到内存中进行优先级排序?

您可以定义两个不同的数据区域-一个具有少量内存并启用持久性,另一个不具有持久性,但具有更大的最大内存大小:

您不能拥有缓存(其中包含表的行)以独占方式存储在磁盘上

当您向表中添加一行时,它将被存储在表中,该表始终位于RAM中。稍后,它可能会通过进程刷新到磁盘,该进程将使用检查点页面缓冲区,该缓冲区也位于RAM中。因此,您可以有一个单独的内存使用率较低的区域(请参阅另一个答案),但不能在磁盘上独占数据

当您访问数据时,它也总是从磁盘拉到持久内存中