Distributed SQL databases were created to address the scalability and availability limitations of traditional SQL databases, while retaining the relational model and ACID transactions. They work by partitioning and distributing data across multiple servers to improve scalability, while providing consistency, transactions, and other features lacking in NoSQL databases. CockroachDB is one example of a distributed SQL database that addresses these issues through its architecture.