Why are there 2 clock rates (core vs memory clock) in the GPU?
Your picture is just a way to generate different clock signals from one clock. It has no relation to GPU and Memory clocks on a product.

The GPU and Memory clocks are often different because the GPU is able to run on a higher clock frequency. Using a higher clock frequency will make it able to more operations in less time.

In general Memory cannot keep up with the GPU's speed because it is outside the main GPU, I mean, it is not the same chip as the GPU. The memory is on different chips. The connections to those chips have speed limitations. The memory chips themselves have speed limitations. So the memory is run at a slower clock speed than the GPU.

The difference between those seeds can be handled by buffers and cache memories.

Ideally the memory would run at the same speed as the GPU but that is either not possible or very expensive. So a compromise is made in using different clock frequencies for GPU and RAM Memory.