2012-11-30 58 views
-1

我有一個簡單的基本問題。假設我有一個像Facebook,Gmail等大型網站。該網站每天可能會保存數百GB的信息。我的問題是這些網站如何將這些大量信息保存在他們的數據庫中(由於數據庫容量)。只有一個數據庫嗎?這個網站是否只有一個服務器?如果有另一臺服務器和數據庫,它們如何與對方通信?如何在數據庫中存儲海量數據

回答

0

看看這個網站對這些網站(與本網站)所採用的各種架構信息:http://highscalability.com/all-time-favorites/

這些網站大多都走了一個名爲NoSQL的策略 - 那就是他們不」不使用傳統的RDBM數據庫,而是創建了自己的對象關係框架,這些對象關係框架能夠被持久化。這種策略在大規模運行時效果良好,因爲它減少了一些會嚴重影響傳統數據庫方法性能的約束條件。然而,這通常是以降低可靠性爲代價的,這對於這些站點的情況通常被認爲是可接受的。

ps。如果你的問題的一般利益,那麼不用擔心。如果您正在嘗試構建一個高度可擴展的應用程序,請稍等片刻並考慮一下 - 您是否將服務於世界上相當大比例的人口,或者您是否正在爲幾千個用戶編寫一個站點。如果是後者,則不需要Facebook風格縮放;在別處投入您的精力和資源。如果是從小開始,那麼就會發展您的系統,隨着您的用戶羣的增長引入投資和專業知識。