What are the memory handling capabilities of YugaByte DB?

#1

Can we control the amount of memory initially claimed by YugaByte? http://127.0.0.1:7000/memz. What is the minimum amount of memory that is required per OS platform?

#2

Yes we can limit the amount of memory initially claimed by YugaByteDB. By default YugaByte will allocate 10% of total system memory to the yb-master process and 85% to the the yb-tserver process. You can control this behavior by passing the --memory_limit_hard_bytes flag to both processes. Our best practice is to use the 85/10 ratio mentioned earlier for the yb-tserver/yb-master processes.

If you are utilizing yb-ctl for launching YugaByteDB in your environment, you would start YugaByteDB via the following command:

$ yb-ctl start --tserver-flags="memory_limit_hard_bytes=4294967296"

This would allocate 4GB to the yb-tserver process.

The smallest instance we routinely test/support is 2 cores / 3.75GB (c4.large in AWS terms). How much memory you need will ultimately depend on your application needs.