Two main techniques can be used to generate snapshot views: at file level or at block level. The file level technique is slow, resource consumming, and may lead to inconsistencies.
On contrary, the block level one is instantaneous (aka "atomic") and uses very little resources. However it requires an advanced firmware, which is exactly what the Linux Operating system can provide.
So we proudly (and efficiently) use block level snapshot, as all professional (and very expensive) storage systems do.