我有一个我正在使用的Web应用程序,它使用MySQL数据库作为后端,我需要知道在我继续进行之前,对我的情况有什么好处.
简单地说,在这个应用程序中,用户将能够使用任何数字字段(他们决定)构建自己的表单,现在我将它全部存储在由外键链接的几个表中.我的一位朋友建议,为了保持"简单/快速",我应该将每个用户的表单转换为平面表,以便查询来自它们的数据保持快速(如果增长很大).
我是否应该将数据库标准化为使用外键(索引等)汇集到关系表中的所有内容,还是应该为用户创建的每个新表单构建平面表?
显然,创建平面表的一些好处是数据分离(安全性),并且会降低查询速度.但是,我会从中获得多少收益呢?我真的不想要10000个表,并且要丢弃,改变和添加所有的时间,但如果它会比我更好...我只需要一些输入.
谢谢