Skip to content

Ignite易失性存储

1.概述

Ignite 易失性存储面向高性能存储,但不提供数据持久化。

为数据区启用纯内存模式后,Ignite 会将数据区中的所有数据存储在内存中,集群关闭时数据将丢失,因此请确保有一个单独的数据区用于持久化存储。

2.存储配置

每个 Ignite 存储引擎可以有多个存储配置,每个配置都具有以下属性:

属性默认值描述
engine要使用的存储引擎名。
name数据区名。
initSize256 * 1024 * 1024分配给数据区的初始空间。
maxSize256 * 1024 * 1024分配给数据区的最大空间。
evictionModeDISABLED退出算法。可选值:DISABLEDRANDOM_LRURANDOM_2_LRURANDOM
evictionThreshold0.9退出过程的触发阈值。
emptyPagesPoolSize100Ignite 将尝试保留的最大空白页数。
pageSize16384存储的页面大小(字节)。
memoryAllocator.typeUnsafe内存分配器配置,用sun.misc.Unsafe来提高性能,目前没有其他选项可用。

3.存储引擎配置示例

在 Ignite 3 中,配置文件支持 HOCONJSON 格式。配置文件有一个名为ignite的根节点,所有配置项都是该节点的子节点、孙节点等。下面的示例是使用纯内存模式的数据区的配置:

json
{
  "ignite" : {
    "storage" : {
      "profiles" : [
        {
          "name" : "aimemory",
          "engine" : "aimem",
          "replacementMode" : "CLOCK"
        }
      ]
    }
  }
}

然后就可以在分布区配置中使用存储配置(在本例中为aimemory)。

18624049226