我正在尋找關於建模各種實體及其文檔(二進制文件,如PDF,TIFF等)之間關係的最佳實踐的一些建議。這些實體是存儲在PostgreSQL數據庫中的標準JPA/Hibernate。文檔本身將存儲在MongoDb數據庫中。如何建模不同父實體和一個普通子實體之間的關係
該計劃是創建一個子實體來表示該文檔,該文檔包含需要檢索的二進制數據的id。但是這種關係會是什麼?
如果我簡單地創建一個,如果這些文檔實體爲每個父實體,那麼一個簡單的一對多關係就可以工作,但這似乎是多餘的。
我可以簡單地放一個表示文檔屬於哪個實體的「type」列,然後用一個名爲「id =?and type =?」的查詢來查詢文檔表。我想這會工作,但有一些關於我對任何一個都不是瘋狂的 - 只是不能把我的手指放在它:)也許這很好。
我看過的另一個選項(雖然我承認我以前從未使用過它,需要更多地研究它)是使用單向一對多連接表。但是,我不認爲這會起作用,因爲不能保證不會有重複的父鍵。我對所有基本關係表主鍵使用單個序列,這應該保證它,但它仍然聽起來不是一個好主意。
最後,我考慮過是否創建了一個實體,然後對每個父實體進行擴展,但我認爲這會有相同的缺陷 - 非唯一父ID的理論存在。
在我做出最終決定之前,我想看看社區可能提供的其他建議。
在此先感謝您的想法。
你找到答案了嗎?我也有同樣的問題。 – ps0604 2015-01-19 17:47:39