How to store schema-less data efficiently in a relational database?
Some really nasty problems would happen with these tables (idea)


Data Redundancy (duplicated data) what you need to keep in synchronisation (and you do you check this because MySQL doesn't have an nice JSON to records function?)
You can't force correct values on the database (say goodbye to data integrity and hello to garbage-in garbage-out data) example key birthdate could have value "hello"


And you need some kind of pivot query to fetch the key/values

If you really need dynamic key values (EAV) storage there are some more options:


Maybe MySQL 5.6 NoSQL using the InnoDB memcached Plugin
XML -> query with xpath
RDF
NoSQL like MongoDB
MariaDB dynamic columns and MariaDB also supports json.