What is the difference between different logging backends (File, MAVlink, Block)?

I would like to enable routine logging of flight data from my Cube Orange onto its SD card in case telemetry gets lost during flight, but I’m not sure what the significance is of the three different choices offered for LOG_BACKEND_TYPE. I haven’t yet been able to find a doc page that spells out what these are.

So what is the difference between the “File”, “MAVlink”, and “Block” backends, and when might I prefer one over the other (or perhaps more than one)?