我即将扩展另外50多个表的数据库架构(在MySQL中)。其中大约15-20个将引用表File
(wchich存储我项目中创建或上传文件的数据)问题是,我应该使用什么程序:
File
表我问,因为,如果我选择第一个选项,某个File
会有大量行进行CRUD操作(使用where
clausule)慢(我猜)。那么,您认为什么是最好的想法?
答案 0 :(得分:1)
保留一个由所有其他人引用的中心File
表,除非File
中存储的不同类型行的属性明显不同。换句话说,如果要在File
表中为不同的关联类型存储不同的文件元数据集,您可能会发现必须为不同的元数据类型提供不同的文件存储表。
但是,如果您通常为所有关联类型存储同一组文件二进制数据,文件名,MIME类型等,则它属于一个表。
如果预计该表会变得非常大,请考虑partitioning其存储空间。通过适当的索引,CRUD操作可以在数百万行上执行。