2009-08-20 55 views
12

我需要像Facebook一樣創建牆系統(用戶可以發佈消息,視頻,圖像,事件等)。有沒有人創造類似的東西?你如何推薦我準備數據庫?Facebook牆的數據庫結構

+0

這是辦法回答的問題#2的廣闊。 – MitMaro 2009-08-20 22:55:38

+1

@MitMaro:它基本上聽起來像是一個架構問題,我收集的是網站章程的一部分。接受的答案肯定是用體系結構方法來表述的。 – 2009-08-20 23:42:36

回答

24

更新後

Facebook已經給予介紹談論他們使用的數據。每個人都假設他們是管理大數據的先驅,這是當今流行的詞彙。但事實上,他們的演講標題爲很多很多小數據。也就是說,他們基本上會寫很多查詢來讀取或寫入單個記錄。這太簡單了,但它就像他們的SQL數據庫是一個巨大的關鍵/價值商店。這種體系結構的一個方面是,它使得它們可以直接與memcached中的副本交換SQL數據。

Facebook廣泛使用MySQL,並將補丁貢獻回MySQL項目。他們有一個名爲mysqlatfacebook的公共Launchpad網站,以及一個名爲MySQLatFacebook的Facebook網站。

對於分佈式數據,它們使用Hadoop項目中包含的稱爲Map/Reduce的非關係技術。他們建立了一個名爲Hive的項目,用SQL語言查詢數據。他們還爲特定系統使用其他專門的數據管理技術。

由於他們一直在創新,不得不擴大規模,他們經常發明或採用其他技術進行數據管理。

退房:

+0

優秀的信息。我會閱讀所有文章。謝謝! – Efe 2009-08-20 23:17:52