2011年6月15日水曜日

次世代クラウドコンピューティング(4)      
                  -拡張型仮想マシンの時代へ-

この次世代クラウドシリーズでは ①ハード機能連携型仮想マシン、②プロセス拡張型仮想マシン、③クラウド型ユニバーサルDB について、ここまで述べてきた。これは表現を変えると、仮想マシンの<ハードウエア強化>、<ソフトウェア強化>、そして<データベース強化>についての考察である。今回はこれらの推論のまとめをしようと思う。

◆ 仮想 マシンだからこそ出来るハード能力の強化
GPUやHPCをクラウド強化機能として提供するプロバイダーが出てきたことは述べた。
これらを利用すれば高性能WSなどを持たずにエンジニアリングの仕事ができる。
さらにハード機能強化の上にソフトウェアを搭載するベンダーも現れた。AutoDeskだ。 同社ではクラウド上でGPUを搭載したHPC利用のProject CumulusとProject Centaurの試行を昨春からスタートさせている。
Cumulusは同社のプラスティック部品射出成形シミュレーションのMoldflowをクラウド上で実行させる。もうひとつのCentaurは、製作の前工程としての製造工程設計に伴うビジュアライゼーションやシミュレーションを行うもので、同社製品のInventorがクラウド上で稼働すると思えばよい。AutoDeskのビジネスモデルは変わり始めつつある。
これまでユーザーはWSを購入し、高価なCAEソフトウエアをライセンスしてきた。
しかし、クラウドサービスが軌道にのれば、もうその必要はなく、通常のPCで構わない。AutoDesk製品はクラウド上で動き、使用量ベースのユティリティー課金となる。


◆ ソフトの再利用からプロセス連携へ
ソフトウエア開発の分野も変わる。
ク ラウド上でアジャイル開発を進めるJenkinsCloudBeesは活況だ。
アジャイルはプロジェクト運営論だが、どのように開発するかという方法論と両輪となる。
開発方法論の核のひとつは、一度作ったソフトウェアをどのように再利用するかだ。これは永遠のテーマでもある。そのための技術がSOA(Service Oriented Architecture)だった。そのSOAの考え方に近似し、クラウドとなって登場したのがAmazonのブロック方式である。このブロック結合は、後にAmazon EvangelistのJeff Barr氏によって、COA(Cloud Oriented Architecture)と名付けられた。

SOAとCOAの違いは、SOAがあくまでも物理的なソフトウェアモジュールをベースとしているのに対し、COAはプロセスをベースとした連携である。つまり、処理(実行)となるプロセスをつなぎ合わせることで、システム開発の短縮と実行の簡素化を図る。
クラウドならではの仕組みだ。このような動きは COAだけでなく、複数のBIベンダーなどで活発なことは述べた。目的は、開発の効率化とアプリケションの柔軟性の追求である。
(参照:アジャイル開発クラウドのCloudBees

◆ ソシアルネットワーク型データベース
データベース分野でも新たな変化が始まっている。
政府や自治体などの情報開示が進み、これらのクラウド公開が米国ではかなり進んだ。
そして何よりも肝心なことは、このデータを加工して表示するツールが提供されていることである。これによって、一般ユーザーでもインタラクティブで好みの加工ができる。さらにAPIやデータベースのダウンロード機能などの提供で、デベロッパーは自分のシステムの中に組み込むことも可能となった。それらのアプリはスマートフォン同様、マーケットプレイスに登録されて、一般ユーザーにも開放されている。データ ベースの世界でこのようなことはこれまで無かったことだ。ソシアルネットワーク型データベースの登場である。


◆ これまでの仮想マシンとは何だったのか
振り返ってみると、これまでの仮想マシンとは何だったのだろうか。
物理マシンが無くなり、それはクラウドに移った。インターネット接続で仕事をする通常のクライアントから見れば、相手のサーバーがどこにあっても構わない。しかし、サーバーがクラウドに移ったことで、IT部門の役割には大きな変化が起きた。開発はオンサイトで行い、それをクラウドの仮想マシンに移して実行する。仮想マシンのセットアップもインターネット越しに行わなければならず、遅くて煩わしい。代替案としてソフトウェアのアプライ アンス化が進んだ。それでも面倒くさい。
システムの運用管理も複雑になった。プライベートクラウドでは、物理マシンと仮想マシンの両方の管理が必要だ。これまでの運用管理システムに加え、仮想化技術ベンダーから提供されるツールを天才的なテクニックで使いこなさなければいけない。この煩雑さと初期投資のリ スク回避から、多くの企業はパブリッククラウドをトライアルに選んだ。しかし、仮想マシン自身の管理は利用部門の仕事となった。
これらと引き 換えに得たものは何か。
ROI(Return of Investment)だ。つまり、費用対効果がこれまでより優れている。
噛み砕く と、クラウド利用ではハード/ソフト購入などのIT初期投資が殆どない。導入に要する時間も大きく短縮された。引き換えに、そのしわ寄せの殆どはIT部門に来た。この現象をコンピュータ産業全体で見れば、近視眼的には、仮想化技術とパブリッククラウドなどの集約性向上で、産業全体はやや圧縮されたと言って良いだろう。
中長期的な視野に立てば、コンピュータ利用が廉価でより簡便化されて大きく進む。
ここまでが現状である。

◆  拡張型仮想マシンの時代へ
しかし、大事なことはもっと先を見ることである。
これまでの多くの努力で、仮想マシンの<ハードウエア強化>、<ソフトウェア強化>、そして<データベース強化>は進んだ。これらを統合すれば、新しい世界が拓ける。
これまで高価で手が出なかったWSも仮想マシンなら簡単に増強が可能だ。HPCだってクラウドで借りればよい。今後はもっと色々なハードウェア機能を提供するサービスプロバイダーが現れるに違いない。ビジネスプロセンスも同様だ。APIを介して、好きなプロ セスを統合できる時代が来る。そして、データベースも一部ではあるが、ソシアル化が加速する。


そろそろ、第一段階は卒業の時期である。
時代はクラウドだからこそ出来る「拡張型仮想マシンの時代へ」に差し掛かっている。その先の自立型仮想マシンの議論も散見されはじめた。第一段階のクラウドは煎じ詰めればROIが全てだったかもしれない。しかし、コミュニティーのデベロッパーや企業で働く多くのエンジニアはその先にある何かを感じ取っていた。だからこそ、多大な努力が積み上げられてきた。これからがクラウドの本領発揮である。

2011年6月2日木曜日

次世代クラウドコンピューティング(3)  
               -クラウド型ユニバーサルDB-    

シリーズ1回目はGPUやHPCなどを仮想マシンに連携する方法、2回目は外部プロセス連携について述べた。今回はクラウド型ユニバーサルデータベースについて話そう。

◆ 連邦政府が始めた情報公開サイト (Data.gov)
Data.govは連邦政府CIOのVivek Kundra氏が就任後、実行した3つ(Apps.gov、Data.gov、 Federal TI Dashboard)のうちの1つだ。目的は連邦政府や州政府などが持つ膨大な情報を多面的に開示して利用してもらうこと。Data.govの構成は、①生データカタログ(Raw Data Catalog)、②分析ツールカタログ(Tool Catalog)、③地域別データカタログ(Geo Data Catalog)からなる。ユーザーとなる市民や団体は、目的のデータをカタログから探し出し、インタラクティブでサーチ/ソート/フィルタリング/アナライズなどを施して、データをグラフ化したり、地図とマッピングして、より直截的に見ることができる。
次にデベロッパー向けの対応では、多様なフォーマットへのデータダウンロードが出来るし、提供されるAPIを使い、システムの一部として組み込むことが可能だ。こうして出来上がったアプリケーションは多くの人に使ってもらうためData.gov上に登録できる。現在、政府内部で作られたものが900個以上、民間が開発したものが200個以上利用可能だ。下図の事例FlyOnTime.usは、旅行者向けの航空機発着情報サイトである。このサイトで利用されているデータには ①運輸統計局のAirline Performance 、②連邦航空局のAirport Conditions、③ 国立海洋大気圏局のHistorical Weather Reports、④ナショナルウェザーサービスのCurrent Weather Conditions、さらに ⑤サイト利用者から飛行場セキュリティーでの所用時間をスマートフォンやtwitterで知らせてもらうAirport Security Line Wait Timesなどがある。

Data.gov には現在40万件近いデータが登録されている。
これには連邦政府の全省庁の172部局からデータが提供され、州では初期のワシントンDCやカリフォルニア州、ユタ州などから段階的に広がり、現在では29 州、都市ではニューヨーク、シカゴ、サンフランシスコ、ボストン、アトランタなど11都市、国際間ではイギリス、ドイツ、カナダ、オーストラリア、 ニュージーランド、ノルウェイーなど16ヵ国、さらに国連が参加各国の協力のもとに集めた総合データサイトundataや、欧州連合のEuropean Environmental Agencyも参加している。参考のために連邦政府の主だったデータは以下のようなものがある。

   • Airline Performance航空)
   •
National Weather Services(気象)
   •
Patent Grant Bibliographic Data特許)
   •
Residential Energy Consumptionエネルギー消費)
   •
Census Data国勢調査)
   •
Toxics Release Inventory有毒排出)
   •
U.S.A. Spending Contracts and Purchases政府購買)
   •
U.S. Geographic Data(地理)
   • Crime in the U.S.犯罪)
   •
Medicare Medicaid Statistical Supplement(医療)
   • Census of Agriculture(農業)
   •
Open Government Datasets(オープンガバメント)など

◆ Windows Azureのデータマーケットプレイス (DataMarket) 
MicrosoftからもWindows AzureのサービスとしてDataMarketが提供されている。
しかし、こちらはパブリックな公開データもあるが、民間企業の持つデータベー スも提供され、それらのくは有償である。DBカテゴリーには ①ビジネス&ファイナンス、② 人口統計、③エンターテイメント&メディア、④ヘルス関連、⑤位置情報サービス、⑥ニュース&イベント、⑦不動産、⑧小売業、⑨気象などがある。ユーザーは必要とするデータベースを探し出し、それをMicrosoft OfficeやPowerPivotに展開して、より効果的に加工処理することが出来る。さらにVisual Studioにダウンロードすれば、C#によるアプリケーションに組み上げたり、Windows Phone 7対応にすることも可能だ。以下はデータの一部である。

   • Axiom InfoBase X-Geo地理)
   •CCH CorpSystem(売上税)  
   • Digital Map地理)
   • Dun & Bradstreet(企業情報)
   • Energy Statistic Database UN国連エネルギー統計)
   •
European Greenhouse Gas Emissions(欧州温室ガス)
   •StockViz(インド金融市場)
   •CCH CorpSystem(売上税)  
   •
Practice Fusion(メディカル)
   •Super MicroCast(気象情報)
   •Zillow(不動産)など

◆ アマゾンのパブリックデータセット (Public Data Sets on AWS)
Amazonの場合は、公に供する詳細なデータベー スを無償で提供している。特に有名なのはヒトゲノム・データベースEnsemblプロジェクトのミラーリングだ。もうひとつバイオ関連では、遺伝子や発現配列標識で有名なUniGeneも提供されている。また、米国勢調査ではCensus 2000など過去の調査も含めた詳細なデータベースが利用できるし、世界最大の無償利用のデータベースFreebaseもある。これらのデータベースは提供側の維持管理もさりながら、膨大なアクセスに耐えるシステム提供が大変だ。研究者やデベロッパーは、これらホスティングデーターベースのスナップショットをAWSに取り込んで利用する。利用可能なDBは以下の通り。

  
 • Freebase Data Dump(オープンDB
   • Human Genomeヒトゲノム)
   •
Census国勢調査)
   •
UniGeneバイオテック)

◆ 飛び立つユニバーサルDB
ここで紹介した3つは、単なるデータベースの公開とは違う。
これらのデータベースはユーザーがインタラクティブで活用したり、デベロッパーのプログラムに組み込むことが前提だ。そのためのダウンロード手順やツール、APIなどが整備されている。Data.govでは連邦や州政府、地方自治体、さらに多様な公益団体の データベースを開放し、Amazonではパブリックドメインのデータベースを手がける。これらを利用すれば、これまでにないアプリケーションが出来上がる。
さらに注目すべきはMicrosoftのDataMarketだ。
民間データベースを有償で提供する試みは素晴らしい。データベースの営利サービスはもとより、一般企業においても社内利用のデータを公共の益に照らし合わせて、積極的に公開する時代が来るだろう。
プログラムのオープンソース化で時代が変わったように、データベースのオープン化は分析業務の性能を格段に向上させる。
こうして、クラウド型データベースはユニバーサルな世界に飛びたった。