选择在Apache Ignite中将表专门存储在磁盘上

问题描述 投票:1回答:2

我理解Apache Ignite的本机持久性模式允许在内存中存储尽可能多的数据 - 以及磁盘上潜在的剩余数据。

是否可以手动选择我要存储在内存中的表以及我想要独占存储在磁盘上的哪个表?如果我想节省成本,我应该给Ignite一大堆磁盘空间和少量内存吗?如果我知道某些表应该尽可能快地返回结果,而其他表在速度方面具有较低的优先级(即使它们被更频繁地访问),该怎么办?是否有任何功能可以将数据存储优先于表级别或任何其他级别的内存?

ignite
2个回答
3
投票

您可以定义两个不同的数据区域 - 一个具有少量内存并启用持久性,另一个没有持久性,但具有更大的最大内存大小:https://apacheignite.readme.io/docs/memory-configuration


0
投票

您不能将缓存(包含表的行)专门存储在磁盘上。

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

当您访问数据时,它也将始终从磁盘拉到耐用内存。

© www.soinside.com 2019 - 2024. All rights reserved.