我正在開始一個新項目。這個項目目前正處於規劃和設計階段,但我可以考慮一個解決方案,但它似乎並不是最優化或組織的障礙。任何幫助表示讚賞。卡在複雜的數據庫設計上
我有以下用例:
- 用戶可以創建一個事件(如在物理事件,如賽跑或節),這是「協調器」。
- 可以爲此新事件分配零個或多個工作人員來處理事件。他們將可以訪問有關該事件的其他工具/數據。
- 此事件可能有零個或多個參與者通過此服務註冊。
- 沒有登記的用戶可能會發現關於該事件
我想換我圍繞如何創建有效存儲該信息的數據庫頭詳細信息的頁面。特別是如果我們計劃擴展到誰知道有多少事件。現在,我有以下的想法。數據庫設計還有更多,但它主要是用於驗證和用戶數據的數據,所以我沒有包括它 - 讓我知道是否有助於看到完整的設計。
USER
-----------
id (pk)
EVENT
-----------
id (pk)
coordinator (fk, references USER.id)
page
workers
participants
//workers and participants are lists of USER.ids
這很簡單,但我只能看到它在一個方向上的效率,而不是兩個。查詢查找任何給定事件的工作人員和參與者將非常簡單,但對於任何給定用戶查找事件將非常麻煩。
任何想法/評論都會非常有幫助。謝謝。
我不熟悉蒙戈或NoSQL的。不過謝謝你。 – Tim
是的,我也不是很熟悉它們。但是我喜歡的東西之一就是它實際上是一個有效的數據類型,它有一個字段作爲ID數組,這很容易查詢。 – GregL