Diseño de la base de datos: ¿a EAV o no a EAV?

Digo que tengo una entidad que tendrá muchos atributos, algunos que conozco ahora y otros serán definidos por el usuario. ¿Cuál es la mejor manera de modelar esto?

1) ¿Tengo una tabla principal y la relaciono con una tabla secundaria de pares de nombre y valor? Todos los atributos van en la tabla secundaria EAV.

OR -

2) ¿Pongo los atributos más comunes (no todos los usuarios los necesitarán, por lo que espero muchas entradas NULL) en la tabla principal y tengo la tabla EAV secundaria para los atributos definidos por el usuario?

OR -

3) ¿Algún otro enfoque que no haya pensado?

Respuestas a la pregunta(3)

Su respuesta a la pregunta