SQL Azure Team Blog

Service Update 5 Released to Productionを簡単に紹介。

SQL AzureのService Update 5が全世界のすべてのデータセンターにリリースしました。

今回のリリースでは、将来的な機能追加を可能にするために内部オペレーションの改善に注力しました。

今回の更新の1つで、sp_tablepointシステムストアドプロシージャの提供を開始しました。
詳細は、sp_tableoption (SQL Azure Database)を参照してください。

 

更新に合わせて、以下のMSDNドキュメントを追加、修正しました。

HintsSupported Transact-SQL Statements (SQL Azure Database)に新たにHintsに関する情報を追加しました。

Error MessagesError Messages (SQL Azure Database)に、エラーを絞り込み解決するための情報を追加しました。
詳細は、Error Messages (SQL Azure Database)を参照してください。

Microsoft Sync Framework 2.1Migrating Databases to SQL AzureにMicrosoft Sync Framework 2.1のサポートについて説明を追加しました。

SQL Azure Team Blog

SQL Azureで提供されている2つの動的管理ビュー(sys.database_usagesys.bandwidth_usage)を使用して、アカウントの稼働状況を確認することができます。
参考値として利用し、実際の課金額は別途オンラインポータルで確認してください。

 

次のクエリは、今月、自分のサーバにある全てのデータベース使用料を表示します。

SELECT           SKU as "種類",

                  SUM   (     CASE WHEN USAGE.SKU = ‘Web’

                                    THEN (Quantity * 979.02/31)

                               WHEN USAGE.SKU = ‘Business’

                                          THEN (Quantity * 9799.02/31)

                              END ) AS "費用()"

FROM              sys.Database_Usage USAGE

WHERE             datepart(yy, TIME) = datepart(yy, GetUTCDate())

AND               datepart(mm, TIME) = datepart(mm, GetUTCDate())

GROUP BY    SKU

Master DBに接続している時に、上のクエリを実行することができます。実行結果は以下のようになります。

SQL Azureの使用量は、ストレージ使用料だけでなく、データの転送量にも課金されます。

SELECT            USAGE.Time_Period as "オン/オフピーク",

                  USAGE.Direction as "送受信",

                  CASE WHEN USAGE.Direction = ‘Egress’

                              THEN 14.70 * USAGE.BandwidthInKB/(1024*1024)

                        WHEN USAGE.DIRECTION = ‘Ingress’

                              THEN 9.80 * USAGE.BandwidthInKB/(1024*1024)

                  END AS "費用()"

FROM (

                  SELECT      Time_Period,

                              Direction,

                              SUM(Quantity) AS BandwidthInKB

                  FROM        sys.Bandwidth_Usage

                  WHERE       datepart(yy, TIME) = datepart(yy, GetUTCDate())

                  AND         datepart(mm, TIME) = datepart(mm, GetUTCDate())

                  AND         class = ‘External’

                  GROUP BY    Time_Period, Direction

) AS USAGE

 

 

 

この投稿は、Billing Numbers Directly From Transact-SQL – TechNet Articles – Home – TechNet Wikiを意訳したものです。

SQL Azure Team Blog

Creating Tables with Project Houston – SQL Azure Team Blogの内容を簡単に紹介する投稿です。

マイクロソフトのプロジェクト コード名 ”Houston” 入門シリーズ(Part1)2つ目の投稿です。パート1では、基本的なログインと遷移について紹介しました。このエントリーでは、Houstonでテーブルデザイナーの使用方法について紹介します。マイクロソフトのプロジェクト コード名 “Houston”は、SQL Azure用の手軽なデータベース管理ツールで、CTP(コミュニティー テクノロジー プレビュー)版です。Houstonは、権限管理、クエリの実行、データベーススキーマのデザインと編集、テーブルデータの編集などの基本的なデータベース管理ラスクをすることができます。

今のところ、SQL Server Management Studio 2008 R2はSQL Azure用のテーブルデザイナーを提供していません。SQL Server Management Studio 2008 R2でテーブルを作成するには、CREATE TABLE文を実行することになります。プロジェクト Houstonはwebベースのテーブルデザイナーを提供しています。でもHoustonはCTP版ではあるが。。。

Houstonを使用するには、Microsoft Project Code-Named “Houston” CTPにアクセスします。(SQL Azure ラボでは、CTP版、もしくは実験的プロジェクトを扱います。)

 

テーブル構造の編集

 

ログインすると、左上にデータベース ナビゲーションバーが表示されます。

clip_image001

新しいテーブルの作成:

  1. “New Table”を選択します。
  2. ナビゲーションバーがテーブル ナビゲーションに変わります。

     

    clip_image002

  3. メインウィンドーにテーブルデザイナーモードで、新しいテーブルが表示されます。

    clip_image004

    タイトルの前にある星は、新しいテーブルで保存されていないことを示します。Houstonは、新しいテーブルに自動的に3つのカラムを追加します。必要に応じて、名前を変更したり、データ型を変更することができます。追加された新しいカラムを消したい場合は、名前を選択し、リボンバーのColumnsのDeleteボタンを選択します。

カラムを追加したい場合は、 +Columボタンを選択するかリボンバーにあるColumnsのNewボタンを選択します。

Houstonで使用している単語を、SQL Serverのツールで使用されている単語に置き換えられるように説明します。

  • Is Required? nullを登録することはできません。必ずデータを登録する必要があるカラムであることを意味します。
  • Is Primary Key? カラムが主キーであることを示し、クラスター化インデックスが作成されます。
  • Is Identity? 自動インクリメント列です。通常、主キーと連携します。bigint, int, decimal, float, smallint, tinyint データ型のみで提供されます。

 

保存

テーブルデザインのSQL Azureへのcommit準備ができたら、リボンバーの Save ボタンで保存する必要があります。

clip_image005

既知の幾つかの制限があります。複数行の主キーの作成は失敗します。テーブル名やカラム名を変更し、保存しようとすると失敗することがあります。

フィードバック

プロジェクトHoustonは通常のMicrosoftサポートサービスのサポートを受けることはできません。コミュニティベースのサポートは、SQL Azure Labs Support Forumに質問を投稿することができます。プロダクトチームが回答します。

 

バグの登録の仕方

  1. フィードバック | Microsoft Connectに移動する。
  2. すでにフィードバックが報告されていないか検索し確認してください。
  3. まだ報告されていない場合は、ページの一番下に移動し、オレンジの「Submit Feedback」をクリックしてください。
  4. 「Select Feedback」上の、「SQL Server Suggestion Form」をクリックします。
  5. バグフォームで、「Category」=Tools(Houston)を選択します。
  6. 質問を入力します。
  7. マイクロソフトに送信するため「Submit」をクリックします。

フィードバックの仕方

  1. フィードバック | Microsoft Connectに移動する。
  2. すでに問題が報告されていないか検索し確認してください。
  3. まだ報告されていない場合は、ページの一番下に移動し、オレンジの「Submit Feedback」をクリックしてください。
  4. 「Select Feedback」上の、「SQL Server Bug Form」をクリックします。
  5. バグフォームで、「Version」=Houston build CTP 1 – 10.50.9610.34を選択します。
  6. バグフォームで、「Category」=Tools(Houston)を選択します。
  7. 質問を入力します。
  8. マイクロソフトに送信するため「Submit」をクリックします。

SQL Azure Team Blog

この投稿は、Securing Your Connection String in Windows Azure: Part 1からSecuring Your Connection String in Windows Azure: Part 4までの全4回の記事を意訳したものです。一部、表現を変えてるところがありオリジナルと異なる箇所があります。

SQL Azure環境をセキュアに取り扱おうには、SQL Azureへの接続文字列をセキュアに扱う必要があります。Windows AzureでSQL Azureに接続するアプリケーションを動作させるには、Windows Azureのコードに接続文字列を組み込まなければなりません。しかし、Windows Azureのパッケージを作成する開発者に本番環境のデータベースのパスワードを教えたく無い場合があります。
この投稿では、Windows Azure環境で、SQL Azureへの接続文字列をセキュアに扱う方法について説明します。

接続文字列は、ログインIDとパスワードを含んでおり、通常は平文の文字列です。この投稿の目的は、Windows Azureからデータベースに接続するアプリケーションで、プログラムは接続文字列を認識でき、開発者には読めないように暗号化することです。暗号化した接続文字列をアプリケーションが解読できるようにキーを予めWindows Azureに持たせる必要があります。かつ開発者には知ることができないようにする必要があります。

SQL Azure Team Blog

Video: SQL Server to SQL Azure Synchronization using Sync Framework 2.1 – SQL Azure Team Blogを簡単に翻訳したエントリーです。

Liam Cavanaghが、SQL Azure Data Syncを拡張する方法Channel 9のWebcastに投稿しています。
SQL ServerとSQL Azure間の双方向の同期を取ることができる独自の同期アプリケーションを作成することができます。Visual Studio とSync Framework 2.1を使用して、同期プロセスに独自のビジネスロジックや独自の衝突回避ロジックを追加することができます。

上記動画を書き起こしてみた。

蒼の王座 » Sync Framework 2.1 を使用してSQL ServerとSQL Azureを同期させてみた