With hindsight, the two technological breakthroughs that proved decentralized databases possible were Bitcoin and Zerocash. Bitcoin showed that state-machine replication (SMR) is solvable in a distributed, permissionless, partially synchronous setting with Byzantine fault tolerance. Zerocash showed that zero knowledge succinct non-interactive arguments of knowledge can be used to ensure the confidentiality of transactions in this SMR setting.
The tech is improving rapidly and it’s pretty easy to see where things are going from here: soon we’ll have general purpose decentralized databases where data is open as open source code is open. In fact, state-of-the-art blockchains can be viewed as special (financial) purpose decentralized databases.
As to why decentralized databases are desirable: imagine if you could fork databases in a completely permission-less manner like you can fork code. This is how web development would look like:
You, the programmer, take a look at a public data schema (eg. a smart contract that implements the ERC-721 interface) and decide to build on top of it. Then, a user, who has already interacted with what you built on, decides that they like what you built and lets your app use their data. You, the programmer, can be sure that the data you built on remains available, and the user can be sure that they'll be able to port the data produced by your app into new apps.