2012-12-19 21 views
0

我正在研究一個項目,我們正在向多個批發商的後端系統界面規範。這裏是我們正在與,可插拔數據庫接口

  1. 每個批發商有多個產品,10,000以上。每個批發商都爲其產品定製價格。
  2. 被訪問的批發商名單將在未來持續增長,因此可能有1000個批發商可以被系統訪問。
  3. 批發商在地理上分散。
  4. 該系統的界面將允許用戶選擇他們想要的批發商並瀏覽他們的產品。
  5. 產品價格更新應實時反映在網站上。所以,如果批發商更新價格,它應該立即在網站上提供。
  6. 系統應該是數據庫不可知的。
  7. 這個系統應該很容易在批發商那裏建立起來,並且在他們的日常活動中最小化侵入性。

最初,我想爲我們的每個批發商創建數據庫,但未來可能有1000多個批發商,就性能和存儲而言,這是最佳選擇。 直接查詢批發商數據庫而不是在本地存儲他們的數據會更好嗎?我們可以做到這一點,仍然保持數據庫不可知論? 對於這樣的實現,最好的技術棧是什麼?我需要某種ORM工具。

首選基於Java的框架和技術。

謝謝。

+0

你想用什麼技術? (C#,Java,...) – Beachwalker

+0

我們正在尋找基於Java的技術。 – sotn

+0

啊,那麼我建議你去Hibernate。如果你喜歡...請不要忘記投票; ;-) – Beachwalker

回答

0

如果您想創建一個可以切換數據庫的軟件,我建議使用Hibernate(或者如果您使用.Net,則使用NHibernate)。

Hibernate是一個ORM,它不依賴於特定的數據庫,這使您可以非常容易地切換DB。它已經在大型應用程序中得到了驗證,並且完全集成在Spring framework中(但也可以在沒有Spring框架的情況下使用)。 (Spring.net是使用.Net的等價物)

Spring是構建大型可伸縮應用程序(包含IoC容器,數據庫訪問層,事務管理,支持AOP等等)的良好技術堆棧。

維基給你一個簡短的概述:

http://en.wikipedia.org/wiki/Hibernate_(Java

http://en.wikipedia.org/wiki/Spring_Framework

它會更好查詢批發商數據庫,而不是直接在本地存儲其數據的 ?

這取決於訪問遠程數據的可用性和延遲。數據庫本身有幾個可通過多個服務器實例保持同步的可能性。問問自己,如果批發商數據庫(部分)脫機,應該會發生什麼。也許不是所有的數據都需要重複。

我們可以做到這一點,仍然是數據庫不可知的嗎?

是的,看到我的答案與ORM(N)Hibernate相關。

對於這樣的實現,最好的技術棧是什麼?

「最佳」取決於您的要求。我喜歡春天。如果你使用.Net,內置的ADO.NET實體框架也可能適用。