Практика показала, что в конечном счете сложные и универсальные property/value решения все равно разовьются до кеширования значений в полях рядом (совершенно нормально будет тригерами наполнять полупустые кеш-таблицы с 100500 полей).
Т.е. для скорости вы все равно создадите эти поля (иначе реляционные базы ну оооооооооооочень медленные), но наличие property/value подхода развязывает руки и дает больше возможностей в будущем.