2008年8月27日 星期三

SERP : 搜尋排前對消費者的影響

不管公司的大小, 許多產品都希望能夠讓消費者於網路搜尋時可以排列在最前面, 到底搜尋排前對消費者的影響是如何呢? 3位武漢大學的學者在2007年WiCom研討會上有一篇論文: "Does It Pay to Get to the Top? Contextual Factors of Branding in Search Engine Marketing", 做了一個SERP的研究 ...

他們把使用者分成兩大類, 一部分是具備搜尋技能的人, 一部分是不具備搜尋技能的人, 進行四項實驗, 然後去評估他們對產品的認知

這個研究得到幾個結論:

(1)具備搜尋技能的人較不易被SERP結果影響, 但不具備搜尋技能的人易被SERP結果影響對產品的認知

(2)當他們瞭解許多產品有進行SEO(Search Engine Optimization)來影響SERP時, 沒有顯著影響他們原有的產品認知

(3)不知名產品在搜尋排前時, 產品認知的影響比知名產品來得顯著

以上結果代表什麼意義呢? 就是沒有名氣的產品如果能夠搜尋排前是非常重要的, 可以快速建立產品的Branding, 相對的知名產品就沒必要花太大心力在SERP上, 並且對於廣大的不具備搜尋技能的人影響較大, 就算他們知道SERP可能是被操作的, 也不太會對於搜尋排前產生太大疑問

所以如果您的產品越沒有名氣, 把精力放在SEO來改善SERP, 是決對能夠逐步建立品牌的一個快速方式, 並且能夠獲得消費者對於您的產品的正面認知!

標籤: , , , , , , , ,

繼續閱讀

2008年8月26日 星期二

SERP : Search Engine Results Page

前幾篇文章談了一堆關於Ranking的技術, 最後也就是最重要的就是SERP (Search Engine Results Page), 不管您的PageRank, TrustRank ... 等等指標多好, 如果使用者在搜尋時無法出現在前幾頁, 也就是有較好的SERP的話, 所有的指標都只是白費功夫, 空有好的內容, 但搜尋引擎並不認識你, 可說是非常可惜的事情, 如何才能夠讓您的網頁有優秀的SERP表現呢?

SERP與keyword及網頁結構關係最密切, 而高的PageRank不能保證有好的SERP, 高的流量也不能保證有好的SERP, 如果能夠有好的內容再加上優秀的SERP, 那才是網站成功的保證

當使用者下了一個keyword, 哪些重要因素影響SERP的結果呢?

(1)網頁title

例如本文章的重點在談SERP, 而title就是"SERP : Search Engine Results Page"
如果您的內容無法表現在title tag上, 當然SERP就無法有好的表現, 這也就是上次談到: SEO 三大建議, 希望能夠使用blog結構的原因, 因為可以不需額外功夫就讓內容的title顯示出來

(2)網頁meta data

meta data中的keyword, 與內容中的heading處理, 也可以讓search engine特別注意, 這個在上文Semantic HTML也提到過, 使用正確的tag, 可以讓search engine瞭解您的內容

(3)網址與目錄

如果您的網址或目錄中含有keyword, 如http://www.serp.com/serp-pagerank/serp.html, 如此也可以讓您針對SERP這個keyword有較好的結果, 並且就網址後綴來說, 一般org/net/com 也比ccTLD (Country Code Top Level Domain, 如org.tw/net.tw/com.tw)要好

(4)網頁內容

當然在您文章的內容一定要出現該keyword, 並且真的就是關於該keyword的文章, 否則使用者找到您的網頁也就沒啥意思了

(5)Refresh rate

什麼是Refresh rate? 就是您網站的更新頻繁度, 如果您的網站內容時常更新, 除了能夠讓search engine加快抓取頻率外, 也能夠讓SERP有更好的結果

也許有人會問:到底search engine會多久來抓我的資料? 除了使用http://www.google.com/webmasters/可以讓您上傳sitemap來告知之外, search engine也會自動根據您更新頻繁度來修正抓資料的頻率, 也就是如果每次search engine來抓資料都發現您已經更新, 他會修正縮短抓資料的區間, 如果來抓資料時發現您的網站沒有更新, 則放慢抓資料的區間

因此當您的網頁如果已經被indexing後, 並且您的網站屬於Trust那個區塊, 其實search engine抓資料的頻率有很大因素決定在您手上

標籤: , , , , , , , ,

繼續閱讀

TrustRank, PageRank, SERP

許多站長常常問一個問題 : 為何我的網頁已經建置很久了, 但一直沒被Google index? 另外一個問題也常常被問到 : 為何許多PageRank值比我低的網頁, 搜尋時出現在我的網頁前面?

第一個問題的答案是 : TrustRank, 而第二個問題的答案是 : SERP (Search Engine Result Page)與PageRank不一定成正比

本部落格的網頁最快約10~30分鐘就會被Google抓走, 最慢也在一天內就被Google抓走, 原因是TrustRank

什麼是TrustRank? 詳細資料請看 : Combating Web Spam with TrustRank

由於全球的網頁數目太龐大, 因此Google的Sandbox, TrustBox技術會將網頁區分為兩大區塊-被排除的區塊(Sandbox)與信任的區塊(TrustBox)

哪些網站會被信任? 被Dmoz list的網站, 被Social bookmark熱門推薦的網站, 被TrustRank/PageRank高的網站所連結的網站 ... 這篇文章也提到一些成為TrustBox區塊的方式

另兩篇文章 : What is Google TrustRank (TR)?, The Social Side Of Trustrank 也提出許多提高TrustRank的方式, 本站之前的文章也都提到過

當TrustRank較好時才會快速被抓取, 被抓取後才可能有好的SERP, SERP就與網頁結構有很大的關係, 但是真正決定SERP的因素, 現在還是只能由結果來猜測, 尚無真正能夠證明哪些因素來決定SERP (SERP的研究倒是不錯的研究題目)

不過不管如何, 研究了一堆PageRank, TrustRank, SERP ... 之後, 其實最重要的還是老話一句 - 內容與結構! 就把一些指標暫時放一邊, 好好研究如何產生好的內容與正確使用Semantic HTML比較實在吧!

標籤: , , , , , , ,

繼續閱讀

PageRank, BrowseRank, AlexaRank

在八月初的SIGIR (Special Interest Group on Information Retrieval)研討會上, 出現了BrowseRank: Letting Web Users Vote for Page Importance

這個微軟研究中心的BrowseRank演算法, 大抵是想跟Google的PageRank一別苗頭, 到底這個BrowseRank是否能夠比PageRank來得好呢? 我們來研究一下

大略瀏覽了上述的論文, 發現BrowseRank只是Page-level的AlexaRank, 他的data set來自於瀏覽軟體的使用者資料, AlexaRank由Alexa toolbar所得到的資料來分析, 而BrowseRank由微軟的IE所得到的資料來分析

AlexaRank只是Domain-level ranking, BrowseRank比較仔細一些, 進到Page-level Ranking, Website-level Ranking, 而PageRank是透過link-analysis來取得頁面的重要度

論文題目說: Letting Web Users Vote for Page Importance, 其實是值得商確的, 網友到訪了一個網頁, 未必就認為該頁是重要的, 可能看完後幹聲連連 ...

因此我們可以粗略的說AlexaRank標示了網域的熱門度, BrowseRank標示了網頁/網站的熱門度, PageRank標示了網頁的重要度

到底哪個比較精準, 就牽涉到幾個問題:

(1)比較熱門的網站是否就比較重要?
(2)link數目多就代表比較重要?
(3)不同階層的使用者, 熱門度如何參考?
(4)廣度網站與深度網站, 熱門度如何參考?

當然上面問題沒有正確答案, 學術研究的網站一般不能跟入口網站比熱門度(AlexaRank與BrowseRank), 而新興網站一般不能與歷史悠久的網站比重要度(PageRank), 但是也可能會有例外 (而且例外還不少)

所以也很難去比較AlexaRank,PageRank,BrowseRank到底哪個好, 後續有更多資料再來分享啦...

標籤: , , , , , , , ,

繼續閱讀

2008年8月25日 星期一

Pagerank 演算法研究

Larry Page在1996年間發明了Pagerank的演算法, 爾後又與Sergey Brin在Stanford發表了"The Anatomy of a Large-Scale Hypertextual Web Search Engine", 這個Web Search Engine就是現在使用的Google, Pagerank詳細內容到1998年才發表, 並且直到2001年才取得專利

Page Rank公式如下



(以上公式圖形由http://www.sitmo.com/latex/產生)

以上d指damping factor, 其值在0~1, 一般設為0.85
PR(Vi)為Vi這個頁面的PR值
In(Vi)為連進Vi這個頁面的link數目
Out(Vj)為Vj這個頁面連出去的link數目

也就是說如果有3個頁面A,B,C

A如果連到B,C
B如果連到C

如果A的PR=4
則PR(B)=(1-0.85) + 0.85 * 4/2 = 1.85

而PR(C)=(1-0.85) + 0.85 * (4/2 + 1.85) = 3.4225

B,C會平均繼承A的PR值, 但C會單獨繼承B的PR值

Pagerank是一種link-analysis algorithm, 是根據citation analysis而來, 原本使用在學術期刊論文被引用次數的技術

在Pagerank之後, 1999年Kleinberg發表了HITS algorithm(Hyperlink-Induced Topic Search), HITS決定兩個值: authority value & hub value, 並且是在query time計算, 而不是像Pagerank是在indexing time計算, Teoma就是使用HITS (目前被Ask.com收購)

相對於link-analysis algorithm的content-analysis algorithm, 於另外文章再討論

不管是Pagerank或是HITS, 都是iterative ranking algorithm, 非常耗費演算時間及資源, 因此許多研究者提出了不同的方式來加速計算時間:

1999年 Efficient Computation of PageRank(Haveliwala and et al.)

2002年 Pagerank Computation and the Structure of the Web:Experiments and Algorithms(Arasu and et al.)

2002年 I/O Efficient Techniques for Computing PageRank(Chen and et al.)

2003年 Scaling Personalized Web Search(Jeh and et al.)

2003年 Exploiting the Block Structure of the Web for Computing PageRank (Kamvar and et al.)

2003年 Extrapolation Methods for Accelerating PageRank Computations (Kamvar and et al.)

2004年 Parallel PageRank computation on a gigabit PC cluster (Manaskasemsak and et al.)

2006年 Parallel adaptive technique for computing PageRank (Rungsawang and et al.)

2007年 Improvement of Pagerank for Focused Crawler (Yuan and et al.)

但是不管怎麼加速演算法, 其iterative ranking algorithm的特性不會改變, 但可能會加入content-analysis algorithm的一些特性來走向semantic web

而Pagerank公式內的Out(Vj), 使得一些做SEO的人注意到HTML中的nofollow特性, 來進行一些link quality的改善

標籤: , , , , ,

繼續閱讀

2008年8月20日 星期三

網路行銷/網路營銷 : SEO 三大建議

在許多網站上可以看到諸如: "如何快速提升Pagerank", "Pagerank 7的快速捷徑" ...等等的文章或影片, 但是仔細去看這些網站的Pagerank竟然都是低於3或甚至降到0, 他們教您購買軟體, 他們教您快速增加backlink, 他們教您如何以短短幾分鐘的作業去提升PR值, 但是經事實證明, 不但無法達成目的, 還可能造成反效果, 在本篇文章中, 我們很誠實的告訴您真正被Google認可的方式 ...


在前幾篇文章已經提出許多觀念, 您可以去回顧一下:

Internet大破譯(五): 看不見的網路行銷戰場
善用PageRank指標提升企業競爭力
搜尋引擎的運作背後
網路行銷 : SEO 五大要素
網路行銷 : SEO 十大守則
網路行銷/網路營銷 -- 內容為王

除了以上一些觀點之外, 我們再提供三項實務的建議, 當然這些不管是五大要素, 十大守則, 或是三大建議, 最後回歸的都是 Content (內容), 沒有價值的內容創造不出有價值的網站

但是有價值的網站需要讓search engine瞭解, 並讓讀者可以搜尋到您的內容, 這也是所有搜尋引擎希望所有webmaster能夠協助的地方: 在search engine還不夠智慧的情況下, 讓search eninge能夠真正反應讀者想要尋找的內容

哪三項實務的建議呢?

(1)建立部落格

以目前的網頁結構來說, blog是最適合search engine抓資料的, 因為tag/category/publish date等等要素, 讓文章與文章之間會自然產生關聯, 這些關聯會讓片段的文章形成一串互相有關的內容, 這些關聯可以讓search engine知道如何index這些片段, 也可以讓讀者去一層層找到需要的資料, 因此如果您的網站沒有blog的結構, 應該盡快構思如果組織您的內容去建立有價值的blog

(2)善用網路社交工具

什麼是網路社交工具? network bookmark (網路書籤)就是一個例子, 建立部落格後僅是在您的內容上建立關聯, 而使用網路書籤可以讓blog間串聯起來, 並且讓更多人來看到您的內容, 並且網路書籤的tag可以將這些關係標準化, search engine可以很輕易的index相關內容

(3)使用Semantic HTML

什麼是Semantic HTML? 根據wikipedia的Semantic HTML解釋, Semantic HTML不是一般webmaster能夠瞭解的, 但是有另外一篇比較淺顯的說明您可以參考: Writing Semantic HTML

Semantic HTML的目的就是讓您的內容可以清楚呈現給search engine, 因為search engine並不瞭解您的內容, 但是透過HTML tag, 他可以知道這段文字是屬於哪個類別

總而言之, 其實以上三大建議, 是希望您的網站在結構關聯上, 能夠替search engine做更清楚的描述, 如此一來search engine瞭解您的網站, 也同時讓讀者知道搜尋到的是否是需要的內容

真正的Search Engine Optimization (SEO)是在協助search engine, 而不是在欺騙search engine


許多人都說做SEO要偷偷做, 不要讓search engine知道您的作法, 其實只要是正確的SEO作業, search engine反而是鼓勵的, 因為您可以改善他們的搜尋效能

在內容上提升, 在結構與關聯上修正, 才是真正在進行SEO, 請大家光明正大的進行, 如此一來才可以讓讀者找到需要的資料而不是一堆不相干的垃圾

標籤: , , , , , , , , , , , ,

繼續閱讀

2008年8月19日 星期二

SEO : 搜尋引擎無法索引Flash檔案?


以往大家都認為盡量不要使用Flash, 因為Flash檔案文字內容無法被搜尋引擎抓取, 但是這種情況已經會逐漸改善, 根據Adobe的SWF說明資料, Adobe已經陸續提供技術給搜尋業者, 以防止Flash會被網站開發者排除使用...

雖然如此, 但是目前使用的搜尋引擎只有Google, 並且目前讀取SWF資料的技術尚未純熟, 因此還是盡量不要整頁使用Flash, 並且需依照Google對於Flash/Image的Guideline:

(1)Googlebot does not execute some types of JavaScript. If your webpage uses JavaScript to load a Flash file, we may not be able to discover and index the contents of that file.

不要使用Javascript去載入Flash
如果使用Javascript載入Flash, 這個Flash就無法順利被index

(2)We currently do not attach content from external resources that are loaded by your Flash files. If your Flash file loads another file - such as an HTML file, an XML file, or another SWF file - we may index the contents of those files, but we won't consider that content to be part of the content in your Flash files.

不要使用Flash去載入另外檔案
如果使用Flash載入其他檔案, 這個被載入的檔案就無法順利被index

(3)We're currently unable to index the bidirectional language content (for example, Hebrew or Arabic) in Flash files.

第三點跟我們比較無關

除此之外, Yahoo只是承諾使用Adobe提供的技術, 並未正式使用, 而Microsft Live Search等也尚未有任何相關訊息

雖然Flash檔案會逐步被搜尋引擎接受, 但在使用上還是要注意許多細節, 提供Flash與Non-Flash版本, 才能夠讓您的網站美觀之外, 還能夠俱備搜尋引擎的可讀性

後續可能發展, 將密切觀察後再跟各位報導啦 ...

標籤: , , , , ,

繼續閱讀

2008年8月1日 星期五

YouTube/Google又被告了 ...


真是樹大招風, 義大利一家公司又上法院告上YouTube/Google, 詳細新聞請看這裡 ...

YouTube/Google認為他們已經盡到守門的責任, 只要有問題的檔案被發現, 他們都會盡速下架, 在以上新聞的回應中也引起正反兩面的意見

如同昨天本站的文章所說的, 網路的發展必定會衝擊所有權的問題, 另外Web 2.0的發展亦會引發整個結構上的問題

(1)在網路上發表的創作該不該保護? 該如何保護?

(2)網友在Web 2.0上傳的內容, 系統提供者該不該負責? 該如何負責?

以上兩個問題在實務上是很難解決的問題, 當然理想上, 創作當然該保護! 系統提供者當然應該盡到責任!

在實際的情況上, 網路創作者實在沒有心力去維護所有權, 除非您有辦法天天上法院, 甚至於有辦法控告海外的剽竊者

YouTube/Google的問題與之前P2P音樂侵權問題很類似, 也與大賣場產品出問題有些類似

前陣子也出現一位工程師被刊登假辣妹照片的詐騙集團騙了上千萬的情事, 系統平台提供者該不該負責?

這些系統平台提供者的態度是違法與否的關鍵! 如果一味的控訴他們違法, 可能最後受害的是廣大的使用者...

但是這些系統平台提供者的機制是否真的已經盡到最大的能力, 是Web 2.0的一個很大的商機

在理想上應該做到, 但目前實務做不到, 並不代表永遠做不到, 如果能夠出現一套機制來保障網路著作權及Web 2.0的亂像, 網路的大同世界才能到來

標籤: , , , ,

繼續閱讀

2008年7月30日 星期三

網路行銷 : SEO十大守則

SEO人人會變, 但各有巧妙不同, 有些手法可以讓您乍看來有效, 但時間一過卻比以前還慘, 有些手法根本無效, 卻口沫橫飛的說得讓您誤以為真, 提供SEO十大守則讓您建立正確的觀念, 以餉網友 ...


守則1: 不要為Rank而Rank
許多網站很熱衷於改善Rank, 但是卻忽略了...網站是給人看的, 不是給搜尋引擎看的, 遵守搜尋引擎的遊戲規則是很重要的, 如果search engine已經很明白告誡的作法, 就千萬不要以身試法, 除非您建立某些站台是用來測試search engine的algorithm, 因此切記...該進行的合法SEO動作以後, 一切就交給search engine啦,如果有SEO廠商告訴您, 讓您的網站在十天內PR值變成5 ... 忘了他吧, 肯定會讓您得不償失, 就好像唸書一樣, 得獎狀不能保證您能獲得高報酬的工作, Rank之外還有更重要的事情等著您 ...

守則2: Ranking只是一個過程,不是目的
Ranking只是一個指標, 更重要的是由這個指標去改善您的網站, 不是獲得好的Ranking就能高枕無憂, Ranking起起落落只是在提醒您是否忘記該進行哪些事項, 建立任何網站重要的是否達成您的目的 ... 有時候忘掉Ranking, 好好耕耘內容反而是比較健康的事情, 沒有一年半載的時間, 成果是看不出來的, 從事網路服務提供已經十餘年, 看到太多網站轟轟烈烈開站而草草了結, 沒耐心的人來搞網路行銷會讓您得憂鬱症的 ...

守則3: 瞭解您的對手
SEO的成果不是絕對的, 它是比較的結果, 十幾年前隨便搞個站, 幾天SERP (Search Engine Result Page)就明列前茅, 現在競爭者多了, 越來越困難, 但是您不是要跟Yahoo比, 您不是要跟YouTube比, 只需要鎖定您的對手, 就能清楚規劃出SEO的策略 ...

守則4: 讓搜尋引擎瞭解您的網頁
網站不是為Search engine而設立, 但是要讓它瞭解, 如此才能妥善的抓取您的內容來indexing, 瞭解最新的W3C規則, 健全您的網站結構, 清楚的sitemap, 都能讓您的SEO策略事半功倍...

守則5: 選擇適合的關鍵字
思考您的客戶可能使用哪些Keyword, 進而使用一些工具來分析來客傾向與導引, 是非常重要的, 對於關鍵字的focus不要一次太貪心, 剛開始選擇一兩個關鍵字, 效果出來了再慢慢增加關鍵字, 例如本站在近期才將"網路行銷"加入關鍵字策略, 並且相近簡體字"網路營銷"亦加入, 目前已經從Google SERP 30幾頁的位置, 提升到前三頁

守則6: 內容至上
沒有內容就一切免談, 胡說八道或到處亂抄只能暫時讓您的網站看似豐富, 但最後除了會被Search engine封殺之外, 也會被網友拋棄, 所以還是回歸最重要的原點 -- 內容, 好內容總有出頭的一天, 何況search engine掃瞄的速度之快, 一定可以讓您的網站浮出抬面的...

守則7: 使用正確的鏈結策略
一堆無用的backlink可能讓您的Ranking緩慢提升, 但高品質的backlink可以讓您的Ranking快速改善, 但是如何呢? 前面文章已經說太多次了, 就不再贅言

守則8: 撰寫正確而適合的Meta內容
除了網站正確的結構之外, meta內容是否真的符合您的網站也是很重要的, 您明明沒有賣相機, 但meta內容卻會讓網友透過"相機"找過來, 這些無效搜尋對Ranking的提升是毫無助益的, 只是浪費大家的時間

守則9: 與相關link站在一起
在一些Open Directory的適當類別可以找到您的網站, 在類似的網站能夠link到您的網站, 您自己網站的相關內容能夠link在一起 ... 都是search engine的最愛, 為啥有人說search engine喜歡blog的結構? 因為blog的特性 : 文字多/RSS/tag ... 這些都讓內容相近的文章可以互相串聯

守則10: 如果需要的話, 還是要向專家諮詢
SEO看似簡單, 大家都可以做, 但卻是非常技術性的工作 (也是很勞力的工作), 因此多多向專家諮詢以獲得量身訂做的SEO策略也是非常重要的, 更重要的是您自己要具備正確的SEO觀念, 如此一來才能讓您的網站常久經營下去, 並且日漸茁壯 ...

標籤: , , , , , , , ,

繼續閱讀

2008年6月25日 星期三

Google資料中心的秘密



Google提供全球大量的服務,幾乎已經快橫跨整個資訊科技的服務,但是Google資料中心的內部運作一直都是秘而不宣,許多人可能都碰過Google的服務出狀況,但是這些狀況總能在可容忍的範圍內解決,你可能發現你的Gmail的容量一直在改變,是什麼架構讓空間像捏橡皮糖一樣越捏越大?前陣子Google伙伴Jeff Dean在Google I/O會議中稍微揭開了公司基礎設施的神秘面紗。

Google的神秘面紗包括了: (1)軟體 (2)硬體 (3)叢集平行處理機置

Google軟體的三個核心要素:GFS(Google檔案系統)、BigTable和MapReduce演算法。而硬體卻是一般的伺服器、處理器、硬碟、記憶體等等。另一方面伺服器的叢集能在半秒之內回應700至1,000台伺服器的搜尋請求。

根據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的分散式檔案系統,讓Google服務可以隨時長出空間或是切去毀損的部分,而管理這個GFS的機置就是BigTable。目前有超過200個叢集在執行GFS,其中許多都包含數千台主機。

GFS把一塊儲存的資料(通常是64MB),至少放在三台稱為chunkserver的主機內。

如果chunkserver發生故障,Master Server(主伺服器)便負責把資料備份到一個新的地方。至少在儲存層級,主機故障完全由GFS系統處理。

Google到底擁有多少台伺服器?據Dean表示,每個機櫃存放40台伺服器。而根據某項估計,Google目前在全球有36個資料中心,以每個中心有150個機櫃計算,Google的伺服器至少超過20萬台,並且每天都在增加中...下圖就是Google最早期的server rack,當然目前的硬體比這個肯定更驚人了。



Google之所以成為Google,部分原因是他們推翻了電腦界的傳統作法。當所有的超大型資料中心都使用主流伺服器和軟體,Google的資料中心絕大部分是靠本身的技術構建而成。Google把命運操縱在自己手中,共同創辦人Larry Page鼓勵員工"別太相信有什麼不可能的事情"。

要維持如此大規模的運作,也許可以說全世界是卯起來操Google的架構,Google必須對每一台機器抱有一種隨時可犧牲的態度。伺服器製造商喜歡主打他們的高階主機承受故障或當機的能力,但Google寧願把錢投資在容錯軟體上。他們認為擁有兩倍數量但較不可靠的硬體,勝過一半數量但較可靠的硬體。你必須在軟體的層級提供可靠度,如果你有1萬台主機在運作,每天一定會有一些東西掛掉。這個跟我們一般的認知確實有蠻大的差異,我們通常都希望有數量雖少,但功能穩定的機器,而不願意有一大籮筐兩光的機器。

每個新叢集上線的第一年,通常會發生1,000次個別主機的故障,數千次硬碟故障...

一次電力輸送問題,導致500至1,000台主機失效約6小時...

20次機櫃損壞,每次造成40至80台主機下線...

5次機櫃搖晃,導致半數的網路封包在傳送過程中遺失...

整個叢集至少一次重新上線,在兩天之內的任何時間,影響5%的主機...

整個叢集還有一半的機率會過熱,在5分鐘之內讓幾乎所有伺服器當機,並且花上1到2天的時間恢復...

雖然Google用一般硬體組件來組裝其伺服器,但卻不用傳統的封裝,他們要求Intel提供特製的主機板。Google目前在每40台伺服器的機櫃外,包覆一層外殼,而不是每台伺服器有個別的外殼。

Google在2004年開始設計的BigTable,用BigTable為所有資料提供若干結構,目前用在超過70個Google計畫,包括Google Maps、Google Earth、Blogger、Google Print、Orkut和核心搜尋索引。最大的BigTable實用範例管理橫跨數千台主機、約6 PT(petabytes)的資料。

Google在2003寫出第一版的MapReduce,讓該公司有辦法實際發揮那些資料的用處。舉例來說,MapReduce能找出某個特定字彙在Google的搜尋索引中出現的次數、列出所有特定字彙出現的網頁,和連結到某個特定網站的所有網站。

利用MapReduce,Google能用相對迅速的時間,建立一個包含"digital"、"network"和"society"三個字的所有網頁索引。"Dean說:「你必須能夠依序地橫跨數千台主機作業,才能在一個合理的時間內完成這項工作。」

MapReduce軟體在Google內部的應用日漸增加,2004年8月,該軟體執行2.9萬項工作,到2007年9月,已經暴增到220萬項。在這段期間,完成一項工作的平均時間也從634秒降至395秒,而MapReduce的工作產出則從193 terabytes上升到約1.4萬terabytes。Dean說,Google在任何一天都要執行約10萬項MapReduce工作,每一項工作佔用400台伺服器,且需要5到10分鐘完成。

MapReduce就像GFS,是特別設計用來迴避伺服器問題的。Dean表示:「當某台主機故障,主伺服器知道那台機器正在執行什麼工作,將命令其他主機接手那項map工作。你可能影響到100個map工作,但會有100台主機接手那些工作。」

MapReduce的可靠度一度遭到嚴厲的試煉,當時一個1,800台伺服器的叢集正進行維護作業,工作人員一次拔下80台主機的插頭,同時另外1,720台主機必須接下停頓的工作。Dean說:「速度變得有點慢,但工作全部完成。」而在一次2004年的簡報中,一個1,800台叢集的系統,承受了1,600台伺服器同時故障。

所以,Google資料中心的運作似乎如魚得水,一切順利。但該公司還不滿足,列出了一長串待改進的事項。大多數公司都試圖找出如何平順地將工作在伺服器之間轉移,但Google已經超越了那項挑戰,他們要能夠自由、平順,且自動地,將工作在各個資料中心間轉移。

Dean說:「我們下一代的基礎設施要是一個能夠橫跨大區塊主機轉移,而非單一機器的系統。」目前,某些大型的檔案系統具有不同的名稱,如GFS/Oregon和GFS/Atlanta,但他們都是彼此的拷貝。他表示:「我們要一個單一的名稱集。」

Google種種獨創的系統替他們開創了天下,也建立了其他競爭者很難跨過的門檻,但是隨著越來越複雜的環境,Google自己需要解決的問題,肯定挑戰會越來越大。

標籤: , , , , , ,

繼續閱讀