2012-09-01 62 views
0

我需要爲在線廣告項目設計一個實時統計系統。我需要存儲網址展示次數,點擊次數,每次展示展示的關鍵字數量等計數。流量可以假定爲每秒大約15000次展示,但應該可擴展到每次展示次數> 100000次第二。數據庫操作顯然是高度寫入密集型的,需要快速的併發寫入。我應該使用什麼類型的數據庫,以及如何設計數據庫體系結構?設計實時統計系統時涉及哪些廣義概念?

我是這個領域的真正新秀,我不確定如何繼續。我對NoSql數據庫沒有太多的經驗,我不確定這種規模的操作是否可以通過像MySql或MS SQL Server這樣的關係數據庫來實現。

任何幫助將不勝感激!

謝謝。

+0

我還沒有嘗試過實現任何東西,我只是在設計系統的過程中。我的問題是,因爲我沒有與這個規模的任何工作,我無法繼續。我從來沒有與分佈式數據庫等工作。這就是爲什麼我的問題更多的是在什麼廣泛的概念將涉及設計這樣一個系統,以便我可以閱讀它們。我不需要直接的答案。 – amaron

回答

0

我應該使用什麼樣的數據庫

平均4歲的臺式PC運行的是Windows,ESENT的NoSQL是capable of 70k inserts/second(小型記錄)。而且,它確實可以做快速的併發寫入。它甚至具有「託管更新列」功能,允許您在不鎖定記錄的情況下更新int32列值,即同時進行。

數據庫架構僅取決於您要收集的確切數據。

P.S.你的任務對我來說聽起來很難。一個問題是可伸縮性:如果要橫向擴展,即通過添加服務器,您最好早點決定。如果是的話,它會影響到架構很多。另外,您將如何獲得的數據量? Web服務器無法處理每秒100k個請求。