亞馬遜AWS業務副總裁:如何在基礎設施上降成本
亞馬遜Amazon Web Services業務的副總裁、著名工程師詹姆斯漢密爾頓(James Hamilton)在AWS re:Invent大會上解釋了公司是如何盡可能地將成本降低,同時又盡可能地將創新提高的,其實關鍵在于控制基礎設施。
如果有人還想搞清大型云服務供應商如何不斷推出新功能并降低服務價格的話,不妨聽聽詹姆斯漢密爾頓是如何說的。他的回答其實很簡單,就兩個字:規模。
規模就是AWS成功的秘訣。為了說明這個問題,漢密爾頓指出了一個經常被引用的統計數據:當亞馬遜網站的銷售額達到70億美元的時候,為了支持公司的整體運作,AWS每天都要增加大量新的容量。他補充說:“實際上,它當時的規模比那大得多,公司的業務每一天都在壯大。”
漢密爾頓說,一周七天就是AWS的周轉時間。AWS現在已經在全球9個地區部署了服務器,有些地區還建了多個數據中心。他解釋說,你建的數據中心越多,你獲得的業績就越好,冒的風險就越小。在創新方面,你能做的***的事情就是降低失敗的風險,加快周轉的速度。
大規模提供一項服務的成本主要取決于基礎設施。漢密爾頓說,軟件技術方面的成本幾乎為零。
因此他認為他在過去5年里看到的創新比之前他在20年里看到的創新還要多。因為象亞馬遜、Facebook、谷歌(微博)和微軟那樣的公司,已經在調整基礎設施的規模方面做得非常好了。
亞馬遜的團隊在網上交易數據庫性能上創造了一項世界紀錄:平均每秒鐘達成69項交易!他笑稱:“派對的時間很長啊。”現在,亞馬遜的一個DynamoDB服務地區每月可處理2萬億條指令。亞馬遜S3存儲系統的高峰處理速度達到了每秒150萬條指令。
亞馬遜是如何保證將成本降到盡可能低,同時讓創新保持盡可能高的呢?
服務器
與谷歌和Facebook一樣,亞馬遜也在設計自己的服務器,那些服務器都是專門為他們提供的服務而定制的。以前,漢密爾頓曾經勸公司只從服務器廠商申請1或2個SKU以降低復雜性,但是時過境遷,現在的情況已經不同了。一旦你控制了這個過程,直接帶著設計去服務器廠商那里的話,可以將價格砍掉30%,而且這樣做還可以提高性能和加快周轉速度。
他說:“現在,你可能會希望你的客戶不要去優化你的硬件。”
存儲設備
漢密爾頓在AWS客戶定制存儲資源問題上沒有透露太多的內容,但他談了一則軼聞。現在你在市面上能夠買到的最密集的存儲服務器,是由廣達電腦設計的。滿滿一機架的存儲服務器的重量大約為四分之三噸。漢密爾頓說:“我們有更緊密的設計,它的重量超過了1噸。”
網絡
網絡是一個大問題,因為價格不斷上漲和很多公司過分降低其數據中心的帶寬。
漢密爾頓說,在很多典型案例中,每60臺服務器中也只有1臺服務器可以滿負荷運作。它們的工作效率還不錯,因為整體交易量還不算大。當然,它們并不是真地在為AWS服務工作。AWS無法控制用戶們運行的所有負載。他解釋說:如果他們運行某些應用比如RapReduce,集群中的每一臺服務器可能都會達到100%的帶寬容量。
與Facebook、谷歌一樣,AWS也在開發自己的硬件和產品,漢密爾頓說:“我們已經接管了網絡,我們突然就能象平時一樣做各種事了。”
在數據中心外面,AWS還將投資各種關鍵的資源,以保證它能獲得所需的帶寬。
發電
AWS還建了自己的電站,鑒于每一個電站的發電量都在50到100兆瓦,因此這絕不是一項規模較小的資產。
設備可能會非常昂貴。亞馬遜甚至還聘請了固件工程師,他的任務就是重新編寫通常在開關設備上運行的軟件。
漢密爾頓說:“我們的目標不是保護發電機,而是保證服務器可以持續運行。”
資源利用
各種公司都曾在如何高效利用各種資源的問題上糾結了若干年,因為他們購買了大量的服務器來保證他們可以控制高峰時期的工作負載,并且在其他時間保持空閑。它并未改變它們是首先被亞馬遜購買的產品,它并未改變這一事實。實際上,資源利用的問題是AWS在降低成本時遇到的***的問題。
當你在網絡上規模化運營時,能夠改變這一數據的任何東西都值很多錢。
幸運地是,亞馬遜的一家正宗的云服務供應商,因此它的設備利用率通常都在20%以上。
AWS推出了Spot Instance定價系統以保證在服務計費時將沒有被使用過的資源剔出來,希望以更低的利潤將它賣出去。漢密爾頓說,任何客戶支付的服務費超過了運行那些服務的成本的話,從補償資本開支的角度來說都是值得的。
漢密爾頓笑稱,如果分析師們還是不給亞馬遜股票買入評級的話,那他們可能并不了解AWS。他說:“我們認為云計算市場與電子商務市場一樣,都是薄利多銷的行業。”