# James Hamilton
[[Microsoft]] Live Platform Services のアーキテクトとして、インターネットスケールサービスの設計・運用に関するベストプラクティスを体系化した人物である。Microsoft 在籍 10 年以上にわたり、Exchange Hosted Services チーム(約 700 サーバ、220 万ユーザ超)を率いた経験を持つ。
Microsoft 入社前は IBM の DB2 UDB リレーショナルデータベースシステムのリードアーキテクトを務め、IBM 初の C++ コンパイラの出荷も担当した。初期キャリアは自動車整備士として、エキゾチックなイタリア車の整備とレースに従事していた。
[[@2007__LISA__On Designing and Deploying Internet-Scale Services]] では、MSN・Windows Live Search・Windows Live Mail・Xbox Live・Exchange Hosted Services・Messenger Operations・Microsoft Global Foundation Services Operations 等の複数チームからの知見を統合し、サービス設計から運用までの 10 領域にわたるベストプラクティスを整理した。「障害を前提とした設計」「すべてを自動化せよ」「本番でテストされていないものは動かない」といった原則は、後年の SRE・DevOps 思想の源流の一つと位置づけられる。
後年は Amazon Web Services の VP/Distinguished Engineer としてデータセンターインフラの設計に携わったことでも知られる。
Microsoft Research 在籍中は [[Albert Greenberg]] らとともに VL2([[@2009__SIGCOMM__VL2 - A Scalable and Flexible Data Center Network]])の共著者となった。VL2 は Clos トポロジと Valiant Load Balancing でデータセンターネットワークのアジリティを実現したアーキテクチャで、本番データセンターの実測データに基づいて設計された。
## WSCのTCO試算(『Computer Architecture: A Quantitative Approach』6章)
Hamilton(2010、Amazon Web Services在籍時)は8MW施設のWSCを対象にしたTCO(総所有コスト)ケーススタディを発表し、本書6章の中心的な定量データとして引用される。施設CAPEXは8800万ドル、サーバ・ネットワーク機器を含む総CAPEXは1億6750万ドルと試算され、サーバ(3年)・ネットワーク機器(4年)・施設(10年)という異なる償却年数で月次OPEX(約380万ドル)へ変換される。この計算から、電力・冷却インフラの完全負担コストがおよそ$2/ワット年になるという設計指針が導かれる。Hamilton自身の別の分析(Barroso et al. 2013と比較)では、12MW施設の減価償却コストが$0.08/ワット/月、借入利子を含めた総コストが$0.37〜$0.43/ワット/月という独立の見積もりが提示され、両者はほぼ一致する。(Source: [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 6 Warehouse-Scale Computers to Exploit Request-Level and Data-Level Parallelism]] §6.4)
Hamilton(2010)はまた、1000台規模の従来型データセンターとWSC規模のデータセンターを比較し、WSCがストレージコストで5.7倍・管理者あたりサーバ数で7.1倍・ネットワーク帯域コストで7.3倍の優位を持つという規模の経済を定量化した。Hamilton(2017)はさらに「1リージョンあたり最低3つのWSCを持つべき」というフェイルオーバー設計指針(2拠点は各拠点が容量の50%を予備に残す必要があるが、3拠点なら2/3稼働で同水準の耐性を確保できる)を示し、クラウド事業者は将来的に現在の"O(10²)"規模から"O(10⁵)"規模までWSC数を拡大すると予測した。(Source: [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 6 Warehouse-Scale Computers to Exploit Request-Level and Data-Level Parallelism]] §6.5)
## 関連
- [[@2007__LISA__On Designing and Deploying Internet-Scale Services]]
- [[@2009__SIGCOMM__VL2 - A Scalable and Flexible Data Center Network]]
- [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 6 Warehouse-Scale Computers to Exploit Request-Level and Data-Level Parallelism]](WSCのTCOケーススタディ、規模の経済、リージョンあたりWSC数の設計指針)
- [[Microsoft]]
- [[Amazon Web Services]]
- [[インターネットスケールサービス設計]]