我计划开发一个简单的门户,让我的供应商登录并查看他们的销售历史。(这只是为了查看的目的,所以我将SQLite视为goto,因为此时不存在写入/锁定问题--但它可能会成为MySQL)
门户的本质意味着用户权限意味着VendorA只能看到供应商的库存/销售/等,而不是其他任何人的。我对webapp的开发并不熟悉,所以我不确定是否更明智的做法是用表扩展数据库,以便每个供应商都能获得自己的tbl_vendor_a_sales、tbl_vendor_a_inventory、tbl_vendor_b_sales等新表。(?)或者我应该有三张大表,里面存储着我的供应商的所有信息(tbl_orders,tbl_sales)?
300家供应商中的每一家都可能有不到30,000份销售记录和50至200 k的库存记录。
我认为走2-3个大表的后一条路线是最优的,因为如果需要的话,我可以更容易地完成任何汇总报告--但是我仍然想知道我在正确的轨道上。
发布于 2013-04-07 09:39:40
对这样的表进行分区作为优化可能是有意义的,但是只要您没有性能问题,并且没有实际测量到明显的改进,这将是不成熟的。
如果您真正关心安全性,可以将每个供应商的数据放入一个单独的数据库文件中,将供应商登录与web服务器的用户管理集成起来,并使用文件权限只允许一个供应商访问每个文件。但是,您的网站托管不太可能允许您这样做。
https://stackoverflow.com/questions/15858666
复制相似问题