When you take a snapshot the primary disks (vmdks) are effectively frozen and changes will start being written to a delta file. So for example say you have a 100GB VM which hosts a 50GB database. You take a snapshot of the VM then immediately do a full backup of your database to a file. The footprint of that VM will now be 150GB because you have the original 100GB vmdk file plus the delta file which is around 50GB (the database backup file is a change from the original baseline). If you upgraded the OS as well the delta file could be nearer 100GB so you need to be careful and ensure you have adequate free space to cover the work you are undertaking.
A general recommendation with snapshots is you keep about 25% space on your datastores free to accommodate snapshots but this may need to be more or less depending on your workloads. If you have one VM on a data store and are doing the kind of activity above you might need 100% free space.
When you have a data store with a larger number of VMs the snapshot activity / usage will often average out but if you have fewer larger VMs you can be more prone to snapshots taking up a larger proportion of the data store so you need to factor these things in. The other recommendation is not to leave snapshots hanging around - 72 hours is the general guideline but again this can vary depending on usage.
Large DB servers is something I've often seen catch people out in the past for all the reasons above. Once the disk is full then everything is going to hault because it can't commit I/O operations.