sql database 基本構成と直近で追加されていた機能の紹介
Post on 28-May-2015
500 Views
Preview:
TRANSCRIPT
SQL Database 基本構成と直近で追加されていた機能の紹介
JAZUG 小澤 真之
@Masayuki_Ozawa
自己紹介
• 普段は SQL Server の案件を中心に仕事をしています
–企業内に設置するオンプレミス環境の SQL Server を使用した案件に携わる機会が多いです。
– SQL Server や SQL Database を全力でぶん回すのが大好きです。
• ブログ : SE の雑記 (http://engineermemo.wordpress.com)
• Twitter : @Masayuki_Ozawa
• Facebook : masayuki.ozawa
2
本日の内容
• SQL Database の基本的な構成の概要についてお話をさせていただきながら、直近で追加された機能をデモを交えて紹介させていただきます。
–直近といっても結構前に追加されたものの紹介になってしまっていますが…。
• SQL Server on Azure VM は機会があればどこかで。
3
SQL Database とは??
4
• 以前は SQL Azure と呼ばれていた。– 現在は Microsoft Windows Azure SQL Database という名称
• PaaS 型のサービスとして RDBMS を提供– 物理ハードウェア上にホストされている SQL Server
• 利用する SQL Server のバージョンは選ぶことができない– バージョンアップは適宜自動で実施されていく– 現在は SQL Server 2012 相当
• Microsoft SQL Azure (RTM) - 11.0.9041.112 • Microsoft SQL Server 2012 (SP1) - 11.0.3350.0 (X64) (SP1 CU3 Fix)
• SQL Server 2012 と比較して多少制限はある– T-SQL はサブセット / 使用できないデータ型 等々
エディションはない??
• エディションによってデータベースの最大サイズが異なる– Web Edition : 最大 5 GB (1GB / 5GB)– Business Edition : 最大 150 GB (10GB / 20GB /30GB / 40GB / 50GB / 100GB /
150GB)– これ以上のサイズを使用する場合には Federation という機能を利用する (2011/12 更新)
• 利用料金はデータベースサイズを日割りで計算する
5
基本構成 (ざっくり)
6
SQL Database
H/W リソースの割り当て
OS
SQL Server
Database
ホスト OS
Database Database Database
利用者が操作できる 利用者が操作できない
• SQL Database を利用する際にはサーバー名が割り当てられるが、物理マシンではなく TDS (Tabular Data Stream) エンドポイントとなる。
スロットリング機構
• SQL Database は複数のユーザーがプラットフォームを共有しているため、極端に負荷の高い処理をしているユーザを強制的に遮断・切断する仕組みを備えている
– 例)
• ワーカースレッドの利用過多
• 1 トランザクションで大量のトランザクションログを利用
• 1 トランザクションで大量のロック取得
• 大量の tempdb の利用
• アイドル状態が長く続く(コネクションプールの接続が切断される)
• 接続が切断された時のことを考慮し、再接続処理を意識する
7
ぶん回してみる DEMOスロットリングによる接続の切断 (大量のワーカースレッドを取得)
8
管理方法 その 1
• Silverlight の Web ベースの管理ツール
9
管理方法 その 2
• SQL Server Management Studio (SSMS)
10
管理方法 その 3
• SQL Server Data Tools (SSDT)
11
DEMOSQL Database の開発でインテリセンスを使用してクエリ記述
12
接続をするためのセキュリティ設定
• 3 種類のファイアウォール設定
– Windows Azure サービスからは許可
–サーバーレベルのファイアウォール
–データベースレベルのファイアウォール (2012/8 の更新)
13
インターネットDBレベルの
ファイアウォール
サーバーレベルの
ファイアウォール
DB
DB
Windows
Azure
データベースレベルのファイアウォール
• 現状は T-SQL を実行することで設定可能
– Windows Azure / サーバーレベルのファイアウォールはGUI/T-SQL の両方から設定可能
• サーバーレベルのファイアウォール
– exec sp_set_firewall_rule N'Allow Windows Azure','0.0.0.0','0.0.0.0'
• データベースレベルのファイアウォール
– sp_set_database_firewall_rule N'Allow Windows Azure','0.0.0.0','0.0.0.0'
14
ポータルから監視が可能 (2012/11 の更新)
15
クエリからも取得可能
• sys.database_connection_stats
– Azure ポータルの接続に関しての情報
–統計概要
• sys.event_log
– SQL Database ポータルのイベントに関しての情報
–集計詳細
• どちらも最大で 30 日間分のデータが蓄積される
16
DEMO
SQL Database で発生したデッドロックの情報を確認してみる
17
SQL Database の構成
• SQL Database のインスタンスは内部では 3 重化されており、その中の 2 つのインスタンスでデータが更新されないとコミットされない仕組みになっている。
18
待機状態の取得
• sys.dm_db_wait_stats で待機状態を取得できる(2013/1 の更新)
19
状態の
推移
実行
実行
可能待ちsys.dm_db_waitstats で確認
DEMOsys.dm_db_wait_stats で多重化されていることを確認してみる
20
統計情報のメンテナンス
• データの分布状況を考慮してクエリを実行する際のプランが作成される
–データの分布状況が統計情報になる
• 現在の統計情報を DBCC SHOW_STATISTICS で確認することができる (2012/9 の更新)
– DBCC SHOW_STATISTICS ()
21
DEMO統計情報の確認と統計情報のメンテナンス
22
最後にトレーニングキットのご紹介
• Windows Azure Training Kit - December 2012– http://www.microsoft.com/en-us/download/details.aspx?id=8396
• Windows Azure Training Kit– https://github.com/WindowsAzure-TrainingKit
• Introduction To Windows Azure SQL Database– 今回はこのトレーニングキットの内容をいくつか抜粋
• Migrating to Windows Azure SQL Database• Windows Azure SQL Data Sync• Windows Azure SQL Federation• Windows Azure SQL Reporting• Windows Azure Migrating SQL Server Workloads
23
Appendix
• Transact-SQL リファレンス (Windows Azure SQL データベース)– http://msdn.microsoft.com/ja-jp/library/windowsazure/ee336281.aspx
• SQL データベース (料金)– http://www.windowsazure.com/ja-jp/pricing/details/sql-database/
• 動的管理ビューを使用した SQL Azure の監視– http://technet.microsoft.com/ja-jp/library/gg457940.aspx
• Inside Windows Azure SQL Database– http://social.technet.microsoft.com/wiki/contents/articles/1695.inside-
windows-azure-sql-database.aspx
• SQL Database WAIT STATS– http://blogs.msdn.com/b/sqldatabasetalk/archive/2013/01/31/sql-database-
wait-stats.aspx
• Windows Azure SQL データベース (以前の SQL Azure) の新機能– http://msdn.microsoft.com/ja-jp/library/windowsazure/ff602419.aspx
24
top related