Also I believe for RDB file creation when Redis' main process forks a new child process it uses Copy-on-write (CoW) technique to share cache data by referencing it through pointers instead of creating a new copy of existing data, which minimises memory footprint and decreases the snapshot creation latency.
Yes, that's correct. That's the correct understanding. Infact, this is one of the disadvantages of Snapshotting especially in high-write scenarios where memory is constrained. It eventually impacts the performance.
Also I believe for RDB file creation when Redis' main process forks a new child process it uses Copy-on-write (CoW) technique to share cache data by referencing it through pointers instead of creating a new copy of existing data, which minimises memory footprint and decreases the snapshot creation latency.
Yes, that's correct. That's the correct understanding. Infact, this is one of the disadvantages of Snapshotting especially in high-write scenarios where memory is constrained. It eventually impacts the performance.
great read. awesome article!!
Thanks Ashwani