Some points from practice:
1) if you need high performance -> block; if you need huge capacity -> object; For example we're yet to see a database that needs 250k IOPS and is 1PB.
2) commodity vs. specialized HW - no matter how much spell is put on specialized HW by vendors delivering it most cases its simply not true that their solution can out-perform a good SDS implementation on standard hardware And no, good SDS does not need a FS underneath. Not the case with Ceph, but there are enough examples.
3) open-source or not - in most cases it's price discussion, however there is nothing is free in life. A open-source project comes DIY - you spend (tens, sometimes hundreds of) thousands in time and salaries. Proprietary comes "out of the box", so there is a trade off between time and money.
Also open-source solutions usually rely on a number of other solutions to provide vital functionality, which adds layers of complexity, inefficiency and risk. For example - unnamed (mentioned in the article) opesource system needs $10k a piece storage nodes and proprietary alternative needs $2k/piece storage nodes. That's 5x difference on money spent for HW. Again - you always pay in one way or another and at current stage (for good or bad) opensource alternatives simply loose on price/performance and price/functionality to proprietary alternatives.