This document discusses distributed data stores and NoSQL databases. It begins by explaining how relational databases do not scale well for large web applications. It then discusses various techniques for scaling relational databases like master-slave replication and data partitioning. It introduces NoSQL databases as an alternative for large, unstructured datasets. Key features of NoSQL databases discussed include flexible schemas, eventual consistency, and high availability. Common types of NoSQL databases and some advantages and limitations are also summarized.