如果我有一个表的结构是这样的:多表连接以提高性能?
交易[TRANSID,...]
文件[的DocID,TRANSID,...]
签名者[SignerID,...]
签名[SigID,的DocID,SignerID,...]
而业务逻辑是这样的:
-
个
- 事务可以有多个文档
- 文件可以有多个签名
- 而同一签名人 有 同一事务
所以,现在我的实际问题中的 多个文档的多个签名:
如果我想要查找某个特定事务中的所有文档,如果我还将TransID和DocID存储在Signer表中,性能会更好,那么我可以e较小的连接。否则,我必须通过签名>文档>交易>凭证加入交易中的所有文件。
我认为在Signer表中拥有很多关系真的很麻烦,但这样做看起来并不“正确”(似乎是更新的噩梦),但我可以看到它可能会更好直接连接的性能。思考?
TIA!
+1:“也似乎是更新的噩梦”。关。这是一场更新的噩梦。事实上,我们通过规范化来防止更新的噩梦 – 2010-03-09 00:04:07
+1 - 规范化是关键。另外,建议不要过早优化的额外功劳! – 2010-03-09 01:37:48
优秀 - 谢谢大家! – EdenMachine 2010-03-11 14:41:23