我們擁有一個每月收集大量數據並進行相當先進的計算的系統,可以進一步增加數據庫。由於我們有客戶的要求,三年前我們需要存儲數據以實現快速訪問,並且我們必須能夠訪問較早的數據(最多十年),但這可能會導致性能低下並需要一些工作。我們希望避免數據庫及其表格不成比例增長的性能問題。是否有可能使用Nhibernate將對象分區到多個表中?
在討論過使用SQL Enterprise之後(由於我們還沒有掌握專有技術,所以成本很高,而且有很多陷阱),並且由於我們的系統有很多可以相互引用的表,所以我們傾向於創建一些歷史表我們以月度方式移動數據,並根據具體情況重新編寫基於參數的選擇查詢,以便在常規表格或歷史記錄中或兩者中進行搜索。
因爲我們也在使用NHibernate進行映射,所以我想知道是否可以創建一個映射文件來處理它自己(幾乎)使用某種polymorfism或繼承,其中每個對象存儲在不同的表中基於參數?
我知道這聽起來很複雜,陌生的,並且有其他的方法來執行這一點,但我這個問題,我寧願讓人們回答提出的問題,而不是給其他sugestions改爲使用。
我在想,有可能映射相同基類的兩個對象,每個被映射到diffent表,我們可以創建一個指定的子類,我們真正想要得到的查詢。 – 2012-02-20 15:35:02
這意味着你必須有兩種不同的類型並分別使用它們來查詢你的數據。除非你爲基類提供了一個單獨的表格來顯示在哪裏查找每條記錄,你不能使用基類來查詢。 – Beatles1692 2012-02-20 15:41:18