2013年8月16日金曜日

スケールアウト、する?

「スケールアウト」という言葉をよく聞くようになったのは、Google、Amazonなどが急成長するなかで、「クラウドコンピューティング」が注目されるようになってからです。「クラウドコンピューティング」とは、「2006年のGoogleのCEOであるエリック・シュミットによる発言が最初」(Wikipediaより)だそうですが、要するにITを使う側にとって便利だけど雲のように「もやもや」した存在です。そして、この「もやもや」は世の中を変える力をもった「もやもや」であることがその後に証明されました。

「クラウドコンピューティング」の大きな特徴は、それまでの厳密なシステムの存在が、ネットワーク、分散処理などによって柔軟になったことです。いや、柔軟に理解しなくてはならなくなった、というのが正解でしょう。例えば、自分がクラウド上のサービスを利用しているとき、自分のデータがどこの国のどこのサーバ上にあるのかまったくわかりません。場合によっては、あちこちのサーバに分散してデータが保存されていたりします。

これを受け入れることは結構、大変です。なぜなら、これまでのサービスでは、自分のPCや、特定の事業者が運営する特定のサーバ上にデータがあるのが前提だったからです。

さて、自分のPCで考えたとき、PCが古くなって処理速度を上げたいとき、新しいPCに買い替えるのを「スケールアップ」と言います。CPUやメモリの性能が上がり動作が早くなります。一方、最新でなくても、新しいPCを追加し、2台で作業することで処理能力を高めることを「スケールアウト」と言います。ネットワークの世界では、「スケールアップ」と「スケールアウト」を組み合わせて、システム全体での情報処理能力を飛躍的に高めているのですが「クラウドコンピューティング」の伸展により「スケールアウト」も発展しました。

ところがGoogleやAmazonの飛躍的な成長に伴い、「スケールアウト」が注目されると、むしろ、「スケールアウト」とは、GoogleやAmazonのような急成長する企業を指すようになります。例えば、「スケールアウト」する企業に就職したい、といったように使われるようになったのです。

この使い方はちょっと微妙です。例えば、人をシステム構成に例えるのであれば、人はノード、つまり、処理(=仕事)を行う単位ですから、仕事が増え従業員数が増えている会社に入りたい、つまりノードとしてぶら下がりたいことになります。しかしながら、成長企業も含め、企業はぶら下がり社員を必要としていません。今、企業は自ら企業を成長させる自立し貢献する人材を求め、経験の場を与えようとしているのです。

一方、成長するポテンシャルを持った企業、もしくは、事業成長を目的とした仕事選びということであれば、自ら「スケールアップ」する機会ということですから、「スケールアウト」という考え方とはだいぶ異なります。

改めて人材に関して「スケールアウト」という言葉を使う場面を考えると、知識や経験のノードを増やすこと、他流試合、学び直しといった概念で使った方が適切な気がします。


蚊取り線香の並列処理です