You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by Andrey Davydov <an...@gmail.com> on 2020/03/24 17:23:35 UTC

Persistent dataregion config

Hello,



Please help me to setup data region properly.



I would like to have region which can store up to
${config.node.total.memory.max} bytes, but only small part of data in RAM.



My current config (Ignite 2.7.6):



<bean class="org.apache.ignite.configuration.DataRegionConfiguration">

<property name="name" value="MyPersistDataRegion"/>

<property name="persistenceEnabled" value="true"/>

<property name="initialSize" value="${config.node.memory.initial}"/>

<property name="maxSize" value="${config.node.memory.max}"/>

<property name="pageEvictionMode" value="RANDOM_2_LRU"/>

<property name="evictionThreshold"
value="${config.node.memory.eviction.threshold}"/>

<property name="metricsEnabled" value="true"/>

</bean>



Please confirm three points:



  1. Total size will be ${config.node.memory.max}
  2. Total used ram size will be approximately ${config.node.memory.max}*${config.node.memory.eviction.threshold}
  3. Data will not be evicted from disk, only from RAM



Thanks.

Andrey.




Re: Persistent dataregion config

Posted by ezhuravlev <e....@gmail.com>.
Hi Andrey,

Sorry, Looks like mixed up eviction policy for data region and Expiry
Policy. Eviction Policy shouldn't work with persistence, it works only for
in memory data regions.

Evgenii



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Re: Persistent dataregion config

Posted by Evgenii Zhuravlev <e....@gmail.com>.
Andrey,

The default value works for most of the cases:
https://github.com/apache/ignite/blob/master/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java#L10634

Evgenii

чт, 26 мар. 2020 г. в 04:20, Andrey Davydov <an...@gmail.com>:

> Thanks a lot. What size recommended for checkpoint buffer size?
>
>
>
>
> On Wed, Mar 25, 2020 at 12:14 AM Evgenii Zhuravlev <
> e.zhuravlev.wk@gmail.com> wrote:
>
>> Hi Andrey,
>>
>> After enabling persistence, Ignite itself will be responsible for data
>> eviction from memory to disk and eviction mode or threshold can't be
>> changed for it. Parameters pageEvictionMode and evictionThreshold related
>> to the complete data eviction from Ignite(not from memory to disk) and more
>> designed for in memory cases.
>>
>> 1. Total memory, that will be used in offheap for this persistence region.
>> 2. No, for offheap, for this region, will be used ${config.node.memory.max}.
>> Also, don't forget about heap and checkpoint buffer size.
>> 3. With enabled pageEvictionMode, data will be evicted from disk too.
>>
>> Evgenii
>>
>> вт, 24 мар. 2020 г. в 10:23, Andrey Davydov <an...@gmail.com>:
>>
>>> Hello,
>>>
>>>
>>>
>>> Please help me to setup data region properly.
>>>
>>>
>>>
>>> I would like to have region which can store up to ${config.node.total.
>>> memory.max} bytes, but only  small part of data in RAM.
>>>
>>>
>>>
>>> My current config (Ignite 2.7.6):
>>>
>>>
>>>
>>>                         <bean
>>> class="org.apache.ignite.configuration.DataRegionConfiguration">
>>>
>>>                             <property name="name" value="My
>>> PersistDataRegion"/>
>>>
>>>                             <property name="persistenceEnabled"
>>> value="true"/>
>>>
>>>
>>>
>>>                             <property name="initialSize"
>>> value="${config.node.memory.initial}"/>
>>>
>>>                             <property name="maxSize"
>>> value="${config.node.memory.max}"/>
>>>
>>>
>>>
>>>                             <property name="pageEvictionMode"
>>> value="RANDOM_2_LRU"/>
>>>
>>>                             <property name="evictionThreshold"
>>> value="${config.node.memory.eviction.threshold}"/>
>>>
>>>
>>>
>>>                             <property name="metricsEnabled"
>>> value="true"/>
>>>
>>>                         </bean>
>>>
>>>
>>>
>>> Please confirm three points:
>>>
>>>
>>>
>>>    1. Total size will be ${config.node.memory.max}
>>>    2. Total used ram size will be approximately
>>>    ${config.node.memory.max}*${config.node.memory.eviction.threshold}
>>>    3. Data will not be evicted from disk, only from RAM
>>>
>>>
>>>
>>> Thanks.
>>>
>>> Andrey.
>>>
>>>
>>>
>>

Re: Persistent dataregion config

Posted by Andrey Davydov <an...@gmail.com>.
Thanks a lot. What size recommended for checkpoint buffer size?




On Wed, Mar 25, 2020 at 12:14 AM Evgenii Zhuravlev <e....@gmail.com>
wrote:

> Hi Andrey,
>
> After enabling persistence, Ignite itself will be responsible for data
> eviction from memory to disk and eviction mode or threshold can't be
> changed for it. Parameters pageEvictionMode and evictionThreshold related
> to the complete data eviction from Ignite(not from memory to disk) and more
> designed for in memory cases.
>
> 1. Total memory, that will be used in offheap for this persistence region.
> 2. No, for offheap, for this region, will be used ${config.node.memory.max}.
> Also, don't forget about heap and checkpoint buffer size.
> 3. With enabled pageEvictionMode, data will be evicted from disk too.
>
> Evgenii
>
> вт, 24 мар. 2020 г. в 10:23, Andrey Davydov <an...@gmail.com>:
>
>> Hello,
>>
>>
>>
>> Please help me to setup data region properly.
>>
>>
>>
>> I would like to have region which can store up to ${config.node.total.
>> memory.max} bytes, but only  small part of data in RAM.
>>
>>
>>
>> My current config (Ignite 2.7.6):
>>
>>
>>
>>                         <bean
>> class="org.apache.ignite.configuration.DataRegionConfiguration">
>>
>>                             <property name="name" value="My
>> PersistDataRegion"/>
>>
>>                             <property name="persistenceEnabled"
>> value="true"/>
>>
>>
>>
>>                             <property name="initialSize"
>> value="${config.node.memory.initial}"/>
>>
>>                             <property name="maxSize"
>> value="${config.node.memory.max}"/>
>>
>>
>>
>>                             <property name="pageEvictionMode"
>> value="RANDOM_2_LRU"/>
>>
>>                             <property name="evictionThreshold"
>> value="${config.node.memory.eviction.threshold}"/>
>>
>>
>>
>>                             <property name="metricsEnabled" value="true"/>
>>
>>                         </bean>
>>
>>
>>
>> Please confirm three points:
>>
>>
>>
>>    1. Total size will be ${config.node.memory.max}
>>    2. Total used ram size will be approximately ${config.node.memory.max}
>>    *${config.node.memory.eviction.threshold}
>>    3. Data will not be evicted from disk, only from RAM
>>
>>
>>
>> Thanks.
>>
>> Andrey.
>>
>>
>>
>

Re: Persistent dataregion config

Posted by Evgenii Zhuravlev <e....@gmail.com>.
Hi Andrey,

After enabling persistence, Ignite itself will be responsible for data
eviction from memory to disk and eviction mode or threshold can't be
changed for it. Parameters pageEvictionMode and evictionThreshold related
to the complete data eviction from Ignite(not from memory to disk) and more
designed for in memory cases.

1. Total memory, that will be used in offheap for this persistence region.
2. No, for offheap, for this region, will be used ${config.node.memory.max}.
Also, don't forget about heap and checkpoint buffer size.
3. With enabled pageEvictionMode, data will be evicted from disk too.

Evgenii

вт, 24 мар. 2020 г. в 10:23, Andrey Davydov <an...@gmail.com>:

> Hello,
>
>
>
> Please help me to setup data region properly.
>
>
>
> I would like to have region which can store up to ${config.node.total.
> memory.max} bytes, but only  small part of data in RAM.
>
>
>
> My current config (Ignite 2.7.6):
>
>
>
>                         <bean
> class="org.apache.ignite.configuration.DataRegionConfiguration">
>
>                             <property name="name" value="My
> PersistDataRegion"/>
>
>                             <property name="persistenceEnabled"
> value="true"/>
>
>
>
>                             <property name="initialSize"
> value="${config.node.memory.initial}"/>
>
>                             <property name="maxSize"
> value="${config.node.memory.max}"/>
>
>
>
>                             <property name="pageEvictionMode"
> value="RANDOM_2_LRU"/>
>
>                             <property name="evictionThreshold"
> value="${config.node.memory.eviction.threshold}"/>
>
>
>
>                             <property name="metricsEnabled" value="true"/>
>
>                         </bean>
>
>
>
> Please confirm three points:
>
>
>
>    1. Total size will be ${config.node.memory.max}
>    2. Total used ram size will be approximately ${config.node.memory.max}*
>    ${config.node.memory.eviction.threshold}
>    3. Data will not be evicted from disk, only from RAM
>
>
>
> Thanks.
>
> Andrey.
>
>
>