As applications are becoming increasingly dynamic, the no- tion that a schema can be created in advance for an appli- cation and remain relatively stable is becoming increasingly unrealistic. This has pushed application developers away from traditional relational database systems and away from the SQL interface, despite their many well-established ben- efits. Instead, developers often prefer self-describing data models such as JSON, and NoSQL systems designed specif- ically for their relaxed semantics. In this paper, we discuss the design of a system that en- ables developers to continue to represent their data using self-describing formats without moving away from SQL and traditional relational database systems. Our system stores arbitrary documents of key-value pairs inside physical and virtual columns of a traditional relational database system, and adds a layer above the database system that automati- cally provides a dynamic relational view to the user against which fully standard SQL queries can be issued. We demon- strate that our design can achieve an order of magnitude improvement in performance over alternative solutions, in- cluding existing relational database JSON extensions, Mon- goDB, and shredding systems that store flattened key-value data inside a relational database.