大家好,今天小編關(guān)注到一個比較有意思的話題,就是關(guān)于facebook標(biāo)識設(shè)計由來的問題,于是小編就整理了1個相關(guān)介紹facebook標(biāo)識設(shè)計由來的解答,讓我們一起看看吧。
盡管Facebook使用MySQL,但它們并不是一成不變的使用它。 事實上,他們的團隊已經(jīng)提交了許多MySQL核心和Innodb插件的高性能增強。 他們的主要重點是增加性能計數(shù)器到Innodb。 其他更改集中在IO子系統(tǒng)上,包括以下新功能:
1 innodb_io_capacity:設(shè)置服務(wù)器的IO容量以確定后臺IO的速率限制
2 innodb_read_io_threads, innodb_write_io_threads:設(shè)置后臺IO線程
3 innodb_max_merged_io:設(shè)置可能合并到一個大IO請求中的相鄰IO請求的最大數(shù)量
Facebook使用MySQL作為鍵值存儲,其中數(shù)據(jù)隨機分布在一大組邏輯實例中。 這些邏輯實例分散在物理節(jié)點之間,負(fù)載均衡在物理節(jié)點級完成。 Facebook已經(jīng)開發(fā)了一個分區(qū)方案,其中全局ID被分配給所有的用戶數(shù)據(jù)。 他們也有一個自定義的歸檔方案,它基于每個用戶的頻繁和最近的數(shù)據(jù)。 大部分?jǐn)?shù)據(jù)是隨機分布的。 令人驚訝的是,據(jù)傳Facebook有1800個MySQL服務(wù)器,但只有3個全職DBA
Facebook主要將MySQL用于結(jié)構(gòu)化數(shù)據(jù)存儲,例如墻貼,用戶信息等。這些數(shù)據(jù)在各個數(shù)據(jù)中心之間復(fù)制。 對于blob存儲(照片,視頻等),F(xiàn)acebook使用一個自定義的解決方案,涉及外部的CDN和內(nèi)部的NFS
同樣重要的是,F(xiàn)acebook大量使用Memcache,這是一種內(nèi)存緩存系統(tǒng),通過在RAM中緩存數(shù)據(jù)和對象來加速動態(tài)數(shù)據(jù)庫驅(qū)動的網(wǎng)站,以減少閱讀時間。 Memcache是Facebook的主要緩存形式,大大減少了數(shù)據(jù)庫的負(fù)載。 擁有一個緩存系統(tǒng)可以使Facebook的速度與調(diào)用數(shù)據(jù)一樣快。 如果不需要訪問數(shù)據(jù)庫,則只需根據(jù)用戶標(biāo)識從緩存中獲取數(shù)據(jù)
所以,“Facebook使用什么數(shù)據(jù)庫”似乎是一個簡單的問題,你可以看到他們已經(jīng)添加了各種其他系統(tǒng),使其真正的具有網(wǎng)絡(luò)可擴展性。 但是,仍然可以自由地使用這樣一個觀點:“MySQL和Oracle或者M(jìn)S SQL Server一樣好或者更好,因為就算只有Facebook使用它,它也有5億用戶!”
其實不止是Facebook,大部分互聯(lián)網(wǎng)公司都是在使用Mysql數(shù)據(jù)庫(會輔助使用Nosql數(shù)據(jù)庫,這里暫時不討論)。
首先不能否認(rèn)的是,如果是按照單庫運行,Oracle、DB2這些商業(yè)數(shù)據(jù)庫還是很強大的。IT公司的傳統(tǒng)套路就是IOE,其中O就是指的Oracle。另外I是指IBM的服務(wù)器,E是指EMC列陣存儲。三個加起來很強大,基本上可以支持一般的企業(yè)的業(yè)務(wù),當(dāng)然,也很貴,非常貴。
當(dāng)?shù)搅薋acebook這個級別的公司,數(shù)據(jù)量可不是幾千萬,幾個億這個級別的了,這時候如果數(shù)據(jù)還是單機的話,已經(jīng)很難支撐基數(shù)大、增長快的數(shù)據(jù)了;這時候的做法就是分庫,把數(shù)據(jù)保存到不同的數(shù)據(jù)庫節(jié)點上。
這時候Mysql的優(yōu)勢就顯示出來了:
開源,就意味著免費,也就節(jié)省了License的費用;
也是因為開源,所以有能力的公司都會對公開版的Mysql做二次開發(fā),跟進(jìn)業(yè)務(wù)的需要去改造Mysql;
服務(wù)器的錢也省下來了,也不必使用費用很高的服務(wù)器了,這一點又是省錢。
總之,Mysql省錢,還能定制改造。
到此,以上就是小編對于facebook標(biāo)識設(shè)計由來的問題就介紹到這了,希望介紹關(guān)于facebook標(biāo)識設(shè)計由來的1點解答對大家有用。