For the beginning MS should not have stuffed SQL Server with XML, JSON, columnstore, blob's other big data features which have nothing to do with relational algebra.
Placing big chunks of barely structured data into SQL Server tables makes inserts and updates "huge" (as David Poole mentioned) , transactions infinitely long, locking unbearable. To beat the locking people resort to replications - which inflates databases even worse, without actually resolving the locking issue (replication process holds its own locks as well).
Placing those non-relational things into separate data units would allow distributing databases quite easily. If instead of updating blobs they'd update pointers to those blobs then transactions would be small and locks instantenious.
For 15 years MS was driving SQL Server to the wrong direction in terms of scalability. Even if they do a U turn right now it will take some time to return to the starting point. And from there - they can only play a catch - up game. Which they are trying to play now, anyway.