techdays 初日

昨日のエントリーにも書いたとおり、今日一日はパシフィコ横浜で行われているMicrosoft社のイベントに顔を出していました。

tech days Japan 2009
http://www.microsoft.com/japan/events/techdays/default.mspx

今日一日は、Microsoftクラウド戦略と題したセッションがメインになりました。その殆どのセッション内容はWindowsAzureに関するものです。WindowsAzureは、簡単に言うと今までそれぞれの会社やサービスの提供者が独自に保有していたサーバーをマイクロソフトが貸してくれるようなサービス。
これまではPCの寿命やHDD容量。メモリ等のスペックをあれこれ考えなければいけなかったものをマイクロソフトがやってくれる。ただ、従量制なので(予定?)必要に応じてお金を支払う形になる予定です。結局自社でサーバーを扱う場合にもデータセンターを利用したりする場合は天秤にかけるのも面白いかもしれませんね。
WindowsAzureは大きく分けて

  1. ファイルやデータ共有を提供するMesh Service
  2. ワークフローや他の媒体と接続することも可能な.NET Service
  3. SQLServerを提供するSQLService

が主だったところではないかな。他にSharePointやDynamicsもあるけど・・・。これらはちょっと置いておく。あんまり開発と関係なさそうだから。
個人的にずっと注目しているのはMeshService。ファイルの共有に関してはすでに一般公開されているβ版でも体験は可能だけど、Meshを利用したアプリケーション「Mesh Enabled Application」の開発を可能にするLive FrameworkはCTP(一部の人のみの限定公開)で手が出せないのが現状。ベータ版を公開しているConnectサイトでもLiveFrameworkの文字はまだない。以前、チャンネル9のサイトで公開されていた動画で、Meshを利用してアプリケーションデータの同期が取られていたのはすごかった
色々思うところはあるんだけど、取り合えず今日分かったことをずらずらと書いてみるよ!(Azure関係なく)

  1. MeshアプリケーションでSiliverlightも可能
  2. データもMeshのオブジェクトとして登録することになる
  3. Meshの共有を他のLiveIDと結びつけるのにはMeshバーからInviteをクリック
  4. Meshオブジェクトはローカルに作られてからサーバーと同期がされる
  5. そのため、Meshのアプリケーションは基本的にローカルのデータを見に行く
  6. そのため、Silverlightアプリまでクライアント上で動く
  7. データをクライアントに持つために大容量のデータを使用するアプリケーションには向かない
  8. データは現在のところ後勝ち。
    1. Aさんがデータ1を追加。Bさんがデータ2を追加なら両方追加される
    2. Aさんがデータ2を更新。Bさんがデータ2を更新したら後から更新したほうが勝つ
    3. Aさんがデータ2を削除。Bさんがデータ2を更新したら削除された後でBさんの更新が追加?
  9. データの共有は強制的になるのでデータによって共有をキャンセルなんてことは出来ない
  10. Meshアプリケーションの共有には許可が必要
  11. Meshアプリケーションを共有すると自動的にデスクトップにショートカットが出てくる
  12. 全然興味がなかったServiceBUSが意外と?
    1. AS400のようなものに対してもイベントを伝えることが出来る?
  13. VS2010では並列処理が若干のコード修正で対応が可能

うん。途中まで出来るだけ丁寧にわかりやすく書こうと思ったけど、ずらずら書いてみると全てが台無しだ!わっはっは
Meshに関しては実際に作ってはないけどなんとなく全様が見えてきたかな。落ち着いて考えてみたら分かることだったけど、アプリケーションが保持するデータもMeshオブジェクトとして共有することになるのだから、余り大容量のデータを扱うアプリケーション。要するに企業向けアプリには使いづらいって事ですね。ちょっとがっかり(仕事では企業相手なので使い道を失う)。純粋にストレージとしてみればデータをある端末で登録。基幹系でそれを読み取って削除みたいにすればデータ連携をすることは出来るけど・・・おとなしくSQLService使えって感じもする。ぐふぅ。
ただ、Silverlightがクライアントアプリのように動くのは面白いですね。ローカルデータにしかアクセスしないのであればオフラインでも動くし。
Microsoftの井上さんと話したところでは現状ではどちらかというとエンタープライズというよりはコンシューマ向けのサービスを意識しているようだ。データの共有方式を見ていると確かに厳密さの要求されない内容のアプリケーション=コンシューマ向けになるのかな。まだまだベータの技術なので今後変わっていくかもしれません。何かしらルールを追加・指定することが出来れば応用が利きそうかな。実際のところエンタープライズで考えると、LANの繋がっていなく、ネットに繋がる環境って事になるから・・・モバイルか事業所間?うううむ。コンシューマ向けのほうが確かに考えやすいかも。
VisualStudio2010で用意されるであろう並列処理に関しても中々すごかった。コードの変更は地味だったけど、効果は絶大。川西さんも相変わらず渋かった


さて、問題のLiveFrameworkですが、、、、Connectサイト上ではLiveFramworkではなく「Azure Services Invitations」がそれにあたるのだと思う。ここでトークンが送られてくるのでAzure Services Developer Portalトークンを入力すればLiveFrameworkがダウンロードできる・・・・んだと思う。トークンの発行に時間がかかっていてブログを書いている現在はまだ試すことができていない。

Microsoft Connect
https://connect.microsoft.com/default.aspx

Azure Services Developer Portal
https://lx.azure.microsoft.com/Cloud/Provisioning/Default.aspx

そうそう、資料は必要な人は自分で印刷して持ってくる。IDホルダーも最後に回収と、随分とエコになっていました。今までが大盤振る舞い過ぎただけかもしれないけど。ん?エコっていうよりは不況??

※追記
Azure Services InvitationはLiveFrameworkとは関係ありませんでした。SQLServiceとかのほうね。なんで分けているんだろう:::