What is the difference between NLM vs Open image denoise? also what is the "denoising data" in view layer properties?
Here is a nice explanation video by IBN-Blender 3d Artwork here.
From what I understood:
Open Image Denoise and NLM are two sorts of denoising modes. OID is faster and doesn't need a high sampling rate, it is ideal for animation. NLM is slower and needs a higher sampling rate, it is ideal for single image.
You can use OID either through the Render panel or through the Compositor. The second solution gives better results.
For the first solution, enable OID through Properties panel > Render > Sampling > Denoising > Render.
For the second solution, make sure you've deactivated any denoising in the Render panel, then go into Properties panel > View Layers > Passes > Data, and activate Denoising Data, it will create all the necessary output sockets in the Compositor Render Layers node.
Now open the Compositor, create a Filter > Denoise node, plug the Nosiy Image, Albedo and Normal output sockets of the Render Layers node into the Denoise, plug Denoise into the Output and Viewer nodes.