Agile Cat — in the cloud

Google の 3つの世代を振り返る – Batch, Warehouse, Instant

Posted in .Selected, Big Data, Google by Agile Cat on September 27, 2011

The Three Ages of Google – Batch, Warehouse, Instant
Monday, August 29, 2011
http://highscalability.com/blog/2011/8/29/the-three-ages-of-google-batch-warehouse-instant.html

_ highscalability

imageThe world has changed. And some things that should not have been forgotten, were lost. I found these words from the Lord of the Rings echoing in my head as I listened to a fascinating presentation by Luiz André Barroso, Distinguished Engineer at Google, concerning Google’s legendary past, golden present, and apocryphal future. His talk, Warehouse-Scale Computing: Entering the Teenage Decade, was given at the Federated Computing Research Conference. Luiz clearly knows his stuff and was early at Google, so he has a deep and penetrating perspective on the technology. There’s much to learn from, think about, and build.

世界は変化した。 そして、忘れ去られるべきではない、いくつかのものが失われた。 Google の Distinguished Engineer である、Luiz Andre Barroso による魅力的なプレゼンテーションを聴いたとき、この Lord of the Rings の言葉が、私の頭の中で響いていることに気づいた。それは、Google における伝説的な過去と、現在の輝き、そして疑わしき未来のことである。 彼の話である、Warehouse-Scale Computing: Entering the Teenage Decade は、Federated Computing Research Conference で提供されている。 明らかに、Luiz は自身の専門分野に明るく、また、早期の Google に在籍していた。 したがって、このテクノロジーに対して、深く鋭い見識を持っている。 そこには、学習し、思考し、構築すべき、数多くの事柄がある。

Lord of the Rings applies at two levels. At the change level, Middle Earth went through three ages. While listening to Luiz talk, it seems so has Google: Batch (indexes calculated every month), Warehouse (the datacenter is the computer), and Instant (make it all real-time). At the “what was forgot” level, in the Instant Age section of the talk,  a common theme was the challenge of making low latency systems on top of commodity systems. These are issues very common in the real-time area and it struck me that these were the things that should not have been forgotten.

Lord of the Rings を、2つのレベルに対して適用する。 このレベルの変節において、Middle Earth は 3つの世代を経過してきた。Luiz の話に耳を傾けると、Google には Batch(毎月計算されるインデックス)、Warehouse( データセンターこそコンピューティング)、そし てInstant(すべてをリアル・タイムに)があるように思われる。 この話において、Instant Age セクションの「忘れ去られたもの」レベルに在る普遍的なテーマは、普及品システムの上に低レイテンシー・システムを構築するというチャレンジであった。 それは、リアルタイム・エリアにおける極めて普遍的な問題であり、また、忘れ去られるべきものではないと、私の頭の中に響いた。

What is completely new, however, is the combining of Warehouse + Instant, and that’s where the opportunities and the future is to be found- the Fourth Age.

しかし、完全に新しいものというと、それは Warehouse + Instant という結合であり、また、機会と未来が見いだされる、Fourth Age のあるべき場所となる。

The First Age – The Age of Batch

imageThe time is 2003. The web is still young and HTML is still page oriented. Ajax has been invented, but is still awaiting early killer apps like Google Maps and a killer marketing strategy, a catchy brand name like Ajax.

話は 2003年にさかのぼる。 Web は、まだ若く、HTML はページ指向であった。そして、Ajax が考案されたが、Google Maps のようなキラー・アプリ待っている状況であり、Ajax のような魅力的なブランドネームを持つ、キラー・マーケティング戦略が待ち望まれていた。

Google is batch oriented. They crawled the web every month (every month!), built a search index, and answered queries. Google was largely read-only, which is pretty easy to scale. This is still probably the model most people have in their minds eye about how Google works.

Google は、バッチ志向である。 毎月の Web クローリングを行い(毎月だったのだ!)、検索インデックスを構成し、クエリーに対して答えていた。 Google の大部分はリードオンリーであり、また、そのスケールも、きわめて容易であった。おそらく、この段階の Google は、それが機能すろ様子に、人々が関心をもつという、モデルであったに過ぎない。

Google was still unsophisticated in their hardware. They built racks in colo spaces, bought fans from Walmart and cable trays from Home Depot.

Google は、ハードウェアという視点においても洗練されていなかった。 彼らは、コロケーション・スペースにラックを構築し、Walmart からファンを買い、Home Depot からケーブル・トレイを仕入れていた。

It’s quaint to think that all of Google’s hardware and software architecture could be described in seven pages: Web Search for a Planet: The Google Cluster Architecture by Luiz Barroso, Jeffrey Dean, and Urs Hoelzle. That would quickly change.

Google のハードウェアとソフトウェアにおける、すべてのアーキテクチャが、Luiz Barroso/Jeffrey Dean/Urs Hoelzle による 7ページのドキュメン 『 Web Search for a Planet: The Google Cluster Architecture 』 に記述できていた、と思うこと自体が興味深い。 そして、それらは急速に変化していった。

The Second Age – The Age of the Warehouse

The time is 2005. Things move fast on the Internet. The Internet has happened, it has become pervasive, higher speed, and interactive. Google is building their own datacenters and becoming more sophisticated at every level. Iconic systems like BigTable are in production.

時は 2005年である。 インターネット上の動向が加速してきた。 そして、普及と、高速化と、対話型の実現が、インターネット上で実現されていった。 Google は自身のデータセンターを構築し、すべてのレベルにおいて更に洗練されていった。 BigTable のような象徴的なシステムが、プロダクションのレベルにあった。

About this time Google realized they were building something qualitatively different than had come before, something we now think of, more or less, as cloud computing. Amazon’s EC2 launched in 2006. Another paper, this one is really a book,  summarizes what they were trying to do: The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines by Luiz André Barroso and Urs Hölzle. Note the jump from 7 pages to book size and note that it was published in 2009, 4 years after they were implementing the vision. To learn what Google is really up to now will probably take an encyclopedia and come out in a few years, after they are on to the next thing.

この時点において、従来からのものとは質的に異なる何かを、Google は構築していると悟った。それは、多かれ少なかれ、クラウド・コンピューティングとして、現在の我々が考えている何かである。 そして Amazon の EC2 が、2006年に立ち上がった。 もう 1つのペーパーが、今度は本物の本である、The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines が Luiz Andre Barroso と Urs Holzle により書き下ろされ、彼らが行おうとしていることを要約した。 そのノートは、当初の 7ページからブックサイズにまで拡大され、彼らがビジョンを実装した 4年後の、2009年に出版された。 これまでに Google が行ってきた、本当のことを学習しようとするなら、彼らが次のステージへ移った後に、おそらく百科事典を手に取り、数年を費やす必要があるだろう。

The fundamental insight in this age is that the datacenter is the computer. You may recall that in the late 1980s Sun’s John Gage hailed “the network is the computer.” The differences are interesting to ponder. When the network was the computer we created client-server architectures that appeared to the outside world as a single application, but in reality they were made of individual nodes connected by a network. Wharehouse-scale Computing (WSC) moves up stack, it considers computer resources, to be as much as possible, fungible, that is they are interchangeable and location independent.  Individual computers lose identity and become just a part of a service. Sun later had their own grid network, but I don’t think they ever had this full on WSC vision.

この年代における基本的な洞察は、[the datacenter is the computer]という点に集約される。1980年代の後期に、Sun の John Gage が[the network is the computer]という概念を支持したことを思い出すかもしれない。 この相違点について、思い巡らすのも面白い。 そして、[ the network is the computer]が登場したとき、外側の世界と結ぶクライアント・サーバ・アーキテクチャを、私たちはシングル・アプリケーションとして構成した。しかし、その実体は、ネットワークにより接続される、個別のノードから構成されるものであった。  Wharehouse-scale Computing(WSC)は、考え得る限りのコンピュータ・リソースを、上位のスタックへと押し上げる。 そして、その代償として、ロケーションに依存しない、置き換えが可能なものへとなっていく。それぞれのコンピュータがアイデンティティを失い、サービスにおける単なる一部へと変化していく。 Sun の後期には、自身のグリッド・ネットワークを存在していたが、この WSC のフル・ビジョンを、彼らが持っていたとは思えない。

Warehouse scale machines are different . They are not made up of separate computers. Applications are not designed to run single machines, but to run Internet services on a datacenter full of machines. What matters is the aggregate performance of the entire system.

Warehouse スケールのマシンは、別の考え方による。 それらは、別個のコンピュータで構成されるものではない。 アプリケーションをシングル・マシンで実行するのではなく、データセンターを埋め尽くす全てのマシンで、インターネット・サービスを実行するようにデザインされている。 重要なことは、全体的なステムのパフォーマンス・アグリゲーションである。

The WSC club is not a big one. Luiz says you might have warehouse scale computer if you get paged in the middle of the night because you only have petabytes of data of storage left. With cloud computing

この WSC の世界は、決して広ものではない。 Luiz が言うには、ストレージにペタバイトのデータ残っているから、真夜中に呼び出される場合もあるという、Warehouse スケール・コンピュータの世界になるらしい。

The Third Age – The Age of Instant

The time is now. There’s no encyclopedia yet on how the Age of Instant works because it is still being developed. But because Google is quite open, we do get clues: Google’s Colossus Makes Search Real-Time By Dumping MapReduce; Large-Scale Incremental Processing Using Distributed Transactions And Notifications; Tree Distribution Of Requests And Responses; Google Megastore – 3 Billion Writes and 20 Billion Read Transactions Daily; and so much more I didn’t cover or only referenced.

ようやく、現在にまで戻ってきた。 それは、まだ開発の途上であるため、Age of Instant の機能や振る舞いに関する百科事典も無い。 ただし、Google はきわめてオープンであるため、私たちは手がかりを得られる: Google’s Colossus Makes Search Real-Time By Dumping MapReduce; Large-Scale Incremental Processing Using Distributed Transactions And Notifications; Tree Distribution Of Requests And Responses; Google Megastore – 3 Billion Writes and 20 Billion Read Transactions Daily ; などの、カバーできていない、リファレンスだけのものがある。

Google’s Instant Search Results is a crude example Luiz says of what the future will hold. This is the feature that when you type in a letter in the search box you instantly get back query results. This means for every query 5 or 6 queries are executed. You can imagine the infrastructure this must take.

Google の Instant Search Results は、 Luiz の言う未来へ向けた、まだ荒削りな事例である。 この機能は、検索ボックスで文字入力した直後に、クエリーにより結果を受け取るというものである。 つまり、すべての検索において、5~6 回のクエリーが実行されることになる。そのために必要なインフラストラクチャについて、あなたはイメージできるだろうか。

The flip side of search is content indexing. The month long indexing runs are long gone. The Internet is now a giant event monster feeding Google with new content to index continuously and immediately. It is astonishing how quickly content is indexed now. That’s a revolution in architecture.

検索の裏側にあるのは、コンテントのインデックス化である。 1ヶ月も前のインデキシングを実行しなくなってから、ずいぶんと歳月が経っている。 そしてインターネットは、新しいコンテントのインデックスを、連続的かつ即時的も Google に供給する、巨大なイベント・モンスターであり続ける。 現在における、コンテントのインデックス化を評価するなら、そのスピードに驚くばかりとなる。 それは、アーキテクチャにおける革命である。

Luiz thinks in the next few years the level of interactivity, insight and background information the system will have to help you, will dwarf what there is in Instant Search. If you want to know why Google is so insistent on using Real Names in Google+, this is why. Luiz explains this change having 4 drivers:

Luiz の考えでは、この先の数年において、対話性と、洞察力、バックグラウンド情報のシステムにより、ユーザーは支援される必要があるようだ。 それにより、Instant Search は突出した存在ではなくなる。なに故に、Google+ における Real Names 使用を、Google が強く主張しているのかと考えるなら、それが答えなのかもしれない。 Luiz の説明によると、この変更は、以下の 4項目を含んでいる:

  • Applications – instantaneous , personalized, contextual
  • Scale – increased attention to latency tail
  • Efficiency – driving utilization up, and energy/water usage down
  • Hardware Trends – non-volatile storage, multi-cores, fast networks

Instant in the context of Warehouse computing is a massive engineering challenge. It’s a hard thing to treat a datacenter as a computer and it’s a hard thing to provide instant indexing and instant results, to provide instant in a warehouse scale computer is an entirely new level of challenge. This challenge is what the second half of his talk covers.

Warehouse コンピューティングという環境での Instant は、大規模エンジニアリングにおける課題である。 Ddatacenter as a Computer の取り扱いは難しく、また、Instant インデキシングと Instant リザルトの提供も難しいことである。Warehouse スケールのコンピューティングにおいて Instant を提供することは、完全に新しいレベルのチャレンジなのである。 このチャレンジについては、彼の話の後半でカバーされている。

The problem is we aren’t meeting this challenge. Our infrastructure is broken. Datacenters have the diameter of a microsecond, yet we are still using entire stacks designed for WANs. Real-time requires low and bounded latencies and our stacks can’t provide low latency at scale. We need to fix this problem and towards this end Luiz sets out a research agenda, targeting problems that need to be solved:

何か問題かといえば、この課題に対して、私たちが立ち向かっていないことである。 私たちのインフラストラクチャは、壊れている。 データセンターは、マイクロ・セカンド・レベルの容量を有しているが、私たちは依然として、WAN のためにデザインされた全体的なスタックを使っている。 Real-time は、低レイテンシと結合レイテンシを要求し、また、私たちのスタックは、必要とされるスケールでの低レイテンシを提供できない。 この問題をフィックスする必要があり、また、Luiz が設定した研究アジェンダに立ち向かっていく必要性がある。 そして、解決されるべき問題点は、以下のとおりである:

  • Rethink IO software stack. An OS that makes scheduling decisions 10s of msecs is incompatible with IO devices that response in microseconds.
  • Revisit operating systems scheduling.
  • Rethink threading models.
  • Re-read 1990′s fast messaging papers.
  • Make IO design a higher priority. Not just NICs and RDMA,  consider CPU design and memory systems.

“The fun starts now” Luiz  says, these are still very early days, predicting this will be the:

『 興味深いことが始まった』と Luiz は言う。 そして、以下の項目を予測するには、まだ、日が浅すぎる:

  • Decade of resource efficiency
  • Decade of IO
  • Decade of low latency (and low tail latency)
  • Decade of Warehouse-scale disaggregation, making resources available outside of just one machine, not just a single rack, but all machines.

This is a great talk, very informative, and very inspiring. Well worth watching. We’ll talk more about specific technical points in later articles, but his sets the stage not just for Google, but for the rest of the industry as well.

このトークは、とても素晴らしく、また有益であり、大いに触発される。 考えるべき、充分な重みを持つ事柄である。 私たちは、この後の記事においても、特定のテクニカル・ポイントについて説明していくだろう。 ただし、彼のセットするステージは Google のためだけに有るのではなく、この業界全体のための有るのだ。

Related Articles

 

 

 

 

ーーーーー

TAG indexひさびさの、Todd Hoff さんの記事です(Big Data カンファレンスのリストはありましたが)。 この記事は、たしか 8月の終わりにポストされていたのですが、f8 が気になって手を付けられずにいました。 でも、Facebook が新機軸を発表した後に、こうして両社を見比べてみると、やはり Google はインフラストラクチャの会社なのだと感じさせてくれますね。 とてもカッコ良いです :)  このドキュメントの先にあるリファレンスは、まだ、まったく見ていませんが、きっと深遠な世界が広がっているのでしょうね。 ーーー __AC Stamp 2

ーーーーー

<関連>

Google Instant では、リアルタイム検索のために MapReduce を排除!
Google Megastore – 1日で 30億 Write/200億 Read のトランザクションを実現
Google の発想 – リクエストとレスポンスを Tree で制御する
Google IO 2011 での、Big Data 関連ビデオをピックアップ!
Google – Cluster Computing and MapReduce Lecture 1-5
Google は 1000万台のサーバーを目指す ?
Google 的 クラウド連携の ABC ?

 

f8 終了後の 24時間で、34000本の Facebook アプリが Heroku 上で量産されたというが

Posted in .Selected, Facebook, PaaS, Salesforce by Agile Cat on September 27, 2011

Facebook apps on Heroku: 34,000 in 24 hours
By
Derrick Harris Sep. 23, 2011
http://gigaom.com/cloud/facebook-devs-launch-34k-apps-on-heroku-in-24-hours/

_ Gigaom

Last week, Facebook and Heroku announced a partnership through which Facebook developers could easily launch applications on Heroku’s cloud Platform-as a Service via the Facebook development portal. That appears to have been a smart partnership for Heroku, which reports it saw more than 33,800 Facebook applications launched on its service since the social network giant unveiled new features at yesterday’s f8 conference.

先週に発表された Facebook と Heroku のパートナーシップは、Heroku の PaaS 上のアプリケーションを Facebook 開発ポータルを介して、Facebook のデベロッパーたちが容易に立ち上げていけるというものである。 このソーシャル・ネットワークの大手が、昨日(9/22)の f8 カンがレンスで、この新しい機能について発表してからというもの、実に 33,800 本以上の Facebook アプリケーションが、このサービス上で立ち上げられるのを確認したとレポートするHeroku にとって、それはスマートなパートナーシップであるように思える。

imageSalesforce.com GM of Platforms (and former Heroku CEO) Byron Sebastian ⇒

On the official Heroku blog, Adam Seligman notes “that’s more than 20 [applications] a minute. Facebook has again innovated and captured the excitement of the developer community.”

そして、Heroku のオフシャル・ブログでは、「 1分間に 20本以上のアプリケーションである。 Facebook はイノベーションを繰り返し、また、デベロッパー・コミュニティにおける興奮を手にしている 」と、Adam Seligman は指摘する。

However, in the comments to both Heroku’s post and on Hacker News, there’s some debate over whether these are “fake apps” launched to get access to the new Timeline feature. It’s difficult to tell, especially because developers don’t need to launch on Heroku to access those features, some commenters claim.

しかし、Heroku によるポストと、Hacker News でのコメントにおいて、それは、新しい Timeline 機能へのアクセスを得るために立ち上げられた、「 fake apps 」だという議論が展開されている。デベロッパーにとって、それらの機能にアクセスするために、あえて Heroku 上で立ち上げる必要がないため、その議論に甲乙をつけるのは難しいと、何人かのコメンテーターは主張している。

Assuming at least a good portion are actual applications, though, such a large number is also a ringing endorsement for PaaS, in general, which increasingly appears to ideal for developers wanting to build and launch lightweight applications. For individual developers, PaaS is a way to host an application without getting caught up in systems management or other low-level concerns. Enterprise developers get the same benefits, even if they only utilize right now for non-mission-critical Facebook or mobile applications.

一般論として考えれば、それだけの数のアプリケーションが、である、PaaS の指示を訴えることは良いことである。ライトウェイトなアプリケーションの開発と立ち上げを望む開発者にとって、それは理想に近づく一歩である。それぞれのデベロッパーにとって、 システム管理や低レベルの事柄に煩わされることなく、アプリケーションをホストするのが PaaS である。そして、Facebook アプリやモバイル・アプリといった、非ミッション・クリティカルなものに限定されるにしても、エンタープライズ・デベロッパーも同じメリットを享受できるのだ。

Related research and analysis from GigaOM Pro:

ーーーーー

TAG indexまぁ、アプリケーションが簡単かつ確実に作れるのなら、このように開発環境が整備されていくことは、歓迎すべきことなのだと思います。 それにしても、ソフトウェアを開発するための環境と、それを展開するプラットフォームが、あっという間に様変わりしてしまったように思えてなりません。 自分自身の環境に目をやって、この一年にインストールしたアプリケーションを眺めてみても、その変容ぶりは明らかです。 みなさんも同じではないでしょうか? ーーー __AC Stamp 2

ーーーーー

<関連>

Facebook の f8 関連記事 – 25本のマトメ・ページ
Facebook の Washington Post アプリを動かしてみた!
これは、Facebook – Open Graph のヘンリンなのか?
Facebook Timeline まとめページ – サンプルから論評まで

 

%d bloggers like this: