2010年3月31日水曜日

Google Apps Marketplace登場 
                             ・・・この指止まれ!

Googleのクラウドストレージを核とした戦略について3回述べてきた。
ひとまず、これについては終了とし、この過程で提携した3社について、Google Apps Marketplace発表と合わせて触れてみようと思う。

-Google Apps Marketplace-
Googleは3月9日夜、同社キャンパスで行われたデベロッパー向けイベントCampfire OneでGoogle Apps Marketplaceを立ち上げた。このサイトはGoogle Apps APIを使った3rd Partyのビジネスアプリケーションやサービスを販売(一部無料)するもので、同社によると現在のGoogle Appsユーザは全世界200万社、延べ2,500万人になる。この膨大な市場を目指して参入したベンダーは発表時点で50社、これからうなぎのぼりに増えるに違いない。参加ISVやプロバイダーは登録料$100、そして売上げの20%を支払う。彼らは豊富に用意されたAPIを使って、Googleの持つ機能と自らの機能を統合して提供する。これによって、より高機能で便利なプロダクトやサービスが生まれるというわけだ。勿論、OpenIDのGoolgeアカウントがあれば、シングルサインオンでGoogle DocsやAppsのユニバーサル・ナビゲーションバーから直接登録された3rd Partyクラウドに移動することも出来る。

Google Apps Marketplaceの使い方を見てみよう。
まずサイトに入り、条件検索や分野別から複数の候補を見つけ出し、さらに機能絞込み(Refine by Features)を使って最終サービスを選び出す。勿論、当該ページ内のデモビデオを見たり、インタビュー、レーティングなどを参考にすることは重要だ。最終候補が決まれば当該サービスの追加ボタン“Add it Now”を押し、Google Appsの自社ドメイン名を入れる。その上でGoogle Appsに管理者としてログインし、当該サービスの条件(Terms of Service)を確認・承認(Agree)すればOKだ。これで利用ユーザからはGoogle Apps Control Panel上に新しいサービスが見えるし、Gmailなどのアプリケーション画面上段の"Universal Navigation Toolbar”から新サービスを実行することが出来る。




-Memeo Connect for Google Apps-
さて話を少し戻し、Google Apps Marketplaceに先立ってクラウドストレージが発表(1/12)された時の提携3社について見てみよう。まずMemeoだ。同社の場合は元々Backup/Share/AutoSyncなどのパッケージを開発するISVである。今回の提携で発表されたMemeo Connect for Google AppsはAutoSncの拡張版だと考えて良い。このサービス(Memeo Connect)はPCやデバイスのSynchronization-同期化-が簡単に出来ることがウリだ。利用はGoogle Appsにログインし、ツールバーの“More”から"Memeo Connect”を選択すると専用ウィンドウが開く。このMemeo Connectウィンドウの所定場所(左下)に必要なファイルをドラッグ&ドロップすればいい。後は自動的にGoogleのクラウドストレージにあげてくれる。この際、オフライン状態でも気にすることはない。コンピュータがインターネットに接続された時に自動的にアップされる。これがAutoSyncのワザである。同社のお勧めはMicrosoft OfficeのWordやExcelなどをGoogleクラウドにアップし、Memeo Connectて自分のデスクトップやラップトップ、さらにはモバイルと同期化させたり、仲間とのコラボレーションに利用する。このように見ると、機能的にはDropboxな どと競合するが、利用はGoogle Appsユーザに限定され、サブスクリプションは$9/人/年だ。



-Syncplicity-
次にSyncplicityの場合もその名のようにシンク(Synchronization-同期化)がベースとなって、これをもとにしたバックアップ(Backup)やコラボ(Collaboration)が出来る。同社はMemeoのようなISVではなく、クラウドサービスプロバイダーである。提供されるサービスは個人向け(Personel Edition)とビジネス向け(Business Edition)。個人向けは無償版が1ユーザで2GBのクラウドストレージと2台のコンピュータまで、有償版は1ユーザで50GBストレージと5台のコンピュータまでが$15/月だ。ビジネス向けは3ユーザで$45/月~となっている。利用にあたっては所定の情報を登録してエージェントソフトをダウンロードすればOKだ。後は指定したMy Documentsなどのファイルが自動的にクラウドにアップされる。同じアカウントでログインすれば、自分の持つデスクトップやラップトップ、モバイル間でクラウドファイルとシンクされる。この際、File Manager上ではシンク済みのファイルにはチェック()が付けられているので分かり易い。同社が最も力を注いでいるビジネス版では、社員登録をし、彼らのファイルのバックアップ(Desktop、Documents、Music、Photos、Favorites)指定、コラボレーションのためのシェアリングファイル(Owner、Reader、Collaboration)権限など細かなポリシー設定が可能だ。



そしてGoogle Docsとの連携が登場した。
これまでのSyncplicityはPC上のローカルファイルをクラウドにあげてシンクをすることが基本だった。しかしGoogle DocsはWebアプリケーションで、そのファイルはクラウド上にある。SyncplicityからOpenIDでログインし、ツールバーに統合されている“Google Docs”ボタンをクリック、そしてシンクしたいDocsファイルを指定すればOKだ。これによってローカルだけでなく、クラウドファイルを含めた同期化が可能となった。

-Manymoon-
Manymoonの場合は、Google Appsにより統合されている。
例えばGmailにOpenIDででログインし、ユニバーサル・ナビゲーションバーの"More”からManymoonを選択、後はManymoonに移る。Manymoonのサービスはプロジェクトベースの情報共有がメインだ。キャッチフレーズは“Social Productivity”、つまり社内のソシアルネットワークを介し、情報共有による生産性向上を目指している。テーマやメンバーなどのプロジェクト設定、その中にタスクを定義し、タイムシートを使ったスケジュール管理、そして各種の共有ドキュメントなどを扱う。プロジェクトはメンバー管理が基本となるため、Google Docsを含めた共有ドキュメントのアクセス権管理はManymoonが行う。Google Appsとの統合では、タイムシートの替わりにGoogleカレンダー、共有ドキュメントにもGoogle Docsが利用出来るようになった。勿論、Manymoonの中からGoogle Docsのドキュメントやスプレッドシートなどの作成も出来る。



ここにあげた3社は、Google Apps Marketplaceの一部である。
最近の同サイトの人気によると、評判も導入実績もManymoonが一番だ。
その他、Microsoft Officeと連携させたOffiSyncZoho CRMなども好評、どうやら、Googleの“この指止まれ”作戦は順調のようである。

2010年3月23日火曜日

Googleのクラウドストレージ戦略を読む-3
                      ・・・Googleらしさとは何か

ここまでGoolgeのクラウドストレージ戦略を読むと題して、①その核となるGFSの改良、②次期データセンター構想のWSC(Warehouse-Scale Computer)について説明してきた。今回はその上で、同社のクラウドストレージ戦略がどうなるのか読み明かしてみたい。

-GDriveがやってきた-
今年1月12日、同社はGoogle Docsにクラウドストレージ機能を追加すると発表した。発表によれば、どのようなファイルもクラウド上のDocsにアップロード/ダウンロードが出来る。ただファイルの最大サイズは250MBまで。利用は1GBまでが無料、これを超えた場合は“Googleのクラウドストレージ戦略を読む-1”で述べたように、20GBの追加利用料がたった$5/年、400GBなら$100/年、16TBで$4096/年となる。つまり1GBあたりの1年間の利用料はわずか25¢だ。一部のサイトではGDriveの登場-GDrive is Coming-だと色めき立った。
もっともこれには予兆があった。2008年6月、GoogleがDocsにPDFをサポートするとした時点で、いずれどのようなファイル形式もサポートされると思われていたからだ。それが1年半たって現実になった。これまで .doc、.txt、.ppt、.pdfなどのオフィス関連に限定されていたDocsのファイル形式は一気に全てが扱えるようになった。勿論、アップロードファイルを共有ファイルすればコラボレーションが出来る。

-3rd Partyとの連携、その意味するもの・・・SaaS-
もうひとつ重要な発表があった。
Googleはクラウドストレージの発表に伴って、外部企業(3rd Party)との連携戦略に出た。これはSaaS領域の強化戦略と考えることが出来る。今回の発表では、PC上とクラウドの同期化を行うMomeo、PCのバックアップなどを行うSyncplicity、プロジェクト管理をベースとしたドキュメント共有Manymoonの3社だ。つまり、Googleとしては任意のファイルを扱えるクラウドストレージを低価格で提供し、後は3rd Partyに任せようというわけだ。本ブログで2月の始めから4回シリーズ-Cloud Storage (1)Cloud Storage (2)Cloud Storage (3)Cloud Storage (4)-で見てきたようにクラウドストレージの世界は百花繚乱である。このような状況ではいくらGoogleでも参入は容易ではない。

そこで考え抜いたあげくの作戦はAndroidと同じ方法だった。
市場は熟成し、多くのベンダーがいる。彼らのノウハウを生かしながらGoogleのクラウドストレージを使って貰い、共存共栄を図りたい。まさに携帯電話市場と同じだ。クラウドストレージプロバイダーは今や価格競争に晒されている。発表した低価格クラウドとの連動だけでも魅力的なはずだ。そして、AndroidがLinuxベースのオープンソースであるように、GoogleにはDocsとGmail、Google TalkGoogle CalendarGoogle SiteなどをパッケージにしたGoogle Appsがある。これらには豊富なGoogle Code APIが用意されている。Googleの基本的なオープン志向と低価格ストレージ、そして3rd Party連携が三位一体となれば大きな効果が出せる。現に Amazon S3をバックエンドエンジンに使ったプロバイダーは沢山ある。もし、彼らがS3からこの廉価なストレージに乗り換えるようなことになれば弾みがつく。そのためには、阻害要因の排除や推進策が欠かせない。

-AppEngineはどうなるか・・・PaaS-
Googleは検索エンジンの基盤となる大規模分散システム構築を自力で行ってきた。
そしてGFSの改良も済み、Datacenter as a Computerによる次世代データセンター構築も始まった。しかし、今日のクラウドコンピューティングの視点から見ると構造的な問題もある。レポートで述べられているWSC(Warehouse Scale Computer)のソフトウェア構造は、Platform/Cluster/Applicationの3層からなる。Googleはこの2層目のCluster-levelを“Data Center OS”とでも言うべきものだという。しかしユーザーからは通常のLinuxやWindowsは見ることが出来ない。
つまり、OSの上に自由にミドルウェアやアプリケーションを積み上げるこれまでの’ソフトウェアスタック構築は難しい。さらにWSCでは1層目のPlatform-levelにカーネルなどがあり、通常の仮想化技術の適用にも難点がある。簡単にいうと、Googleは説明しないがIaaSを提供できない理由はここにあるのだろう。以上のことからGoogleが当面、下位のIaaSを避けながら、PaaSのGoogle AppEngineと上位のSaaS(Docs/Appsなど)に傾注しているのは頷ける。さて、話をもう少し先に進めるとどうなるだろう。Googleの本来的な特徴は大規模分散処理であるし、WSCでも、そのことははっきりしている。PaaS強化で考えられることは、まずストレージ関連だ。現在Googleストレージには2種類ある。GFSベースとそうでないものだ。GFSは基本的にGoogle検索エンジンなどの製品に限定されているが、唯一、ユーザーに開放されているのがGoogle AppEngineだ。AppEngineのDatastoreはGFSベースで3ヶ所に分散保管され、バックアップの心配はない。ただ利用料金は1GB/月で15¢だから、20GBの年間利用料を単純計算すると$36(=20 x 12 x o.15)、Docsストレージと比べ約7倍、GFSの3ヶ所分散を加味しても2倍である。つまり、いずれかの時点でAppEngineのストレージコストが大きく下がる可能性が十分ある。

以上Googleのクラウドストレージ戦略について探ってきた。
Amazon Web Serviceにはかなり遅れをとったが、やっと追撃体制が整ってきた。
低価格のクラウドストレージをテコに3rd Partyを呼び込みたい。その上でMapReduceやDatastoreなどの分散対応機能が拡充できれば新たな展開が生まれる。いずれ、クライアントデバイスはブラウザだけあれば良い時代になるだろう。ブラウザから進化したChrome OSがSaaSと連携したり、仮想マシンより大きなクラスターの実行など、既成概念に捕らわれないGoogleらしいクラウドコンピューティングを大いに期待したい。

2010年3月16日火曜日

Googleのクラウドストレージ戦略を読む-2
                ・・・ Datacenter as a Computer

少しGoogleのクラウドストレージ戦略から横道に逸れるが、今回はGoogleの目指す“Datacenter as a Computer”について触れてみようと思う。昨年春、発表されたこのレポートは今後のGoolgeのデータセンターの在り方について述べている。

-コンテナー型データセンターの普及-
最先端のデータセンターと言えば、このところの流れはコンテナー型だ。工場でコンテナーの中にサーバーやストレージ、コミュニケーション機器、空調設備を組み込んで、大型トレーラーで搬送し、現地で組み立てる。この方法ならデータセンターの建設は早いし、必要に応じてキャパシティーの増強も自在だ。実際のところクラウドでお馴染みのAmazonやMicrosoft、さらにYahoo!eBayなど多くの大規模データセンターが採用している。勿論、Googleの場合も以前から自社仕様を導入している。

Microsoftの場合はWindows Azure専用のシカゴデータセンターが有名だ。同センターには“Generation 4 Modular Data Center”と呼ばれる仕様のコンテナーが200台以上運び込まれている。これら特別仕様のコンテナーベンダーではスーパーコンピュータを手掛けてきたSGI (旧Rackable Systemsが2009年4月に買収)が有名だが、2005年からはSun Modular Datacenter、2008年にはIBM Portable Module Data CenterやHP Performance Optimized Data Center、Dell Double Deck Containerなども登場している。

-Warehouse-Scale Computer(WSC)とは何か-
さて話を本論の“Datacenter as a Computer”に戻すと、このレポートで述べられている仕様からGoogleの次世代データセンターが見えてくる。Googleでは複数台のコンテナーから構成する現在のデータセンターを進化させ、倉庫大の超大型コンピュータ ”Warehouse Scale Computer(WSC)”を目指している。つまり、データセンターそのものを1台のコンピュータと考え、そのためのハードウェアの構成とは何か、そしてソフトウェアとはどうあるべきかをこのレポートで述べている。WSCの実際の適用場面では、市場に出てくる機器が絶えず進化するため、年毎に作られるデータセンターは必ずしも同じではない。しかしながら、通常私たちが目にする1台のサーバーを効率良く動かすハードウェアやソフトウェアの設計があるように、WSCではデータセンター全体を1台のコンピュータと見立て、そのための設計とは何かが考え抜かれている。

上図はWSCの構成例で、1Uのサーバー(左)を7フィートのラックに搭載(左から2番目)し、それら複数のサーバーラック (右から2番目)をクラスタースイッチ(右)で束ねる。ここで1つのラックは小型のクラスターとなり、ラック中央にはそのためのイーサネットスイッチ(~10Gbps)が見える。それらはさらに大型クラスターとしてクラスタースイッチ/ルターで接続、結果、1万台以上のサーバーがクラスタリングされる。勿論、1Uサーバーとしたのはひとつの事例で、時代と共にブレードであっても構わない。この例示を拡大して、実際に建設したものがWSCだと思えばよいだろう。
ストレージはどうなっているかと言えば、基本的に、ディスクドライブは直接サーバーに接続され、それらは世界規模の分散ファイルシステムGFSで管理される。勿論、ストレージをNAS(Network Attached Storage)のように見立てることも可能だが、WSCでは、GFSが複製化や誤り訂正などを行うために直結方式となっている。

下図はストレージ階層(Storage Hierarchy)の説明として、プロセッサーやサーバー、ストレージの関係を示したものである。個々のサーバーはマルチコアCPUを複数搭載(Multi-Socket)し、キャッシュ(L1/L2)を介してローカルDRAMを共有(16GB)、ディスク(2TB)は直結されている。このようなサーバーが前述のローカルラック(1U)に80台集積され、ひとつのデータセンターを意味するWSCでは30ローカルラックが組み込まれる。つまりサーバー台数は、このWSC当たり2,400台、DRAMは30TB、ストレージは4.80PBとなる。
-WSCを支えるソフトウェア-
データセンターをひとつの倉庫型コンピュータと見立てたWSCは、サーバーをクラスター型に束ねたハードウェア群と、それらを分散並列処理させるソフトウェアからなる。ソフトウェアは3層に分れている。最下層は、①膨大なサーバー群を抽象化して1台のコンピュータに見せる“Platform-level Software”、これにはファームウェアやカーネル、OS Distribution、Libraryなどが含まれる。次の2層目は、②クラスターレベルのリソース管理やサービス提供を担う分散システムソフトウェアの"Cluster-level Software”、これにはリソース利用を単純化するプログラミングモデルDryadやMapReduce、Sawzall、Chubby(その他Apache Hadoop、Amazon Dynamoなど)と同様にGFSやスケジューラ、RPC(Remote Procedure Call)が含まれる。このレイヤーは、言わば“Data Center OS”と言っても良いものだ。そして最上位層は、③特定のサービスを実行する“Application-level Software”である。この層はオンラインサービスとオフラインサービスに分れ、オンラインにはGoogle Search、Gmail、Google Mapsなど、オフラインにはGoolge Mapsのもととなる地図タイルの作成や衛星写真からGoogle Earthのインデックス作成など、大規模なデータ解析が典型的な例である。

-目指すは世界最大のクラウドコンピューティング-
WSCと支えるソフトウェア、それらは一体となって巨大なクラウドコンピュータとなる。
昨秋、ACMで行われたGoogleプレゼンテーション
“Spanner”計画では"Datacenter as a Computer”をベースに、将来的な目標として、世界に散在する100~1000ヶ所のWSC(データセンタ)の106(100万)~107(1,000万台)のコンピュータを1013のディレクトリーで連携させ、最大109(10億)のクライアン トが利用する1 Exabyte (1018)のストレージを実現するという。

2010年3月8日月曜日

Googleのクラウドストレージ戦略を読む-1
                          ・・・GFSの改良

GoogleのクラウドストレージGDriveが噂になって久しい。
なかなか現れないGDrive、理由があるに違いない。それを解くヒントが昨年から今年にかけて幾つかあった。そこで今回はGoogleのクラウドストレージ戦略を考えてみようと思う。まず、最大の課題はGFSである。

-GFSの改良が始まった-
昨年夏、GoogleはGFS(Google File System )の改良を公にした。
米情報工学学会ACM(Association for Computing Machinery)掲載“Evolution on Fast-Forwards”の中で、BSDのBerkeley Fast File Systemで顕著な功績を残して、現在は同誌編集に携わっているMarshall Kirk McKusick氏がGFSのリードSean Quinlan氏と対談した。Quinlan氏は、改良の理由を次のように述べている。同社プラットフォームの基盤となるGFSは、これまで検索エンジンを支えるWeb巡回のCrawlとキーワード作成のIndexingを念頭に、大量の読み込み処理に耐えられるバッチ型の設計がされてきた。
しかしながら、検索以外にGmail、Docs、Goolge AppEngineなどのようなトランザクションが増え、
しかも小量の書き込み需要が大きくなった。これらの流れの中で現行システムの最大の問題はマスターが単一だということだ。つまり、Googleの扱うデータ容量が当初の見通しを大幅に超えて、何10TBとなり、何1,000というタスクが同時に動き出したり、膨大なファイルを同時オープンする時代になった。ファイル数の問題はBigTableを利用すれば改善の余地はあるが、GFSでチャンク(Chunk-ファイル分割の単位)をどのサーバーに保存するかを管理するマスターサーバーのネックは深刻だ。1台のマスターが全てを管理するこれまでの仕組は、処理能力だけでなく、故障時のリカバリーにも問題が大きい。そこでGFSをマルチマスターの構成対応とするプロジェクトが始まった。こうすればデータベースサイズは無限に大きく出来、リカバリーも簡単になる。またこれまでの64MBというチャンクサイズもトランザクション処理には大きすぎ、新しいGFSでは1MBとなる。

Quinlan氏によれば、これらの作業は既に2年前から始まったと言う。
つまり、Google AppEngine登場の2008年4月以前である。Googleは過去、Gmailで起きた何回かのトラブルについてメールサーバーの過負荷だったと一部説明してきた。Google Appsの普及に伴ってGmailの負荷は大きくなるばかりだ。これら全てがGFSに依存している。

-ファイル料金の大幅な値下げ-
昨年11月始め、Googleはストレージ料金の値下げに踏み切った。
GFS改良が終わったのかは解らない。
しかし、この料金改定をみる限り作業がほぼ終了したことを予感させる。事実、このアナウンス(Blog)の中でストレージ価格競争の激化に対応するため、2年間、懸命にインフラ整備に取り組んだと述べている。 そしてこれまで年20㌦で10GB だった利用料が、今後は年5㌦で20GB というのだ。200GBでは年50㌦、1TBで年256㌦、最大は16TB(年4096㌦)まで拡張できる。概算すると、これまでの1/8~1/10程度だ。

これを月額料金制のAmazon S3の場合と比べてみよう。
S3では、利用スペースによって少しづつ割安になるが、最初の50TBまでは1GB当たり0.15㌦/月だ。これは安いようにも思えるが、計算すると1TBの月額は150㌦、1年だとにすると1,800㌦となる。何とGoogle新価格の7倍高いことが判る。

-自社開発ソフトウェアとハードウェアの連携-
どうしてこのような価格設定が出来たのか、それにはGFSとハードウェアの連携が見逃せない。新GFSによって将来への拡張性と使い勝手が保証され、ハードウェアの増強が可能となった。Googleと言えばソフトウェア企業のイメージが強いがそうではない。彼等のデータセンターにあるサーバーもストレージも全てGoogleが作ってきたものだ。全てを自社開発することで最適なソフトウェアとハードウェアの連携が可能となる。Moore’s Lawで有名なIC回路の集積度は18~24ヶ月でほぼ倍になるが、同じことはディスクストレージについても言える。SeagateのSVPだったMark Kryder の研究(Kryder's Law)でもドライブ当たりの容量はほぼリニアに伸びる。このディスクの大型化による低価格化を上手く利用しなければならない。

GFSの改良でGoogleのクラウドストレージ戦略は大きく前に進むことができる。
後はこれまで通り改良の進むディスクをストレージとして組み上げることだ。