Data Region's pagesize vs objectsize vs eviction

classic Classic list List threaded Threaded
3 messages Options
pvprsd pvprsd
Reply | Threaded
Open this post in threaded view
|

Data Region's pagesize vs objectsize vs eviction

Hi,

I have few questions on best practices for pagesize and eviction policy,
based on the object size.
Our average object size is 85K
No persistence enabled for data region
Eviction enabled
Third party persistence for read-through and write-through

Questions:
1. What is the preferred page-size? 16K or more (if supported by ignite
2.8.0)? In another topic, I read 16K is not good; as it does 16K data
persist to disk while persisting. In our case persistence is off; so 16K or
more is preferred, as it is in-memory operation?
Or there any other benefits/reasons to use a page-size less than 16K?
2. When a big object is stored in multiple pages, how eviction make sure
that all the parts of the object are evicted completely. Does it support
eviction of big objects, if they span across multiple pages?
3. Is there a way to see the page memory data? pages, and how objects are
stored in them?

I am sure, have missed few topics from docs, so want to understand the
relation between these 3 entities.

Many thanks in advance.




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
pvprsd pvprsd
Reply | Threaded
Open this post in threaded view
|

Re: Data Region's pagesize vs objectsize vs eviction

When we tried 16K as pagesize, and eviction enabled to LRU2, we found that
below 2 messages after sometime:
1. Too many failed attempts to evict page: 30
2. Possible starvation in striped pool.

Can you please suggest, what is the recommended pagesize and best practices
here.

Thanks




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
akurbanov akurbanov
Reply | Threaded
Open this post in threaded view
|

Re: Data Region's pagesize vs objectsize vs eviction

Hi,

The best candidate for page size would be definitely the block size of the
device that you use. I would recommend to make a small test for your
deployment setup where you will load some synthetic dataset and choose page
size based on this, if you want to be sure that you got the best option.

There is a page eviction tracker that chooses the page to be evicted.
Another task that this tracker performs is collecting links from evicted
data page to real entries and evict them as well.

I guess walking through page structure is possible with some internal API
used, but I don't know anything that is immediately available to use for
this purpose.

Could you please provide some logs and thread dumps for your case, if it is
possible?

Best regards,
Anton




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