SQL Azure

わんくま同盟勉強会 東京57で、時間をいただきセッションをしてきました。Windows Azure BootCampで公開されているマテリアルの内、SQL Azureセクションを日本語化し実施しました。

一部スライドをセッション対象から外し、一部説明スライドを追加していますので、Windows Azure Bootcampをベースにしたオリジナル版となります。

30人の参加者がおり、SQL Azure Data Syncについての改善点などの意見が出ましたので、製品チームにフィードバックしたいと思います。

SQL Azure Data Syncを単なる同期だけのものとするのでは無く、コードからも同期機能にアクセスできるようにインターフェイスなどを公開し、VS2010から簡単に扱えるようにすれば活用領域が広がるのでは無いか。

SQL Azure Team Blog

SQL Azure Team Blogに投稿された「Simplified Import and Export of Data」をざっくりと意訳した投稿です。

本日提供を始めたMicrosoft SQL Server "Denali" Data-tier Application (DAC) Framework v2.0 Feature Pack CTPを使うことで、オンプレミスのSQL ServerとSQL Azureとのデータインポートとエクスポートをとても簡単にできます。 DACフレームワークと呼ばれます。 DACについて詳しく知るには、このホワイトペーパーを参照してください。

もし試したい場合は、SQL Azure Labsページにアクセスするか、読み進めてもう少しDACについて知って下さい。

今回のDACフレームワーク更新には、3つのポイントがあります。

  1. 新しいインポート&エクスポート機能 : このDAC CTPで、インポートとエクスポート機能が導入されました。 データベーススキーマとデータを拡張子".bacpac"ファイル1つに出力されます。簡単なコマンドで、SQL ServerとSQL Azureデータベース間のデータインポート、エクスポートをとてもシンプルにできます。
  2. 無料: この機能は、SQL Serverの次期バージョン"Denali"(誰でもダウンロードすることができる無料版のSKUを含む)全てのバージョンで提供されます。
  3. 未来 = SQL Server と SQL Azureを使用するハイブリッドアプリケーション: ハイブリッドアプリケーションを作成するためにSQL ServerとSQL Azure間を行き来させるデータ機能です。SQL Server "Denali"で提供されるツールは、一般的な管理タスクのひとつ、データ移行の為にDACフレームワークを使用する予定です。 データ層アプリケーション(DAC)フレームワークは、SQL ServerとSQL Azureでデータベースを管理するための重要なデータベーススキーマ一覧と 管理ライブラリです。このCTP版では、新しいインポートとエクスポート機能は、スキーマとデータを含むデータベースのリカバリとリストアをひとつの操作でできるようにします。

SQL ServerとSQL Azure間でデータベースを保存したり移動させたい場合は、一つのファイルでデータとスキーマを含む一つのエクスポートファイルで対象データベースへエクスポートできます。また、ログイン、ユーザ、テーブル、列、制約、インデックス、ビュー、ストアドプロシージャ、関数、トリガーも含みます。一度データベースを出力したら、インポート操作でファイルをインポートできます。

今回のリリースのインポートとエクスポート機能は、SQL AzureデータベースとSQL Serverの保存、移行をフルサポートするプレビュー版です。今後、Windows SQL AzurePlatform管理ポータルへ追加します。SQL ServerとSQL Azureの次期リリースされるツールと管理機能は、オンプレミスとクラウド双方でできるようになります。

どのように使えば良いですか?

ユーザが接続できるオンプレミスのSQL Server 2008 R2インスタンス上で動作するデータベースが存在すると仮定します。次のコマンドを使用することで、一つの ".bacpac"ファイルにエクスポートできます。

DacImportExportCli.exe -s serverName -d databaseName -f C:\filePath\exportFileName.bacpac -x -e

エクスポートしてしまえば、新しく作成された拡張子".bacpac"ファイルをSQL Azureデータベースにインポーチできます。

DacImportExportCli.exe -s serverName.database.windows.net -d databaseName -f C:\filePath\fileName.bacpac -i -u userName -p password

SQL ServerもしくはSQL Azureで動作するDACデータベースは、登録を解除するか削除できます。

DacImportExportCli.exe -s serverName.database.windows.net -drop databaseName -u userName -p password

簡単にSQL Azureデータベースをローカルのエクスポートファイルにエクスポートでき、SQL Serverにインポートできます。

インポートとエクスポートをどのように使うべきですか?

エクスポートは、SQL Azureデータベースのバックアップメカニズムとして推奨されないことを重要な情報として補足します。(推奨するバックアップ機能を提供すべく動いており、近日更新されお披露目します) エクスポートファイルには、トランザクションログや過去のデータは含まれていません。エクスポートファイルには、単純にSELECT * した結果を格納し、データ整合性を考慮しないトランザクション制御されていないものです。

しかしながら、SQL Azureのコピーを作成するために、シングルユーザモードまたは、読み取り戦用モードもしくは、データベースのスナップショットからのエクスポートで、DACエクスポートをすることで、エクスポートファイルにトランザク制御したエクスポートファイルを作成できます。このドキュメントで素早くSQL AzureデータベースのCopyを作成する為の詳細な情報を記載しています。

クラウドストレージに保存されているエクスポートファイルで、SQL Azureのエクスポートとリストアを簡単にするために機能強化されました。

思ったことを私たちに教えてください

あなたからのフィードバックと、この新しい機能を使用してみた感触を教えてもらえることを本当に楽しみにしています。SQL Azureフォーラムもしくは、ここから私たちに連絡することができます。

インストールと試用するには、SQL Azure Labs ぺージにアクセスし、FAQに目を通してください。

LightSwitch

Visual Studio LightSwitch Team Blogに投稿されている「Step-by-Step: How to Publish to Windows Azure (Andy Kung)」を抜粋、意訳した投稿です。

LightSwitchアプリケーションをデプロイする

フォーム認証するFormがあるLightSwitchプロジェクトを作成しました。 “HelloWorld.” を呼ぶとてもシンプルなLightSwitchアプリケーションです。 一つのテーブルと一つの画面があります。クラウドへ配置する準備ができました。

ソリューションエクスプローラーのプロジェクトノード上で右クリックし、Publishを選択します。

clip_image020[4]

LightSwitch

MSDNの「What’s New in Microsoft LightSwitch Beta 2」をざっくりと意訳した投稿です。

LightSwitchチームは、改善されたベータ2をリリースするために数か月精力的に働いてきました。顧客から報告されたバグ修正など、ベータ1の顧客よりいただいたフィードバックをもとにして多くの改善をしました。

すべての変更、改善内容一覧はとても膨大になりますので、ドキュメントやチームBlogを読んだり、アプリケーション開発を通して気づいてください。以下の内容は、いくつかの重要で主要な新機能を紹介しています。

Windows Azureへの配置

LightSwitch ベータ2は、Windows Azureへのアプリケーション配置を可能にし、クラウドコンピューティングに対応することを保証します。

SQL Azureデータベースを使用するアプリケーションの配置や、デスクトップアプリケーションやウェブアプリケーションをWindows Azureへの配置を、配置ウィザードを使用して簡単にできます。

SQL Azure Team Blog

SQL Azure Team Blogの「Visual Studio LightSwitch Beta 2 – Where Have You Been All My Life」を簡単に意訳した投稿です。

Visual Studio LightSwitch Beta 2 は、今週の前半に一般公開での提供を始めました。LightSwitchアプリケーションは、ブラウザやデスクトップ上で実行するのにSilverlightを利用します。Beta 2で、Windows AzureとSQL Azureへのデプロイをするための新しい機能を用意しました。

ツールを使い始める前から2時間後、私は本当に強い印象を受けました。LightSwitchは簡単なデータベースの設計、ユーザ画面の作成、基本的なフィールドバリデーションの実装、Windows Azureへのデプロイができます。来週、アプリケーション作成やLightSwitch開発体験のいくつかのビデオを投稿します。

Windows AzureやSQL AzureへのCRUD(Create、Read、Update、Delete)データドリブンアプリケーション開発、配置が本当に簡単で、部門ビジネスアプリケーションに最適です。ビジネス解析やノンプロフェッショナルの開発者の為に、.NETやコーディング知識は極めて少ない知識しか必要のない素晴らしいツールです。私が作成したサンプルアプリケーションで、私はコードを一行しか書いていません。SQL Azure ReportingやSQL Azure Data Syncのような現在CTP版のSQL Azureサービスを使用し、部門用・スモールビジネス用のハイブリッドアプリケーションをVisual Studio LightSwitchを使用して素早く簡単に作成できます。

LightSwitchに関する詳しい情報は、Jason ZanderSomasegarのBlogポストを読んでください。 LightSwitchを使用した私の体験と、私が作成したアプリケーションのスクリーンショットを掲載しています。