国产毛片午夜福利,国产黄网,国产亚洲天堂,97国产精品

  •  
    Google數(shù)據(jù)中心的秘密
    發(fā)布時間:2008-07-16   瀏覽次數(shù):1179298
    Google數(shù)據(jù)中心的秘密 Google提供全球大量的服務,幾乎已經(jīng)快橫跨整個信息科技的服務,但是Google數(shù)據(jù)中心的內(nèi)部運作一直都是秘而不宣,許多人可能都碰過Google的服務出狀況,但是這些狀況總能在可容忍的范圍內(nèi)解決,你可能發(fā)現(xiàn)你的Gmail的容量一直在改變,是什么架構(gòu)讓空間像捏橡皮糖一樣越捏越大?前陣子Google的朋友Jeff Dean聊天中稍微揭開了公司基礎設施的神秘面紗。 Google的神秘面紗包括了: (1)軟件 (2)硬件 (3)叢集平行處理機置 Google軟件的三個核心要素:GFS(Google檔案系統(tǒng))、BigTable和MapReduce算法。而硬件卻是一般的服務器、處理器、硬盤、內(nèi)存等等。另一方面服務器的叢集能在半秒之內(nèi)響應700至1,000臺服務器的搜尋請求。 根據(jù)Google的說法,GFS是"a scalable distributed file system for large distributed data-intensive applications. It provides fault tolerance while running on inexpensive commodity hardware, and it delivers high aggregate performance to a large number of clients". 是這個GFS的分布式檔案系統(tǒng),讓Google服務可以隨時長出空間或是切去毀損的部分,而管理這個GFS的機置是BigTable。目前有超過0個叢集在執(zhí)行GFS,其中許多都包含數(shù)千臺主機。 GFS把一塊儲存的數(shù)據(jù)(通常是64MB),至少放在三臺稱為chunkserver的主機內(nèi)。 如果chunkserver發(fā)生故障,Master Server(主服務器)便負責把數(shù)據(jù)備份到一個新的地方。至少在儲存層級,主機故障完全由GFS系統(tǒng)處理。 Google到底擁有多少臺服務器?據(jù)Dean表示,每個機柜存放40臺服務器。而根據(jù)某項估計,Google目前在全球有36個資料中心,以每個中心有150個機柜計算,Google的服務器至少超過萬臺,并且每天都在增加中...下圖是Google最早期的server rack,當然目前的硬件比這個肯定更驚人了。 Google之所以成為Google,部分原因是他們推翻了計算機界的傳統(tǒng)作法。當所有的超大型數(shù)據(jù)中心都使用主流服務器和軟件,Google的數(shù)據(jù)中心絕大部分是靠本身的技術(shù)構(gòu)建而成。Google把命運操縱在自己手中,共同創(chuàng)辦人Larry Page鼓勵員工"別太相信有什么不可能的事情"。 要維持如此大規(guī)模的運作,也許可以說全世界是卯起來操Google的架構(gòu),Google必須對每一臺機器抱有一種隨時可犧牲的態(tài)度。服務器制造商喜歡主打他們的高階主機承受故障或當機的能力,但Google寧愿把錢投資在容錯軟件上。他們認為擁有兩倍數(shù)量但較不可靠的硬件,勝過一半數(shù)量但較可靠的硬件。你必須在軟件的層級提供可靠度,如果你有1萬臺主機在運作,每天一定會有一些東西掛掉。這個跟我們一般的認知確實有蠻大的差異,我們通常都希望有數(shù)量雖少,但功能穩(wěn)定的機器,而不愿意有一大籮筐兩光的機器。 每個新叢集上線的年,通常會發(fā)生1,000次個別主機的故障,數(shù)千次硬盤故障... 一次電力輸送問題,導致500至1,000臺主機失效約6小時... 次機柜損壞,每次造成40至80臺主機下線... 5次機柜搖晃,導致半數(shù)的網(wǎng)絡封包在傳送過程中遺失... 整個叢集至少一次重新上線,在兩天之內(nèi)的任何時間,影響5%的主機... 整個叢集還有一半的機率會過熱,在5分鐘之內(nèi)讓幾乎所有服務器當機,并且花上1到2天的時間恢復... 雖然Google用一般硬件組件來組裝其服務器,但卻不用傳統(tǒng)的封裝,他們要求Intel提供特制的主機板。Google目前在每40臺服務器的機柜外,包覆一層外殼,而不是每臺服務器有個別的外殼。 Google在04年開始設計的BigTable,用BigTable為所有數(shù)據(jù)提供若干結(jié)構(gòu),目前用在超過70個Google計劃,包括Google Maps、Google Earth、Blogger、Google Print、Orkut和核心搜尋索引。的BigTable實用范例管理橫跨數(shù)千臺主機、約6 PT(petabytes)的數(shù)據(jù)。 Google在03寫出版的MapReduce,讓該公司有辦法實際發(fā)揮那些資料的用處。舉例來說,MapReduce能找出某個特定字匯在Google的搜尋索引中出現(xiàn)的次數(shù)、列出所有特定字匯出現(xiàn)的網(wǎng)頁,和連結(jié)到某個特定網(wǎng)站的所有網(wǎng)站。 利用MapReduce,Google能用相對迅速的時間,建立一個包含"digital"、"network"和"society"三個字的所有網(wǎng)頁索引。"Dean說:「你必須能夠依序地橫跨數(shù)千臺主機作業(yè),才能在一個合理的時間內(nèi)完成這項工作! MapReduce軟件在Google內(nèi)部的應用日漸增加,04年8月,該軟件執(zhí)行2.9萬項工作,到07年9月,已經(jīng)暴增到2萬項。在這段期間,完成一項工作的平均時間也從634秒降至395秒,而MapReduce的工作產(chǎn)出則從193 terabytes上升到約1.4萬terabytes。Dean說,Google在任何都要執(zhí)行約10萬項MapReduce工作,每一項工作占用400臺服務器,且需要5到10分鐘完成。 MapReduce像GFS,是特別設計用來回避服務器問題的。Dean表示:「當某臺主機故障,主服務器知道那臺機器正在執(zhí)行什么工作,將命令其它主機接手那項map工作。你可能影響到100個map工作,但會有100臺主機接手那些工作! MapReduce的可靠度一度遭到嚴厲的試煉,當時一個1,800臺服務器的叢集正進行維護作業(yè),工作人員一次拔下80臺主機的插頭,同時另外1,7臺主機必須接下停頓的工作。Dean說:「速度變得有點慢,但工作全部完成。」而在一次04年的簡報中,一個1,800臺叢集的系統(tǒng),承受了1,600臺服務器同時故障。 所以,Google數(shù)據(jù)中心的運作似乎如魚得水,一切順利。但該公司還不滿足,列出了一長串待改進的事項。大多數(shù)公司都試圖找出如何平順地將工作在服務器之間轉(zhuǎn)移,但Google已經(jīng)超越了那項挑戰(zhàn),他們要能夠自由、平順,且自動地,將工作在各個資料中心間轉(zhuǎn)移。 Dean說:「我們下一代的基礎設施要是一個能夠橫跨大區(qū)塊主機轉(zhuǎn)移,而非單一機器的系統(tǒng)!鼓壳埃承┐笮偷臋n案系統(tǒng)具有不同的名稱,如GFS/Oregon和GFS/Atlanta,但他們都是彼此的拷貝。他表示:「我們要一個單一的名稱集! Google種種獨創(chuàng)的系統(tǒng)替他們開創(chuàng)了天下,也建立了其它競爭者很難跨過的門坎,但是隨著越來越復雜的環(huán)境,Google自己需要解決的問題,肯定挑戰(zhàn)會越來越大。
    立即預約