細觀Google全面大揭祕


     加利福尼亞州山景城(Mountain View)谷歌公司(Google,下稱谷歌)總部有一個43號大樓,該建築的中央大屏幕上顯示着一個與谷歌地球(Google Earth)相仿的世界地圖,一個轉動的地球上不停地閃動着五顏六色的光點,恍如羅馬宮廷的千萬燭燈,每一次閃動標誌着地球的這個角落一名谷歌用戶發起了一次新的搜索。這同時意味着谷歌又一次滿足了人們對未知信息的好奇與渴望。
      谷歌是與衆不同的。它的獨特不僅僅表現於革新的思維和充滿創意的應用(比如那個大堂裏的地球模型),更在於其有別常規的IT策略。從人們的常理來看,簡單的硬件商品和免費軟件是無法構建出一個帝國的,但是谷歌做到了。在性能調整後,谷歌把它們變成一個無可比擬的分佈式計算平臺,該平臺能夠支持大規模的搜索和不斷涌現的新興應用。我們原本認爲這些應用都是個人消費級別的,但是谷歌改變了這一切。現在商業世界也在使用它們,這就令這家搜索公司顯得那麼與衆不同。
      谷歌Web服務背後的IT架構對無數使用搜索引擎的用戶來說也許並不是非常重要,但它是谷歌幾百位致力於把全球信息組織起來,實現“隨處可達,隨時可用”目標的工程師們的最核心工作。這就需要一個在覆蓋範圍和野心上都與谷歌的商業願景完全相符的IT藍圖作爲支撐。
      谷歌的經理們一直對公司的IT策略話題保持沉默,他們厭惡談及特定的廠商或者產品,當被問到他們的服務器和數據中心時,他們總是閉口不談。但與幾位谷歌的IT領導一起呆了一天後,我們最終得以揭示該公司的IT是如何運作的,那可不僅僅是一個運行在無數服務器集羣上的、表面看來非常簡單的搜索引擎。在其簡單的外表下,蘊涵着許多內部研發軟件、定製硬件、人工智能,以及對性能的執着追求和打破常規的人力管理模式。
      IT理念方面,谷歌對同行有一條建議:儘量避免那些人人都在使用的系統和軟件,以自己的方式做事會更有獨特的競爭優勢。
      “企業文化決定了你的做事方式。”道格拉斯?美林(Douglas Merrill),這位谷歌工程副總裁和事實上的首席信息官(CIO) 指出,“到了我們這樣的發展階段,企業觀念和文化非常與衆不同,這也反過來鞭策我們必須要採用與衆不同的方式來運行那些他人看來很常規的系統。”
      谷歌最大的IT優勢在於它能建造出既富於性價比(並非廉價)又能承受極高負載的高性能系統。因此IT顧問史蒂芬?阿諾德(Stephen Arnold)指出,谷歌與競爭對手,如亞馬遜網站(Amazon)、電子港灣公司(eBay)、微軟公司(Microsoft,下稱微軟)和雅虎公司(Yahoo,下稱雅虎)等公司相比,具有更大的成本優勢。谷歌程序員的效率比其他Web公司同行們高出50%~100%,原因是谷歌已經開發出了一整套專用於支持大規模並行系統編程的定製軟件庫。據他估算,其他競爭公司可能要花上四倍的時間才能獲得同等的效果。

      打造服務器
      谷歌究竟是怎樣做到這點的呢?其中一個手段,美林認爲,“是因爲我們自己動手打造硬件。”谷歌並不製造計算機系統,但它根據自己的參數定製硬件,然後像MTV的節目“靚車打造”(Pimp My Ride)那樣自己安裝和調整硬件系統。開源程序經理克里斯?迪博納(Chris DiBona)評論道:“我們很善於購買商業服務器,並且改造他們爲我們所用,最後把性能壓榨和發揮到極致,以致有時候他們熱得像要融化了似的。”
      這種親手打造的方式,來源於谷歌從車庫誕生時與生俱來的節儉風格,更與谷歌那超大型的系統規模息息相關,良好的習慣一直延續至今。據說谷歌在65個數據中心擁有20萬~45萬臺服務器—這個數目會有偏差(取決於你如何定義服務器和由誰來做這項統計)。但是,不變的是持續上升的趨勢。
      谷歌不會去討論這些資產,因爲它認爲保密也是一種競爭優勢。事實上,谷歌之所以喜歡開源軟件也是因爲它的私密性。“如果我們購買了軟件許可或代碼許可,人們只要對號入座,就可以猜出谷歌的IT基礎架構。”迪博納分析說,“使用開源軟件,就使我們多了一條把握自己命運的途徑。”
      谷歌喜歡規模化的服務器運行方式。當有成百上千臺機器時,定製服務器的優勢也會成倍增加,效果也會更趨明顯。谷歌正在俄勒岡州哥倫比亞河邊的達勒斯市建造一個佔地30畝的數據中心,在那兒它可以獲得運算和降溫需要的低價水力電力能源(參見邊欄《谷歌數據中心自有一套》)。
      谷歌以“單元”(Cell)的形式組織這些運行Linux操作系統的服務器,迪博納把這種形式比喻成互聯網服務的“磁盤驅動器”(但別和一直謠傳的谷歌存儲服務Gdrive混淆了,“並沒有Gdrive這回事。”一位谷歌女發言人明確表示。),公司的軟件程序都駐紮在這些並不昂貴的電腦機箱裏,由程序員決定它們的冗餘工作量。這種由很多單元組成的文件系統代替了商業存儲設備;迪博納表示谷歌這些單元設備更易於建造和維護,他還暗示他們能處理更大規模的數據。
      谷歌不會漏過對任何技術細節的關注。多年來,公司的工程師就在研究微處理器的內部工作機制,隨着谷歌規模的持續壯大,必然會用到特別定製和調節過的芯片。知名工程師路易斯?巴羅索(Luiz Barroso)去年在一篇發表在工業雜誌上的論文中證實,近年來谷歌的主要負荷都由單核設計的系統承擔着。但許多服務器端的應用,如谷歌搜索索引服務,所需的並行計算在單核芯片的指令級別上執行得並不好。
      曾在數據設備公司(Digital Equipment)和康柏公司(Compaq)當過芯片設計師的巴羅索認爲,隨着AMD公司、英特爾公司(Intel)、太陽計算機系統公司(Sun)開始製造多核芯片,必將會出現越來越多芯片級別的並行計算。
      谷歌也曾考慮過自己製造計算機芯片,但從業界潮流來看,這個冒險的舉動似乎不是很必要。“微處理器的設計非常複雜而且成本昂貴,”運營高級副總裁烏爾斯?霍爾茨勒(Urs Holzle)表示。谷歌寧願與芯片製造商合作,讓他們去理解自己的應用並設計適合的芯片。這是一種客戶建議式的設計,其關注點在於總體吞吐量、效能,以及耗電比,而不是看單線程的峯值性能。霍爾茨勒表示,“這也是最近多核CPU的設計潮流與未來方向。”

      裁縫般地定製軟件
      爲了能儘量壓榨硬件性能,谷歌開發了相當數量的定製軟件。創新產品主要包括用於簡化處理和創建大規模數據集的編程模型MapReduce;用於存儲和管理大規模數據的系統BigTable;分析分佈式運算環境中大規模數據集的解釋編程語言Sawzall;用於數據密集型應用的分佈式文件系統的“谷歌文件系統”(Google File System);還有爲處理分佈式系統隊列分組和任務調度的“谷歌工作隊列”(Google Workqueue)。
      正是從Sawzall這些工具裏體現出谷歌對計算效率的執著關注。並不是每家公司都能從底層去解決效率問題,但是對谷歌來說,爲常規關係型數據庫無法容納的大規模數據集專門設計一種編程語言是完全合理的。即使其他編程工具可以解決問題,谷歌的工程師們仍然會爲了追求效率而另外開發一套定製方案。谷歌工程師認爲,Sawzall能與C++中的MapReduce相媲美,而且它更容易編寫一些。
      谷歌對效率的關注使它不可能對標準Linux內核感到滿意;谷歌會根據自己的需要運行修改過的內核版本。通過調整Linux的底層性能,谷歌工程師們在提高了整體系統可靠性的基礎上,還一併解決了數據損壞和數據瓶頸等一系列棘手問題。對內核的修改也使谷歌的計算機集羣系統因爲通信效率的提高而運行得更快。
      當然,谷歌偶爾也會出現系統故障,情況一旦發生,無數的用戶就會受到影響了。三年前一次持續30分鐘的系統故障使20%的搜索流量受到影響。
      谷歌開發了自己的網站服務器卻沒有使用開源的Apache服務器,儘管它在網站服務器的市場佔有率超過60%。迪博納認爲,谷歌的網站服務器可以運行在更多數量的主機上,對谷歌站點上內容龐大又彼此互相依賴的應用程序來說,這種服務器的負載均衡能力遠比Apache的能力更高。同時,在用標準公共網關接口(CGI)訪問數據庫動態網頁方面,谷歌服務器的編程難度要比Apache更高,但是最終運行速度卻更快。“如果我們能夠壓榨出10%~20%的性能,我們就可以節省出更多系統資源、電量和人力了。”迪博納在總結中指出。
      谷歌還設計了自己的客戶關係管理(CRM)系統用於支持自己基於競價和點擊的互聯網廣告收費業務。但對是否需要設計自己的工具,谷歌的態度也不是一成不變的。比如在財會軟件上,它就使用了甲骨文公司(Oracle)的Financials軟件。
      美林拿着一隻叉子舉例說明現成的產品也可以帶來價值。但在有些場合現成的軟件產品就不一定適用了。“我們的文化在各個層面對我們的運作都有深遠影響,”他表示,“所以我們不想讓購買所得的工具改變我們的工作方式和文化層面。”

      保持活潑
      谷歌沒有透露它在IT上的開銷。Susquehanna 金融集團(Susquehanna Financial Group)分析師瑪麗安?沃爾克(Marianne Wolk)估計今年上半年穀歌在IT上的花費高達三億美元,相當於在此期間谷歌全部收入的30%。而在過去幾年間,谷歌把全部收入的50%花在了IT上。現在,隨着公司的發展,IT開銷比例正在下降,其他領域如房地產業的投入正在增加。
      非正統的科研人員管理方式使谷歌沒法和大多數科技公司一樣把研究和開發的預算分離開來。高級工程和研發副總裁阿蘭?尤斯塔斯(Alan Eustace)解釋說:“在許多大公司你會發現研究和工程是分離的。”但是把這兩部分預算分離開來,他認爲“就等於從制度上遏制了把各項工作變得更加有趣的可能。”
      谷歌的IT是“去中心化”(Decentralized)的管理方式。公司沒有CIO或首席技術官(CTO),但它擁有一大羣高級工程師和技術人員。這中間包括主管系統基礎設施工程的副總裁比爾?庫格倫(Bill Coughran),他負責掌管和支撐谷歌在線應用的大型分佈式運算程序,而尤斯塔斯則負責產品的研發。謝爾蓋?布林(Sergey Brin)的身份並不僅是谷歌的創始人之一,他的日常工作是技術總裁。美林在三年前作爲信息系統高級主管加入谷歌,現在負責內部工程部門的管理和全球技術支持。
      谷歌採用的是矩陣式管理系統,每位經理都有好幾位直接彙報的上司,每位工程師也可以同時向幾個人彙報。多數情況下,工程師們從共同工作的項目領導人處獲得指導和評價。但每隔三個月工程師們就可以自發調換項目,因此谷歌改變了傳統意義上的項目運作和績效考評模式。如同處理其他技術問題一樣,谷歌用人工智能和計算機自動化的方式來處理一些日常工作。“我們的目標是儘量自主運作,以免工作變得乏味。”美林表示,“沒有人會喜歡乏味的工作,對嗎?”
      此外,谷歌的招聘跟蹤系統能自動聚合應聘者的各種信息,爲招聘經理提供候選人的工作簡歷,建議的面試問題,在招聘之後還會自動發送電子郵件詢問招聘方對應聘人選的意見。工作面試包括邏輯問題、編寫代碼、討論軟件架構,和其他任何可以使谷歌相信應聘者具有快速學習新技術能力的證明,因爲谷歌是不會讓它的員工長時間只幹一件事情的。
      許多小型和短期的項目意味着基於任務表的傳統項目管理方式的軟件不適用於谷歌。比如,他們的技術人員都不擅於總結自己的時間分配計劃。他們更擅長的是寫下每日工作相關的簡短介紹或是代碼片斷。這些內容會定期和小組領導提交的項目更新信息一起彙編到數據庫裏,項目管理系統根據輸入內容的主題,加上標籤把它們轉發給相關人員。美林認爲,“這樣的系統還算不上真正的人工智能。”但是,除了谷歌還有哪家公司會這樣管理員工呢?
      績效考覈也採用了類似的技術機制。谷歌的“Perf績效”系統讓經理們寫電子郵件(當然還是先由電腦而非人工進行分析),郵件描述了員工在項目中表現的優劣。同事們則會收到另一封來自系統的電子郵件要求他們對比該員工與其他谷歌員工。Perf系統自動分析所有反饋信息,對員工對比結果進行評估,並把結果公開。這正是美林想要的效果,技術讓工作關係變得更加透明和人性化。可以預見,雖然打開窗戶的同時也會放進蒼蠅,但美林表示凡事總有缺憾。“飛速發展的同時,還必須保護我們的企業文化,”他說,“這能讓我們保持清醒。”
      對谷歌的方式,有人持不同意見。2004年因兼併加入谷歌市場部門的某工作人員,就由於缺乏資源和支持而辭職。“從IT工程師角度看,谷歌的確是個了不起的地方,”這位前僱員說,“但是,從商業或市場角度看,它就未見得如人們想象的那麼出色。”
      谷歌對市場的理解力,還遠跟不上它的技術實力。除了搜索引擎和廣告系統,谷歌大量的在線應用項目目前的作用還很有限。谷歌的Gmail服務面臨着長期霸主雅虎和微軟免費電子郵件服務強有力的挑戰。它的在線金融門戶Google Finance系統也存在類似的問題。谷歌地圖也遠遠落後於MapQuest和雅虎地圖,位居第三。

      甄選企業文化
      谷歌員工可以按照自己的需要和興趣選擇PC的操作系統,包括Linux、Mac OS和Windows。很多人使用公司自產的程序,如谷歌桌面(Google Desktop)、谷歌地圖、購併的在線Writely 文字處理軟件,以及最近研發的谷歌電子數據表(Google Spreadsheets)。在一般情況下,如果公司的某位員工需要某種特定軟件,他不用費太多周折就可以通過公司內部網提出申請而獲准使用。
      當被問及谷歌在使用哪些商業PC軟件時,美林閃爍其辭。“重要的不是我們在每臺桌面電腦上安裝了什麼程序,而是我們對安裝了什麼電腦程序所持的態度,”他含糊地表示,“谷歌的原則是自由選擇永遠優於簡單控制。嚴格的集中化管理會妨礙創新。”
      接着,美林對其他公司的CIO制度略有非議,他認爲這是老式公司才用的頭銜。“大多數在我這個位置的人都在勉強控制局面,他們會說‘你只能購買這三樣產品’。”美林解釋說,“我會儘可能縮小控制範圍,試着簡化工作,把相關制約因素限制在我比較有把握的範圍之內。
      在告訴別人做什麼和阻止別人做什麼之間,美林很清楚兩者的區別。例如,他注意到有些金融服務機構禁止員工使用即時通信(IM)軟件,因爲他們就是這樣詮釋自己的規章制度。美林指出“這不是正確的方法”。
      在美林的觀點中,正確的做法是:允許充分討論,暢用數據,拒絕直覺,儘量自動化。

集思廣益
      去年工程副總裁亞當?伯斯沃斯(Adam Bosworth)在提到谷歌的文檔排名算法(PageRank)時說,谷歌的搜索結果比別人更準確,是因爲其得益於“大衆智慧的力量”。[引自詹姆士?蘇羅維奇(James Surowiechi)所著《大衆的智慧》,2004年由蘭登書屋(Random House)出版。]公司創始人拉里?佩奇(Larry Page)和謝爾蓋?布林(Sergey Brin)正是從PageRank開創了事業,PageRank通過分析網頁上人工生成的鏈接結構來決定網頁的相關重要性。對PageRank來說,越多人鏈接到一個特定網頁,這個網頁很可能越重要。
      這樣,人力和機器得到了完美分工:人類擅於內容評估,計算機則可輕鬆分析大規模數據集。通過嫁接集體的智慧與自動化處理,佩奇和布林建立了一家由人工智能驅動的公司。“人工智能是個了不起的工具,它可以幫助人們更好地做決定,”美林說,“但是它不適合做複雜的決定。”
      通過機器收集和提煉的集體智慧對谷歌非常重要。就像美林指出的那樣,“集體比個體更聰明”。“這個見解也許已不像當初那樣令人耳目一新,因爲維基百科(Wikipedia)和Digg.com已一再證明了這點。但是對於很多其他同類公司來說,對於這個觀點的理解仍然有限。”美林解釋說。
      但在谷歌,相關的例子比比皆是,比如公司選擇新員工的方式。“這裏沒有人有權聘用任何人,”美林堅稱,“聘用由公開的集體決定。是我們所有人聘用了所有其他人。”
      對集體智慧的堅持也體現在谷歌的午餐文化。谷歌爲僱員提供免費午餐作爲激勵和提高效率的方式,但同時也是爲了鼓勵員工之間的互動。這是杯盤交錯之間的交流。“如果你希望人們說話,希望人們投入,你會怎樣做?”美林反問道,“你得給他們提供午餐。”
      關於企業內部公開討論的方式,谷歌有一條口號:暢所欲言。“在其他地方私下討論的東西在這裏變得公開了。”美林說。(彷彿爲了說明這一點,美林在我們拍照時還脫掉T恤展示他的刺青。)“我們的決議都是公開討論的結果。我們歡迎辯論。我們期待每個人的參與,渴望不同的觀點。”美林這樣說道。
      當然,凡事都有底線。美林也同意有些事情仍然需要保密。“用戶數據的私密性對我們顯然非常重要,所以我們對這類數據資料會嚴加看管。”他表示,“但是某些常規商業領域裏的祕密我們反而認爲並非真的那麼需要保密。”常規商業領域?那就包括了99%的其他公司。
      谷歌目前面臨的挑戰就是保持其獨特性—這恰恰也正是它的核心競爭力—同時它也堅持承擔了組織全球信息的責任,使之隨時隨地可以被訪問和利用,不受任何限制。可以想象,其他公司會密切關注和學習這家特立獨行的企業的一舉一動。

    加利福尼亞州山景城(Mountain View)谷歌公司(Google,下稱谷歌)總部有一個43號大樓,該建築的中央大屏幕上顯示着一個與谷歌地球(Google Earth)相仿的世界地圖,一個轉動的地球上不停地閃動着五顏六色的光點,恍如羅馬宮廷的千萬燭燈,每一次閃動標誌着地球的這個角落一名谷歌用戶發起了一次新的搜索。這同時意味着谷歌又一次滿足了人們對未知信息的好奇與渴望。
      谷歌是與衆不同的。它的獨特不僅僅表現於革新的思維和充滿創意的應用(比如那個大堂裏的地球模型),更在於其有別常規的IT策略。從人們的常理來看,簡單的硬件商品和免費軟件是無法構建出一個帝國的,但是谷歌做到了。在性能調整後,谷歌把它們變成一個無可比擬的分佈式計算平臺,該平臺能夠支持大規模的搜索和不斷涌現的新興應用。我們原本認爲這些應用都是個人消費級別的,但是谷歌改變了這一切。現在商業世界也在使用它們,這就令這家搜索公司顯得那麼與衆不同。
      谷歌Web服務背後的IT架構對無數使用搜索引擎的用戶來說也許並不是非常重要,但它是谷歌幾百位致力於把全球信息組織起來,實現“隨處可達,隨時可用”目標的工程師們的最核心工作。這就需要一個在覆蓋範圍和野心上都與谷歌的商業願景完全相符的IT藍圖作爲支撐。
      谷歌的經理們一直對公司的IT策略話題保持沉默,他們厭惡談及特定的廠商或者產品,當被問到他們的服務器和數據中心時,他們總是閉口不談。但與幾位谷歌的IT領導一起呆了一天後,我們最終得以揭示該公司的IT是如何運作的,那可不僅僅是一個運行在無數服務器集羣上的、表面看來非常簡單的搜索引擎。在其簡單的外表下,蘊涵着許多內部研發軟件、定製硬件、人工智能,以及對性能的執着追求和打破常規的人力管理模式。
      IT理念方面,谷歌對同行有一條建議:儘量避免那些人人都在使用的系統和軟件,以自己的方式做事會更有獨特的競爭優勢。
      “企業文化決定了你的做事方式。”道格拉斯?美林(Douglas Merrill),這位谷歌工程副總裁和事實上的首席信息官(CIO) 指出,“到了我們這樣的發展階段,企業觀念和文化非常與衆不同,這也反過來鞭策我們必須要採用與衆不同的方式來運行那些他人看來很常規的系統。”
      谷歌最大的IT優勢在於它能建造出既富於性價比(並非廉價)又能承受極高負載的高性能系統。因此IT顧問史蒂芬?阿諾德(Stephen Arnold)指出,谷歌與競爭對手,如亞馬遜網站(Amazon)、電子港灣公司(eBay)、微軟公司(Microsoft,下稱微軟)和雅虎公司(Yahoo,下稱雅虎)等公司相比,具有更大的成本優勢。谷歌程序員的效率比其他Web公司同行們高出50%~100%,原因是谷歌已經開發出了一整套專用於支持大規模並行系統編程的定製軟件庫。據他估算,其他競爭公司可能要花上四倍的時間才能獲得同等的效果。

      打造服務器
      谷歌究竟是怎樣做到這點的呢?其中一個手段,美林認爲,“是因爲我們自己動手打造硬件。”谷歌並不製造計算機系統,但它根據自己的參數定製硬件,然後像MTV的節目“靚車打造”(Pimp My Ride)那樣自己安裝和調整硬件系統。開源程序經理克里斯?迪博納(Chris DiBona)評論道:“我們很善於購買商業服務器,並且改造他們爲我們所用,最後把性能壓榨和發揮到極致,以致有時候他們熱得像要融化了似的。”
      這種親手打造的方式,來源於谷歌從車庫誕生時與生俱來的節儉風格,更與谷歌那超大型的系統規模息息相關,良好的習慣一直延續至今。據說谷歌在65個數據中心擁有20萬~45萬臺服務器—這個數目會有偏差(取決於你如何定義服務器和由誰來做這項統計)。但是,不變的是持續上升的趨勢。
      谷歌不會去討論這些資產,因爲它認爲保密也是一種競爭優勢。事實上,谷歌之所以喜歡開源軟件也是因爲它的私密性。“如果我們購買了軟件許可或代碼許可,人們只要對號入座,就可以猜出谷歌的IT基礎架構。”迪博納分析說,“使用開源軟件,就使我們多了一條把握自己命運的途徑。”
      谷歌喜歡規模化的服務器運行方式。當有成百上千臺機器時,定製服務器的優勢也會成倍增加,效果也會更趨明顯。谷歌正在俄勒岡州哥倫比亞河邊的達勒斯市建造一個佔地30畝的數據中心,在那兒它可以獲得運算和降溫需要的低價水力電力能源(參見邊欄《谷歌數據中心自有一套》)。
      谷歌以“單元”(Cell)的形式組織這些運行Linux操作系統的服務器,迪博納把這種形式比喻成互聯網服務的“磁盤驅動器”(但別和一直謠傳的谷歌存儲服務Gdrive混淆了,“並沒有Gdrive這回事。”一位谷歌女發言人明確表示。),公司的軟件程序都駐紮在這些並不昂貴的電腦機箱裏,由程序員決定它們的冗餘工作量。這種由很多單元組成的文件系統代替了商業存儲設備;迪博納表示谷歌這些單元設備更易於建造和維護,他還暗示他們能處理更大規模的數據。
      谷歌不會漏過對任何技術細節的關注。多年來,公司的工程師就在研究微處理器的內部工作機制,隨着谷歌規模的持續壯大,必然會用到特別定製和調節過的芯片。知名工程師路易斯?巴羅索(Luiz Barroso)去年在一篇發表在工業雜誌上的論文中證實,近年來谷歌的主要負荷都由單核設計的系統承擔着。但許多服務器端的應用,如谷歌搜索索引服務,所需的並行計算在單核芯片的指令級別上執行得並不好。
      曾在數據設備公司(Digital Equipment)和康柏公司(Compaq)當過芯片設計師的巴羅索認爲,隨着AMD公司、英特爾公司(Intel)、太陽計算機系統公司(Sun)開始製造多核芯片,必將會出現越來越多芯片級別的並行計算。
      谷歌也曾考慮過自己製造計算機芯片,但從業界潮流來看,這個冒險的舉動似乎不是很必要。“微處理器的設計非常複雜而且成本昂貴,”運營高級副總裁烏爾斯?霍爾茨勒(Urs Holzle)表示。谷歌寧願與芯片製造商合作,讓他們去理解自己的應用並設計適合的芯片。這是一種客戶建議式的設計,其關注點在於總體吞吐量、效能,以及耗電比,而不是看單線程的峯值性能。霍爾茨勒表示,“這也是最近多核CPU的設計潮流與未來方向。”

      裁縫般地定製軟件
      爲了能儘量壓榨硬件性能,谷歌開發了相當數量的定製軟件。創新產品主要包括用於簡化處理和創建大規模數據集的編程模型MapReduce;用於存儲和管理大規模數據的系統BigTable;分析分佈式運算環境中大規模數據集的解釋編程語言Sawzall;用於數據密集型應用的分佈式文件系統的“谷歌文件系統”(Google File System);還有爲處理分佈式系統隊列分組和任務調度的“谷歌工作隊列”(Google Workqueue)。
      正是從Sawzall這些工具裏體現出谷歌對計算效率的執著關注。並不是每家公司都能從底層去解決效率問題,但是對谷歌來說,爲常規關係型數據庫無法容納的大規模數據集專門設計一種編程語言是完全合理的。即使其他編程工具可以解決問題,谷歌的工程師們仍然會爲了追求效率而另外開發一套定製方案。谷歌工程師認爲,Sawzall能與C++中的MapReduce相媲美,而且它更容易編寫一些。
      谷歌對效率的關注使它不可能對標準Linux內核感到滿意;谷歌會根據自己的需要運行修改過的內核版本。通過調整Linux的底層性能,谷歌工程師們在提高了整體系統可靠性的基礎上,還一併解決了數據損壞和數據瓶頸等一系列棘手問題。對內核的修改也使谷歌的計算機集羣系統因爲通信效率的提高而運行得更快。
      當然,谷歌偶爾也會出現系統故障,情況一旦發生,無數的用戶就會受到影響了。三年前一次持續30分鐘的系統故障使20%的搜索流量受到影響。
      谷歌開發了自己的網站服務器卻沒有使用開源的Apache服務器,儘管它在網站服務器的市場佔有率超過60%。迪博納認爲,谷歌的網站服務器可以運行在更多數量的主機上,對谷歌站點上內容龐大又彼此互相依賴的應用程序來說,這種服務器的負載均衡能力遠比Apache的能力更高。同時,在用標準公共網關接口(CGI)訪問數據庫動態網頁方面,谷歌服務器的編程難度要比Apache更高,但是最終運行速度卻更快。“如果我們能夠壓榨出10%~20%的性能,我們就可以節省出更多系統資源、電量和人力了。”迪博納在總結中指出。
      谷歌還設計了自己的客戶關係管理(CRM)系統用於支持自己基於競價和點擊的互聯網廣告收費業務。但對是否需要設計自己的工具,谷歌的態度也不是一成不變的。比如在財會軟件上,它就使用了甲骨文公司(Oracle)的Financials軟件。
      美林拿着一隻叉子舉例說明現成的產品也可以帶來價值。但在有些場合現成的軟件產品就不一定適用了。“我們的文化在各個層面對我們的運作都有深遠影響,”他表示,“所以我們不想讓購買所得的工具改變我們的工作方式和文化層面。”

      保持活潑
      谷歌沒有透露它在IT上的開銷。Susquehanna 金融集團(Susquehanna Financial Group)分析師瑪麗安?沃爾克(Marianne Wolk)估計今年上半年穀歌在IT上的花費高達三億美元,相當於在此期間谷歌全部收入的30%。而在過去幾年間,谷歌把全部收入的50%花在了IT上。現在,隨着公司的發展,IT開銷比例正在下降,其他領域如房地產業的投入正在增加。
      非正統的科研人員管理方式使谷歌沒法和大多數科技公司一樣把研究和開發的預算分離開來。高級工程和研發副總裁阿蘭?尤斯塔斯(Alan Eustace)解釋說:“在許多大公司你會發現研究和工程是分離的。”但是把這兩部分預算分離開來,他認爲“就等於從制度上遏制了把各項工作變得更加有趣的可能。”
      谷歌的IT是“去中心化”(Decentralized)的管理方式。公司沒有CIO或首席技術官(CTO),但它擁有一大羣高級工程師和技術人員。這中間包括主管系統基礎設施工程的副總裁比爾?庫格倫(Bill Coughran),他負責掌管和支撐谷歌在線應用的大型分佈式運算程序,而尤斯塔斯則負責產品的研發。謝爾蓋?布林(Sergey Brin)的身份並不僅是谷歌的創始人之一,他的日常工作是技術總裁。美林在三年前作爲信息系統高級主管加入谷歌,現在負責內部工程部門的管理和全球技術支持。
      谷歌採用的是矩陣式管理系統,每位經理都有好幾位直接彙報的上司,每位工程師也可以同時向幾個人彙報。多數情況下,工程師們從共同工作的項目領導人處獲得指導和評價。但每隔三個月工程師們就可以自發調換項目,因此谷歌改變了傳統意義上的項目運作和績效考評模式。如同處理其他技術問題一樣,谷歌用人工智能和計算機自動化的方式來處理一些日常工作。“我們的目標是儘量自主運作,以免工作變得乏味。”美林表示,“沒有人會喜歡乏味的工作,對嗎?”
      此外,谷歌的招聘跟蹤系統能自動聚合應聘者的各種信息,爲招聘經理提供候選人的工作簡歷,建議的面試問題,在招聘之後還會自動發送電子郵件詢問招聘方對應聘人選的意見。工作面試包括邏輯問題、編寫代碼、討論軟件架構,和其他任何可以使谷歌相信應聘者具有快速學習新技術能力的證明,因爲谷歌是不會讓它的員工長時間只幹一件事情的。
      許多小型和短期的項目意味着基於任務表的傳統項目管理方式的軟件不適用於谷歌。比如,他們的技術人員都不擅於總結自己的時間分配計劃。他們更擅長的是寫下每日工作相關的簡短介紹或是代碼片斷。這些內容會定期和小組領導提交的項目更新信息一起彙編到數據庫裏,項目管理系統根據輸入內容的主題,加上標籤把它們轉發給相關人員。美林認爲,“這樣的系統還算不上真正的人工智能。”但是,除了谷歌還有哪家公司會這樣管理員工呢?
      績效考覈也採用了類似的技術機制。谷歌的“Perf績效”系統讓經理們寫電子郵件(當然還是先由電腦而非人工進行分析),郵件描述了員工在項目中表現的優劣。同事們則會收到另一封來自系統的電子郵件要求他們對比該員工與其他谷歌員工。Perf系統自動分析所有反饋信息,對員工對比結果進行評估,並把結果公開。這正是美林想要的效果,技術讓工作關係變得更加透明和人性化。可以預見,雖然打開窗戶的同時也會放進蒼蠅,但美林表示凡事總有缺憾。“飛速發展的同時,還必須保護我們的企業文化,”他說,“這能讓我們保持清醒。”
      對谷歌的方式,有人持不同意見。2004年因兼併加入谷歌市場部門的某工作人員,就由於缺乏資源和支持而辭職。“從IT工程師角度看,谷歌的確是個了不起的地方,”這位前僱員說,“但是,從商業或市場角度看,它就未見得如人們想象的那麼出色。”
      谷歌對市場的理解力,還遠跟不上它的技術實力。除了搜索引擎和廣告系統,谷歌大量的在線應用項目目前的作用還很有限。谷歌的Gmail服務面臨着長期霸主雅虎和微軟免費電子郵件服務強有力的挑戰。它的在線金融門戶Google Finance系統也存在類似的問題。谷歌地圖也遠遠落後於MapQuest和雅虎地圖,位居第三。

      甄選企業文化
      谷歌員工可以按照自己的需要和興趣選擇PC的操作系統,包括Linux、Mac OS和Windows。很多人使用公司自產的程序,如谷歌桌面(Google Desktop)、谷歌地圖、購併的在線Writely 文字處理軟件,以及最近研發的谷歌電子數據表(Google Spreadsheets)。在一般情況下,如果公司的某位員工需要某種特定軟件,他不用費太多周折就可以通過公司內部網提出申請而獲准使用。
      當被問及谷歌在使用哪些商業PC軟件時,美林閃爍其辭。“重要的不是我們在每臺桌面電腦上安裝了什麼程序,而是我們對安裝了什麼電腦程序所持的態度,”他含糊地表示,“谷歌的原則是自由選擇永遠優於簡單控制。嚴格的集中化管理會妨礙創新。”
      接着,美林對其他公司的CIO制度略有非議,他認爲這是老式公司才用的頭銜。“大多數在我這個位置的人都在勉強控制局面,他們會說‘你只能購買這三樣產品’。”美林解釋說,“我會儘可能縮小控制範圍,試着簡化工作,把相關制約因素限制在我比較有把握的範圍之內。
      在告訴別人做什麼和阻止別人做什麼之間,美林很清楚兩者的區別。例如,他注意到有些金融服務機構禁止員工使用即時通信(IM)軟件,因爲他們就是這樣詮釋自己的規章制度。美林指出“這不是正確的方法”。
      在美林的觀點中,正確的做法是:允許充分討論,暢用數據,拒絕直覺,儘量自動化。

      集思廣益
      去年工程副總裁亞當?伯斯沃斯(Adam Bosworth)在提到谷歌的文檔排名算法(PageRank)時說,谷歌的搜索結果比別人更準確,是因爲其得益於“大衆智慧的力量”。[引自詹姆士?蘇羅維奇(James Surowiechi)所著《大衆的智慧》,2004年由蘭登書屋(Random House)出版。]公司創始人拉里?佩奇(Larry Page)和謝爾蓋?布林(Sergey Brin)正是從PageRank開創了事業,PageRank通過分析網頁上人工生成的鏈接結構來決定網頁的相關重要性。對PageRank來說,越多人鏈接到一個特定網頁,這個網頁很可能越重要。
      這樣,人力和機器得到了完美分工:人類擅於內容評估,計算機則可輕鬆分析大規模數據集。通過嫁接集體的智慧與自動化處理,佩奇和布林建立了一家由人工智能驅動的公司。“人工智能是個了不起的工具,它可以幫助人們更好地做決定,”美林說,“但是它不適合做複雜的決定。”
      通過機器收集和提煉的集體智慧對谷歌非常重要。就像美林指出的那樣,“集體比個體更聰明”。“這個見解也許已不像當初那樣令人耳目一新,因爲維基百科(Wikipedia)和Digg.com已一再證明了這點。但是對於很多其他同類公司來說,對於這個觀點的理解仍然有限。”美林解釋說。
      但在谷歌,相關的例子比比皆是,比如公司選擇新員工的方式。“這裏沒有人有權聘用任何人,”美林堅稱,“聘用由公開的集體決定。是我們所有人聘用了所有其他人。”
      對集體智慧的堅持也體現在谷歌的午餐文化。谷歌爲僱員提供免費午餐作爲激勵和提高效率的方式,但同時也是爲了鼓勵員工之間的互動。這是杯盤交錯之間的交流。“如果你希望人們說話,希望人們投入,你會怎樣做?”美林反問道,“你得給他們提供午餐。”
      關於企業內部公開討論的方式,谷歌有一條口號:暢所欲言。“在其他地方私下討論的東西在這裏變得公開了。”美林說。(彷彿爲了說明這一點,美林在我們拍照時還脫掉T恤展示他的刺青。)“我們的決議都是公開討論的結果。我們歡迎辯論。我們期待每個人的參與,渴望不同的觀點。”美林這樣說道。
      當然,凡事都有底線。美林也同意有些事情仍然需要保密。“用戶數據的私密性對我們顯然非常重要,所以我們對這類數據資料會嚴加看管。”他表示,“但是某些常規商業領域裏的祕密我們反而認爲並非真的那麼需要保密。”常規商業領域?那就包括了99%的其他公司。
      谷歌目前面臨的挑戰就是保持其獨特性—這恰恰也正是它的核心競爭力—同時它也堅持承擔了組織全球信息的責任,使之隨時隨地可以被訪問和利用,不受任何限制。可以想象,其他公司會密切關注和學習這家特立獨行的企業的一舉一動。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章