我對編碼有點新,並且似乎在圍繞如何有效地爲我的應用程序存儲數據而苦苦思索。 (我正在Laravel嘗試使用mySql)數據庫設計/有效管理數據
我意識到這個問題可能傾向於針對具體的意見,但我確實在尋找明顯的錯誤假設的指針,或者向着最佳實踐。
我將跟蹤大量郵件,就好像它們是批量電子郵件管理系統中的信用一樣。一個消息批次可以使用不確定數量的信用來發出全批消息。用戶
組就能如果他們有信用這麼做發送消息,一個解決方案,我想到的是有一個表:ID,user_group_id,債務/信用,reference_code - 凡user_group_id將被鏈接對於用戶所屬的組,借記/貸記欄可以保存(消息相關交易的)正數或負數,並且reference_code將跟蹤交易的類型。借方/貸方交易將出現在用戶組帳戶收到新貸方(購買的新貸記塊)的地方,或者在借款示例的情況下,批發郵件已發送。
所有這些背景導致我的問題..我仍然沒有爲user_group的可用信用數量保留單個值。在能夠發送新批次之前,我應該每次運行數據庫查詢時總結所有正面和負面交易的「會計」,以確定用戶是否「處於黑色」,以便能夠發送更多消息批次,或者我應該有一張額外的桌子,並分別保留他們可用的積分總額的結果?
如果我確實存儲了總可用積分值本身,那麼應該何時更新這個單一值,在我的應用程序執行的每個消息相關任務結束時? *用戶增加新的信用,更新總額 - 用戶發送批次,更新總數..等