New Relational SDS に REST でアクセス
The latest news and insight from the SDS team
Accessing the New Relational SDS with REST
Published Friday, March 20, 2009 9:16 AM by davidrob
–Lev
From <http://blogs.msdn.com/ssds/archive/2009/03/20/9492744.aspx>
Hi Everyone! 私は Lev Novik。SQL Data Services Team のアーキテクトです。REST による SDS アクセスについて、止めてしまうのか、あるいは、優先順位を下げるのかといった多くの質問を受けています。そんなことは、まったくありませんので、ご安心ください。REST については、止めてしまうことなどなく、多くの開発者が望むと思われる方式で、それを適切にサポートしていくつもりです。 チョッと、説明してみますね。
今日における一般的な(Web)アプリケーションは、以下のような構造を持つのが大半だと思います:
- Client(ほとんどは、Web ブラウザ内で実行)
- Mid-tier Business Logic(ほとんどは、Web サーバー内で実行)
- Back-end Storage(ほとんどは、リレーショナル・データベース )
どんなプロトコルが使われていますか? Client と Mid-tier の間では、大半が HTTP で、REST も多いですよね。そして、Mid-tier と Back-end の間では、データベース側のネイティブ・プロトコルが一般的ですよね。
そうなんです。SQL Data Services の場合も、状況はまったく同じです。シナリオは、こんな感じです:
- SDS は、Back-end Batabase の位置に入ります
- Mid-tier Business Logic は Windows Azure もしくは、その外側で実行されます
- Client は、まったく変わりません
この世界においても、Mid-tier と SDS を接続するために、最もパワフルなメカニズムとツールが利用されると考えています。そして、最もシンプルで、エレガントで、Web フレンドリーな方式で、クライアントへ向けて Web アプリケーションを公開できる、簡単な方式が望まれているでしょう。そのため、私たちは、以下の方式に集中しています:
- TDS (SQL Server native protocol) の公開:SDS とのフル接続を実現
- SDS ベースのアプリケーションにアクセスするために、簡単な REST の公開を実現
後者を実現するために、ADO.NET Data Services (aka “Astoria”) を活用します。それは、データ駆動型の REST サービスを、可能な限り簡単に実現するという目的を持っています。ADO.NET Data Services を利用するためには、コーヒーでも飲みながら introductory movie を見て、あたなたのデータベースをイメージしします。そして、コーヒーのおかわりでも飲みながら、漠然としていても構いませんので、REST Web サービスを作るための方式を確認するというコースがお勧めです。
しかし、あなたのアプリケーションが、そう簡単にデータベースと、one-to-one でマッピングされるとも思えません。独自のビジネス・ロジックや、セキュリティ・ポリシー、そしてビューなどを構築したいと考えているでしょう? ADO.NET Data Services が それ を実現します。 しかも、とても具体的なサービスとして。この辺りで、三杯目のコーヒーが欲しくなるかもしれませんね。だって、SQL Server は、あなたの Dev Box にいるかもしれませんが、どうやって、SDS や Windwos Azure と組み合わせるのかという方法が分かりませんものね。その点について、私たちは、これまでのような方式を提供したいと考えていますよ:
- Windows Azure services を構築するための set-up を行う
- クラウドの SDS Database を構築し、あなたのスキーマによりアップロードする
- Visual Studio で Windows Azure Web Cloud Service Project を 作成 する
- ADO.NET Data Service プロジェクト・アイテムを加え、SDS Database を指定する(同じスキーマを持つローカル・データベースでもOK です)
- あなたの ADO.NET Data Service (security, biz logic, templates, etc) を作成する
- 接続文字列を、クラウドの SDS Database に切り替える (開発でローカル・データベースを使っている場合ですが)
- Windows Azure へ向けて、あたなのサービスを Publish する
このようにすれば、SDS-based REST Service が得られるでしょう。 お役に立てば幸いです。
From <http://blogs.msdn.com/ssds/archive/2009/03/20/9492744.aspx>






















































































leave a comment