Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
【【 Azure for ITPROAzure for ITPRO シリーズ】シリーズ】
SQL AzureSQL Azure 管理とセキュリティ管理とセキュリティ
マイクロソフト株式会社マイクロソフト株式会社
エバンジェリストエバンジェリスト...
修正履歴
2
修正日時 修正内容
2010/10/13 2010 年 10 月 13 日時点では Azure データセンター間の as copy of パラメタによるデータベース複製はサポートされていないことを
追記
Agenda & TakeawayAgenda & Takeaway
1.1. SQL AzureSQL Azure オーバービューオーバービュー
2.2. データベース管理とセキュリティデータベース管理とセキュリティ
– 管理ツール管理ツール...
SQL AZURESQL AZURE オーバー ビューオーバー ビュー
まずは初物から
4
Business AnalyticsBusiness Analytics
ReportingReporting
ServicesServices
Data SyncData Sync
ServiceService
Data SyncData S...
SQL AzureSQL Azure の特徴の特徴
• インストールインストール // パッチ適用の必要が無いパッチ適用の必要が無い
• サーバー本体のメンテナンスの必要が無いサーバー本体のメンテナンスの必要が無い
• 高い可用性と耐障害性高い...
SQL Azure
Windows Azure
オンプレミスとのシンメトリックな関係
SOAP/REST
HTTP/S
T-SQL (TDS)
App Code
(ASP.NET)
ADO.NET/REST - EDM
HTTP/S
T-SQL...
ちなみに TDS 以外の接続は?
SQL Azure DB
• SQL Azure OData Service をサポート予定(現在 Preview )
• REST API を使用した HTTPS アクセスが可能
OData Service
...
SQL Azure サービスのプロビジョニング
AccountAccountAccountAccount
ServerServerServerServer
Azure プラットフォームサービス共通の ID
( Live ID )を発行
SQL ...
(参考)アカウント作成直後
まだデータベース用ノード(サーバー)は割り当てられていない
10
(参考)サーバー作成と管理カウントの作成
ここで作成したアカウントが sa 権限を持つ
11
(参考)サーバー名と master DB の割り当て
サーバー名
初期は master データベースの
みが割り当てられる
12
50GB Database サポート
• 2 タイプの SQL Azure Database :
– Web Edition : 最大サイズ = 1 GB or 5 GB
• 979.02 /¥ 最大 1GB のデータベース / 月
• 4,8...
データクラスター
TDS GATEWAY
SQL Azure の構造とスケーラビリティ
node:Machine150
fabric
SQL SV
Mgmt.
Service
node:Machine14
fabric
SQL SV
Mgmt....
master データベースの役割
• SQL Azure Server は 複数の物理サーバーに分散したデータベースの集合体
• master データベースによりユーザーのデータベースモデルが維持される
• ログイン / ロール チェックは m...
自動複製とフェールオーバー
• 異なるノードに 常に 2 つの複製を持つ
– プライマリレプリカ*1
– セカンダリレプリカ*2
TDS Gateway
DML Operations
(insert/update/delete)
トランザクショ...
ロードバランス
プライマリ セカンダリ セカンダリ
Load Balancer
5 分に 1 回のチェックサイクルで最適なノードを選定
いろいろ小難しいこと言ってるけど、
ぜーんぶ 勝手にやってくれるんだって!
…これならデータセンターよりいいかも
SQL AZURE の管理とセキュリ
ティ
とはいえ、クラウドだって管理は必要
19
SQL Azure 用管理ツール
SQL Azure Portal
•ブラウザーからの操作
•管理ユーザーのパスワード変更
•データベースの作成と削除
•Firewall の設定
SQL Server Management Studio
•おな...
SQL Azure の管理機能 概要
Scenario/Tool SQL Azure Portal SSMS 2008 R2 Houston CTP1
データ ベース作成 / 削除 ○ クエリーを使用 GUI
テーブル作成 / 変更 / 削除 ...
SQL Azure Portal
データベースの
作成 / 削除
管理者パスワード
リセット
サーバーの削除
22
SQL Server Management Studio
• バージョンによってサポート範囲が異なる
• サーバーへの接続には SQL Server ログインを使用する
SQL Server 2008 Management Studio
SQL...
SQL Azure Portal と Management Studio
AQL Azure ポータル( http://sql.azure.com/)
SQL Server 2008 R2
Management Studio
SQLCMD
• ログインには <login>@<server 名 > を使用する
(注) osql コマンドは未サポート
sqlcmd -U < ユーザー ID@ ホスト名 > -P < パスワード > -S < サーバー名 > -d <DB...
Codename Project Houston”“
• Silverlight 版 SQL Azure 用管理ツール
– テーブル デザイナー
– クエリー デザイナー
– ビュー デザイナー
– ストアドプロシジャー デザイナー
– 各種ス...
Houston ー データベースの使用量
27
Houston ー テーブルのデザイン
28
Houston ー データの操作
行の追加 / 削除行の追加 / 削除
データを直接編集データを直接編集
29
SQL Azure へのアクセス経路と認証
ASP.NET
OData
Service
SQLServer
認
証
SQLServer
認
証
• SQL Azure の認証は「 SQL Server 認証」のみ
• フロントのエンドポイントに...
Firewall の設定
SQL Azure ポータル SQL Azure ANY←   1433/TCP
• インターネット ← (1433/TCP)← オンプレミス
• SQL Azure    ← (IP Range)← インターネット
...
OData Service + ACS による認証 / 承認の拡張
SQL Azure DB
• OData と ACS の連携により、より強固な認証 / 承認が可能に
• オンプレミス AD DS を使用してシングルサインオン
OData S...
Open Data Protocol (OData)
Data Sources
ADO.NET SharePoint
SQL Azure
WCF Data & RIA
Services
SQL
Server
SQL
Server
Excel
P...
移行 / 同期 / バックアップ
1. SQL Server Management Studio
– スクリプトウィザード
– データ層アプリケーション 抽出 / 登録 / 取込み
– データインポート / エクスポート ウィザード
1. BC...
SQL Server SQL Azure→ データ移行ツールの概要
Scenario/Tool
SSMS
スクリプト
生成
ウィザード
SSMS
データ層ア
プリケー
ション
SSMS
インポート / エ
クスポート
ウィザード
SQL Azu...
SMSS ー スクリプト作成ウィザード
• SQL Server から SQL Azure へのデータベース移行
   SQL Server Management Studio
  ┗ [ データベース ] ノード
   ┗ [ タスク ]
 ...
つづき ~ SQL Azure への接続設定
37
SSMS - データ層アプリケーション( DAC) の移行
スキーマ
テーブル
ビュー
ログイン
ストアドプロシジャ
データ
抽出抽出 .DACPACK 配置配置
DAC
• データベース オブジェクトおよびインスタンス オブジェクトを含む
エ...
SQL Server インスタンス群
SQL Server
Management Studio
管理者
ユーティリティ
コントロール ポイント
( UCP )
データベースエンジニア
DACDAC
Visual Studio 2010
DAC ...
SSMS ー インポート / エクスポート ウィザード
データのインポート データのエクスポート
変換元 source SQL Server SQL Azure
変換先 destination SQL Azure SQL Server
SQL ...
つづき ~ SQL Azure DB の指定方法
.NET Framework Data Provider for SqlServer 編
タイムアウトでエラー
となる場合にはここで
調整
タイムアウトでエラー
となる場合にはここで
調整
41
SQL Azure Migration Wizard
• Scenario
– スキーマとデータの移行
• メリット
– SQL Azure 互換
– バルク移行に対応
– はじめに clustered index 作成を行う
– スクリプトを...
SQL Azure のバックアップ
BCP 、 SSIS 等 提供中
データベースクローン機能
・ローカル→ローカル
・ローカル→別サーバー
・ローカル→別リージョン
提供中 利用者自身が実行
スケジューリング可能なバックアップ
機能
•任意の...
BCP.EXE
bcp KENALL.dbo.KEN out c:data.txt -c
-S tcp:xxa8lqxxxx.database.windows.net
-U username@xxa8lqxxxx -P password
bcp...
SQL Azure データベース クローン
• 大規模 SQL Azure データベースの高速コピー
• 利用シナリオ
– データベースのバックアップまたは移行
• 同一サーバー内
• リージョン内のサーバー間
• リージョン間
– データベー...
NORTH US Region
master
sv01.database.windows.net
データベースクローン機能( Update4 で提供済 )
SOUTH US RegionSOUTH US Region
sv02.database...
SQL Azure を中心としたデータ統合シナリオ
オフラインキャッシュが
有効なアプリケーション
Sync
Sync
企業間
企業内
Sync
Sync
Sync
Sync
C/S アプ
リ
スマート
フォン
SQL Azure
Data S...
オンプレミスオンプレミス
Sync Framework V2.1Sync Framework V2.1
SQL AzureSQL Azure
Microsoft Sync Framework
SQL Server Sync
Provider
S...
Sync Framework V2.1 アプリを利用した拠点間同期
• SQL Azure をハブとして拠点間の DB を同期
• 1433/TCP を 「内部 → インターネット」 で Open すれば通信可能
49
SQL Azure Data Sync Service ( Project Huron )
• SQL Azure データベース間の同期
• ポータルサイトで設定が可能(完全なコードレス)
• スケジュールされた同期が可能
• Daily / ...
SQL SERVER との違い
51
SQL Server との管理方法とセキュリティの違い
52
loginmanager と dbmanager
loginmanager ロール
 
 ログインアカウントを作成する権限を持つロール。 SQL Server で言うところ
の securityadmin ロールに相当する。
 ログインアカウン...
(参考) T-SQL 文法の違い
詳細は以下を参照してください
  Transact-SQL Reference (SQL Azure Database)
   http://msdn.microsoft.com/ja-jp/library/e...
(参考)サポートされているデータ型 (2010/09 時点)
詳細 http://msdn.microsoft.com/en-us/library/ee336233.aspx
55
Data Access APIs
• Supported APIs
Supported Unsupported
ADO.Net .Net 3.5 SP1 and 4.0
ODBC - SNAC 10
Entity Framework .Net ...
BUSINESS INTELLIGENCE
57
Business Intelligence 機能
• オンプレミスから SQL Azure をデータソースとして利
用
– PowerPivot for EXCEL
– SQL Server Reporting Service
– SQL Se...
オンプレミスオンプレミス
ローカル PCローカル PC
PowerPivot for Excel 2010PowerPivot for Excel 2010
PowerPivot
SQL Azure
SQL Server 2008 R2 など
...
OData Service + PowerPivot for EXCEL
SQL Azure DB OData Service
REST APIREST API
TDS
外向けに TDS ( port 1433) が公開されていない環境では、 ...
まとめ
61
まとめ
• あきらめていたことが実現できます
• 従来の管理手法 / 考え方を継承できます
• 少しの違いだけ覚えてください
SQL Azure の登場により
システム管理者はこらからも
頼られる存在であり続けます!
62
63
Prochain SlideShare
Chargement dans…5
×

SQL Azure Management and Security

1 529 vues

Publié le

SQL Azure オーバービュー
データベース管理とセキュリティ
- 管理ツール
- 認証とFirewall
- 移行/同期/バックアップ
SQL Server との違い
Business Intelligence
まとめ

Publié dans : Technologie
  • Soyez le premier à aimer ceci

SQL Azure Management and Security

  1. 1. 【【 Azure for ITPROAzure for ITPRO シリーズ】シリーズ】 SQL AzureSQL Azure 管理とセキュリティ管理とセキュリティ マイクロソフト株式会社マイクロソフト株式会社 エバンジェリストエバンジェリスト 安納 順一安納 順一 http://blogs.technet.com/junichia/http://blogs.technet.com/junichia/ 2010 年 10 月版 V1.1 1
  2. 2. 修正履歴 2 修正日時 修正内容 2010/10/13 2010 年 10 月 13 日時点では Azure データセンター間の as copy of パラメタによるデータベース複製はサポートされていないことを 追記
  3. 3. Agenda & TakeawayAgenda & Takeaway 1.1. SQL AzureSQL Azure オーバービューオーバービュー 2.2. データベース管理とセキュリティデータベース管理とセキュリティ – 管理ツール管理ツール – 認証と認証と FirewallFirewall – 移行移行 // 同期同期 // バックアップバックアップ 1.1. SQL ServerSQL Server との違いとの違い 2.2. Business IntelligenceBusiness Intelligence 3.3. まとめまとめ 3
  4. 4. SQL AZURESQL AZURE オーバー ビューオーバー ビュー まずは初物から 4
  5. 5. Business AnalyticsBusiness Analytics ReportingReporting ServicesServices Data SyncData Sync ServiceService Data SyncData Sync ServiceService  パブリッククラウド上のパブリッククラウド上の RDBRDB  既存のスキルとツールを引き継いで利用可能既存のスキルとツールを引き継いで利用可能  既存データベースアプリケーションにクラウド接続を提供既存データベースアプリケーションにクラウド接続を提供 SQL Data Platform as a ServiceSQL Data Platform as a Service SQL AzureSQL Azure とは?とは? ホスティングサービスの先へホスティングサービスの先へ ManagementManagement PortalPortal ManagementManagement PortalPortal Public Preview Community review 予定あり 未定
  6. 6. SQL AzureSQL Azure の特徴の特徴 • インストールインストール // パッチ適用の必要が無いパッチ適用の必要が無い • サーバー本体のメンテナンスの必要が無いサーバー本体のメンテナンスの必要が無い • 高い可用性と耐障害性高い可用性と耐障害性 • シンプルな管理シンプルな管理 • ビジネスニーズに応じたスケールアップビジネスニーズに応じたスケールアップ // ダウンダウン • マルチテナントマルチテナント • 従来の管理ツール、開発ツールを継続して利用可能従来の管理ツール、開発ツールを継続して利用可能 • T-SQLT-SQL ベースのベースの RDBRDB モデルモデル 6
  7. 7. SQL Azure Windows Azure オンプレミスとのシンメトリックな関係 SOAP/REST HTTP/S T-SQL (TDS) App Code (ASP.NET) ADO.NET/REST - EDM HTTP/S T-SQL (TDS) ※SQL Azure でサポートされるのは TDS ( tabular data stream ) 7.3 以降 ※OLE DB 経由の接続はサポートされない T-SQL (TDS) T-SQL (TDS) SQL Azure へのアクセス方法は2つ (HTTP/S と TDS) オンプレミスのアプリケーションからはシームレスにアクセスが可能 T-SQL (TDS) T-SQL (TDS) Management Studio SQLCMD 管 理 PowerPivot SSIS SSAS SSRS BI ADO.NET/ODBC/PHP App CodeApp Code LOB T-SQL (TDS) SQL Server
  8. 8. ちなみに TDS 以外の接続は? SQL Azure DB • SQL Azure OData Service をサポート予定(現在 Preview ) • REST API を使用した HTTPS アクセスが可能 OData Service REST APIREST API TDS https://odata.sqlazurelabs.com/OData.svc/v0.1/<sql azure host>/<dbname>   https://odata.sqlazurelabs.com/OData.svc/v0.1/<sql azure host>/<dbname>   OData Javascript Library OData SDK for PHP Restlet extension for OData (Java) ruby_odata: OData client library for ruby OData Client Library for Win Phone 7 OData client for Objective-C .NET F 3.5 SP1 Data Services update for .NET F 3.5 SP1 Microsoft .NET F 4 Silverlight 4 OData Javascript Library OData SDK for PHP Restlet extension for OData (Java) ruby_odata: OData client library for ruby OData Client Library for Win Phone 7 OData client for Objective-C .NET F 3.5 SP1 Data Services update for .NET F 3.5 SP1 Microsoft .NET F 4 Silverlight 4 https 認証 / 承 認 認証 / 承 認 Anonymous or AppFabric ACS Anonymous or AppFabric ACS
  9. 9. SQL Azure サービスのプロビジョニング AccountAccountAccountAccount ServerServerServerServer Azure プラットフォームサービス共通の ID ( Live ID )を発行 SQL Azure Server と管理アカウントを作成 •サーバー名は自動生成 <servername>.database.windows.net データベースの作成 •1 データベースあたり 1GB - 50GB 1 つのアカウントで 1 つのサーバーのみ生成可能 9
  10. 10. (参考)アカウント作成直後 まだデータベース用ノード(サーバー)は割り当てられていない 10
  11. 11. (参考)サーバー作成と管理カウントの作成 ここで作成したアカウントが sa 権限を持つ 11
  12. 12. (参考)サーバー名と master DB の割り当て サーバー名 初期は master データベースの みが割り当てられる 12
  13. 13. 50GB Database サポート • 2 タイプの SQL Azure Database : – Web Edition : 最大サイズ = 1 GB or 5 GB • 979.02 /¥ 最大 1GB のデータベース / 月 • 4,895.10 /¥ 最大 5GB までのデータベース / 月 – Business Edition :最大サイズ = 10 | 20 | 30 | 40 | 50 • 9,799.02 /¥ 最大 10GB までのデータベース / 月 • 19,598.04 /¥ 最大 20GB までのデータベース / 月 • 29,397.06 /¥ 最大 30GB までのデータベース / 月 • 39,196.08 /¥ 最大 40GB までのデータベース / 月 • 48,995.10 /¥ 最大 50GB までのデータベース / 月 BusinessBusiness の場合の場合WebWeb の場合の場合
  14. 14. データクラスター TDS GATEWAY SQL Azure の構造とスケーラビリティ node:Machine150 fabric SQL SV Mgmt. Service node:Machine14 fabric SQL SV Mgmt. Service node:Machine15 fabric SQL SV Mgmt. Service Master クラスター master node 1 Partition Manager Data Node Component master node 2 Partition Manager Data Node Component master にアクセス ログインリクエスト UserDB にアクセス ユーザーの master を検索 認 証 ユーザー DB へのアクセスは TDS Gateway を介する ユーザー固有の master データベースにより認証が行われ DB 一覧を取得
  15. 15. master データベースの役割 • SQL Azure Server は 複数の物理サーバーに分散したデータベースの集合体 • master データベースによりユーザーのデータベースモデルが維持される • ログイン / ロール チェックは master データベースで行われる • ログイン管理 / データベース管理は master に対して行う ログイン / ロールチェッ ク ログイン管理 データベース管理 mastermaster 15
  16. 16. 自動複製とフェールオーバー • 異なるノードに 常に 2 つの複製を持つ – プライマリレプリカ*1 – セカンダリレプリカ*2 TDS Gateway DML Operations (insert/update/delete) トランザクションの コミット時に複製 コミット優先度1 コミット優先度 2 プライマリの障害時には コミット優先度の高い ほうがプライマリになる プライマリ セカンダリ セカンダリ 複製 複製 (参考) 4 時間以内に、障害が発生したプ ライマリが復旧しない場合、廃棄 されて新たなセカンダリが生成さ れる 更新処理はプライ マリで行われる
  17. 17. ロードバランス プライマリ セカンダリ セカンダリ Load Balancer 5 分に 1 回のチェックサイクルで最適なノードを選定
  18. 18. いろいろ小難しいこと言ってるけど、 ぜーんぶ 勝手にやってくれるんだって! …これならデータセンターよりいいかも
  19. 19. SQL AZURE の管理とセキュリ ティ とはいえ、クラウドだって管理は必要 19
  20. 20. SQL Azure 用管理ツール SQL Azure Portal •ブラウザーからの操作 •管理ユーザーのパスワード変更 •データベースの作成と削除 •Firewall の設定 SQL Server Management Studio •おなじみの管理コンソール •SQL Server 認証で SQL Azure に接続 •基本的な DB/ テーブル操作に加えて、 DB 移行にも有用 Project Houston ( CTP1 ) •ブラウザーからの操作 •Silverlight ベースの管理コンソール •現時点では SSMS …にはおよばない •1280 1024* 以上の解像度がお勧め SQLCMD •SQL Server 認証で SQL Azure に接続 20
  21. 21. SQL Azure の管理機能 概要 Scenario/Tool SQL Azure Portal SSMS 2008 R2 Houston CTP1 データ ベース作成 / 削除 ○ クエリーを使用 GUI テーブル作成 / 変更 / 削除 × クエリーを使用 GUI データ層アプリの抽出 / 登録 / 配 置 × ウィザード × データの参照 × クエリーを使用 GUI データの操作 × クエリーを使用 GUI ログインの管理 管理者のパスワード変更 クエリーを使用 クエリーを使用 ユーザーの管理 × クエリーを使用 クエリーを使用 データベースオブジェクトのスクリプト生成 × ウィザード ロールの管理 × クエリーを使用 クエリーを使用 ストアドプロシジャーの管理 × クエリーを使用 GUI ビューの管理 × クエリーを使用 GUI スキーマの管理 × クエリーを使用 クエリーを使用 各種ステータス参照 × クエリーを使用 ○ Firewall の設定 ○ × × 21
  22. 22. SQL Azure Portal データベースの 作成 / 削除 管理者パスワード リセット サーバーの削除 22
  23. 23. SQL Server Management Studio • バージョンによってサポート範囲が異なる • サーバーへの接続には SQL Server ログインを使用する SQL Server 2008 Management Studio SQL Server 2008 R2 Management Studio • GUI による管理はサポートされていない • データベースに接続するたびに「接続」ダイアログを使用する ※ SQL Azure では USE コマンドがサポートされていない • 全ての操作はクエリーで実行する • GUI による操作を「一部」サポート • オブジェクトエクスプローラーを使 用可能 • データベース作成、ユーザー作成を GUI から実施可能 • テーブル操作はクエリーを使用 • クエリーウィンドウはデータ ベースごとに開く必要あり ※ SQL Azure では USE コマン ドがサポートされていない 23
  24. 24. SQL Azure Portal と Management Studio AQL Azure ポータル( http://sql.azure.com/) SQL Server 2008 R2 Management Studio
  25. 25. SQLCMD • ログインには <login>@<server 名 > を使用する (注) osql コマンドは未サポート sqlcmd -U < ユーザー ID@ ホスト名 > -P < パスワード > -S < サーバー名 > -d <DB 名 > -N
  26. 26. Codename Project Houston”“ • Silverlight 版 SQL Azure 用管理ツール – テーブル デザイナー – クエリー デザイナー – ビュー デザイナー – ストアドプロシジャー デザイナー – 各種ステータス表示 CTP1 http://sqlazurelabs.com/houston.aspx
  27. 27. Houston ー データベースの使用量 27
  28. 28. Houston ー テーブルのデザイン 28
  29. 29. Houston ー データの操作 行の追加 / 削除行の追加 / 削除 データを直接編集データを直接編集 29
  30. 30. SQL Azure へのアクセス経路と認証 ASP.NET OData Service SQLServer 認 証 SQLServer 認 証 • SQL Azure の認証は「 SQL Server 認証」のみ • フロントのエンドポイントに実装された認証方式をユーザーに公開することも 可能 AppFabric ACS SSMS/SQLCMD/BCP ASP.NET 独自 認証 SQL AzureSQL Azure ApplicationREST WIF WIF AD FS 2.0 AD DS 30
  31. 31. Firewall の設定 SQL Azure ポータル SQL Azure ANY←   1433/TCP • インターネット ← (1433/TCP)← オンプレミス • SQL Azure    ← (IP Range)← インターネット レンジを設定 • サーバー単位に設定が必要 • 反映されるまでに 5 分程度を要する • 現在は IPv6 未サポート • 最大 128 ルール sys.firewall_rules_table xxx.xxx.xxx.xxx クライアントの IP アドレス ※※ OData ServiceOData Service を使用することでを使用することで HTTPSHTTPS でのアクセスが可能でのアクセスが可能
  32. 32. OData Service + ACS による認証 / 承認の拡張 SQL Azure DB • OData と ACS の連携により、より強固な認証 / 承認が可能に • オンプレミス AD DS を使用してシングルサインオン OData Service TDS https AppFabric ACS フェデレーション信頼 AD FS 2.0AD FS 2.0 フェデレーション 信 頼 AD DSAD DS REST APIREST API 認証 / 承 認 認証 / 承 認 ① トークン発行依頼 ④ SW T トークン発 行 ③ SAM L トークン送 付 ⑤SWTト-クン 送 付 ②SAML トークン発行 認証
  33. 33. Open Data Protocol (OData) Data Sources ADO.NET SharePoint SQL Azure WCF Data & RIA Services SQL Server SQL Server Excel PowerPivot Excel PowerPivot .NET Client.NET Client SilverlightSilverlight JavascriptJavascript PHPPHP … Analysis & Reporting Win Azure Open Data Protocol (AtomPub + EDM) Data Clients 33
  34. 34. 移行 / 同期 / バックアップ 1. SQL Server Management Studio – スクリプトウィザード – データ層アプリケーション 抽出 / 登録 / 取込み – データインポート / エクスポート ウィザード 1. BCP.EXE 2. SQL Server Integration Service ( SSIS ) – 接続マネージャーに「 ADO.NET 」を使用 1. Sync Framework – SQL Azure Data Sync Tool for SQL Server • Power Pack for SQL Azure November CTP ( 32-bit ) – SQL Azure Data Sync Service (ラボ) 1. SQL Azure Data Copy 2. SQL Server Migration Wizard ( SSMW ) 移行移行 移行移行 移行移行 バックアップバックアップ バックアップバックアップ 同期同期 移行移行 同期同期 34
  35. 35. SQL Server SQL Azure→ データ移行ツールの概要 Scenario/Tool SSMS スクリプト 生成 ウィザード SSMS データ層ア プリケー ション SSMS インポート / エ クスポート ウィザード SQL Azure Migration Wizard SSIS BCP 簡便 ● ● ● ● 高機能 ● ● ● ● ● スキーマの移行 √ √ √ √ データの移行 √ √ √ √ √ 高速移行 √ √ √ √ not supported by Microsoft not supported by Microsoft 35
  36. 36. SMSS ー スクリプト作成ウィザード • SQL Server から SQL Azure へのデータベース移行    SQL Server Management Studio   ┗ [ データベース ] ノード    ┗ [ タスク ]     ┗ [ スクリプトの生成 ] • SQL Azure へのネイティブな対応 • スクリプトによる細かな制御  データ部は Insert 文に変換されるため高速移行には向かない • 非互換によりスクリプトが生成されないこともある  Unsupported Transact-SQL Statements (SQL Azure Database) http://msdn.microsoft.com/en-us/library/ee336253.aspx 36
  37. 37. つづき ~ SQL Azure への接続設定 37
  38. 38. SSMS - データ層アプリケーション( DAC) の移行 スキーマ テーブル ビュー ログイン ストアドプロシジャ データ 抽出抽出 .DACPACK 配置配置 DAC • データベース オブジェクトおよびインスタンス オブジェクトを含む エンティティ • データ自体は含まれない • テーブルやビューなどを個別に移行するのではなく、まとめて パッケージ化( DACPACK )して移行することができる • Visual Studio 2010 を使用して DAC を開発することも可能 SQL Server Management Studio   ┗ [ データベース ] ノード    ┗ [ タスク ]     ┗ [ データ層アプリケーションの抽出 ] SQL Server Management Studio   ┗ [< サーバー >]    ┗ [ データ層アプリケーションの配置 ] DACPACK を抽出する場合 DACPACK を取り込む場合 38
  39. 39. SQL Server インスタンス群 SQL Server Management Studio 管理者 ユーティリティ コントロール ポイント ( UCP ) データベースエンジニア DACDAC Visual Studio 2010 DAC と UCP ( Utility Control Point ) UCP (ユーティリティコントロールポイント)と DAC により、アプリケー ションが要求する OS バージョンや SQL Server バージョンにあったインス タンスに DAC を展開できる DACDAC DAC アプリの 状態を集中監 視 DAC アプ リの開発 DAC アプ リの開発 DAC アプ リの抽出 DAC アプ リの抽出 39
  40. 40. SSMS ー インポート / エクスポート ウィザード データのインポート データのエクスポート 変換元 source SQL Server SQL Azure 変換先 destination SQL Azure SQL Server SQL Server Management Studio ┗ [ データベース ] ノード  ┗ [ タスク ]   ┣ [ データのインポート ]   ┗ [ データのエクスポート ] • SSIS と同様のウィザードを使用 • 移行単位を細かく制御可能 • データベース全体 • 選択したテーブル • クエリに合致した行 • データベースは事前に作成しておく • 自動的に互換性を補完しないので 必要に応じて手動での調整が必要 • クラスター化インデックス の追記 • データ変換の修正 40
  41. 41. つづき ~ SQL Azure DB の指定方法 .NET Framework Data Provider for SqlServer 編 タイムアウトでエラー となる場合にはここで 調整 タイムアウトでエラー となる場合にはここで 調整 41
  42. 42. SQL Azure Migration Wizard • Scenario – スキーマとデータの移行 • メリット – SQL Azure 互換 – バルク移行に対応 – はじめに clustered index 作成を行う – スクリプトを生成してくれる • 留意点 – データがローカルに保存される – NOT Supported by Microsoft http://sqlazuremw.codeplex.com/ 42
  43. 43. SQL Azure のバックアップ BCP 、 SSIS 等 提供中 データベースクローン機能 ・ローカル→ローカル ・ローカル→別サーバー ・ローカル→別リージョン 提供中 利用者自身が実行 スケジューリング可能なバックアップ 機能 •任意の時点のバックアップからリストア •スケジュール設定 •バックアップされたデータは読取専用 •ローカル / リモート 対応 予定 利用者自身が設定 データ紛失 ハードウェア 故障 X 自動複製機能 ・常に 3 つのレプリカが作成される 提供中 SQL Azure に組み 込み 障害シナリオ ソリューション 提供 時期 備考 43
  44. 44. BCP.EXE bcp KENALL.dbo.KEN out c:data.txt -c -S tcp:xxa8lqxxxx.database.windows.net -U username@xxa8lqxxxx -P password bcp KENALL.dbo.KEN out c:data.txt -c -S tcp:xxa8lqxxxx.database.windows.net -U username@xxa8lqxxxx -P password -T (統合認証)は未サポート ー S (サーバー名)は必須   ※サーバー名には「 tcp: 」必須 bcp KENALL.dbo.KEN in c:data.txt -c -S tcp:xxa8lqxxxx.database.windows.net -U username@xxa8lqxxxx -P password bcp KENALL.dbo.KEN in c:data.txt -c -S tcp:xxa8lqxxxx.database.windows.net -U username@xxa8lqxxxx -P password SQL Azure → ローカル ローカル → SQL Azure バルク API を使用したデータの高速移行 44
  45. 45. SQL Azure データベース クローン • 大規模 SQL Azure データベースの高速コピー • 利用シナリオ – データベースのバックアップまたは移行 • 同一サーバー内 • リージョン内のサーバー間 • リージョン間 – データベースごとのロールバック CREATE DATABASE <dest_db> AS COPY OF <source_db> <source_db> :ソースデーターベース <dest_db> :複製先データベース CREATE DATABASE <dest_db> AS COPY OF <source_db> <source_db> :ソースデーターベース <dest_db> :複製先データベース
  46. 46. NORTH US Region master sv01.database.windows.net データベースクローン機能( Update4 で提供済 ) SOUTH US RegionSOUTH US Region sv02.database.windows.net sv03.database.windows.net master master DB1 clone CREATE DATABASE sv02.db1clone AS COPY OF sv01.db1 DB1 CREATE DATABASE sv01.db1clone AS COPY OF sv01.db1 DB1 clone DB1 clone データセンター間は 現時点で未サポート 46
  47. 47. SQL Azure を中心としたデータ統合シナリオ オフラインキャッシュが 有効なアプリケーション Sync Sync 企業間 企業内 Sync Sync Sync Sync C/S アプ リ スマート フォン SQL Azure Data Sync Service (preview) SQL Azure Data Sync Service (preview) Sync Framework V2.1 Sync Framework V2.1 Sync Framework V2.1 Sync Framework V2.1 Sync Framework V3(future) Sync Framework V3(future) Sync 全てのプラットフォーム間でのデータ同期が可能に 47
  48. 48. オンプレミスオンプレミス Sync Framework V2.1Sync Framework V2.1 SQL AzureSQL Azure Microsoft Sync Framework SQL Server Sync Provider SQL Server Sync Provider SQL Azure Provider SQL Azure Provider Sync OrchestratorSync Orchestrator TDS • プロバイダー間のデータプロビジョニングを実現 • Metadata Storage により差分同期を管理 • V2.1 では SQL Azure をプロバイダーとして登録可能 双方向の 差分同期 双方向の 差分同期 Sync RuntimeSync Runtime Metadata Storage Metadata Storage Metadata Storage Metadata Storage 48
  49. 49. Sync Framework V2.1 アプリを利用した拠点間同期 • SQL Azure をハブとして拠点間の DB を同期 • 1433/TCP を 「内部 → インターネット」 で Open すれば通信可能 49
  50. 50. SQL Azure Data Sync Service ( Project Huron ) • SQL Azure データベース間の同期 • ポータルサイトで設定が可能(完全なコードレス) • スケジュールされた同期が可能 • Daily / Monthly / Hourly / Weekly member Public Preview 手近な SQL Azure からオ ンプレミスに 同期 HUB memberSQL Azure Data Sync Service SQL Azure Data Sync Service 50
  51. 51. SQL SERVER との違い 51
  52. 52. SQL Server との管理方法とセキュリティの違い 52
  53. 53. loginmanager と dbmanager loginmanager ロール    ログインアカウントを作成する権限を持つロール。 SQL Server で言うところ の securityadmin ロールに相当する。  ログインアカウントを管理するには、 master データベースで実行する必要が ある。 dbmanager ロール  データベースを作成する権限を持つロール。 SQL Server 2008/R2 の dbcreator ロールに相当する。  データベースを管理するには master データベースで実行する必要がある。 SQL Azure Server プロビジョン時に作成した管理アカウントは両方のロー ルを持っている SQL Azure では USE コマンドがサポートされていないため、 master データベース接続後に実行しなければならない 53
  54. 54. (参考) T-SQL 文法の違い 詳細は以下を参照してください   Transact-SQL Reference (SQL Azure Database)    http://msdn.microsoft.com/ja-jp/library/ee336281(en-us).aspx   Supported T-SQL Reference    http://msdn.microsoft.com/en-us/library/ee336267.aspx   Un-Supported T-SQL    http://msdn.microsoft.com/en-us/library/ee336253.aspx (例) CREATE DATABASE database_name [(MAXSIZE = [1 | 10] GB )] [;] SQL Azure SQL Server CREATE DATABASE database_name     [ ON         [ PRIMARY ] [ <filespec> [ ,...n ]         [ , <filegroup> [ ,...n ] ]     [ LOG ON { <filespec> [ ,...n ] } ]     ]     [ COLLATE collation_name ]     [ WITH <external_access_option> ] ] [;] 54
  55. 55. (参考)サポートされているデータ型 (2010/09 時点) 詳細 http://msdn.microsoft.com/en-us/library/ee336233.aspx 55
  56. 56. Data Access APIs • Supported APIs Supported Unsupported ADO.Net .Net 3.5 SP1 and 4.0 ODBC - SNAC 10 Entity Framework .Net 3.5 SP1 and 4 SQL Server 2008 Driver for PHP v1.1 OleDB • 接続文字列の注意点 • ADO.Net • Encrypt=True • ユーザー ID には @servername を付加する • ODBC • Encrypt=yes • Uid に @servername を付加する Supported Unsupported TCP/IP over port 1433 動的ポート / 名前付きパイプ / 共有メモリ Supported Unsupported SQL Server 認証 Windows 統合認証 • プロトコル • 認証
  57. 57. BUSINESS INTELLIGENCE 57
  58. 58. Business Intelligence 機能 • オンプレミスから SQL Azure をデータソースとして利 用 – PowerPivot for EXCEL – SQL Server Reporting Service – SQL Server Analysis Service • クラウド上で SQL Azure をデータソースとして利用 – Using the Report Viewer Control with SQL Azure • http://blogs.msdn.com/b/sqlazure/archive/2010/08/17/10051010.aspx – SQL Azure Reporting Service 予定あり予定あり 58
  59. 59. オンプレミスオンプレミス ローカル PCローカル PC PowerPivot for Excel 2010PowerPivot for Excel 2010 PowerPivot SQL Azure SQL Server 2008 R2 など CSVCSV CUBE の作成 ピボットテーブル EXCEL 2010 SQL Azure 上のデータ ベースを分析ソースとして利用可能 59
  60. 60. OData Service + PowerPivot for EXCEL SQL Azure DB OData Service REST APIREST API TDS 外向けに TDS ( port 1433) が公開されていない環境では、 OData Service を使用した HTTPS 通信が可能 httpshttps Atom フィードと してデータを取 り込む TDS TDS 60
  61. 61. まとめ 61
  62. 62. まとめ • あきらめていたことが実現できます • 従来の管理手法 / 考え方を継承できます • 少しの違いだけ覚えてください SQL Azure の登場により システム管理者はこらからも 頼られる存在であり続けます! 62
  63. 63. 63

×