SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for the ‘SQL Database’ tag

SQL Database で Azure ストレージに保存した拡張イベントのログをクエリで検索してみる

leave a comment

SQL Database の拡張イベントを永続化する場合、Azure ストレージに保存することになりますが、Azure ストレージの保存したログに関しては直接クエリで確認することができます。

クエリの実行に、CPU を結構喰うので、ローカルにダウンロードしてからの方がよいかと思いますが。

詳細については SQL Database の拡張イベントのためのイベント ファイル ターゲット コード を読むとよいかと

Read the rest of this entry »

Written by masayuki.ozawa

2月 12th, 2017 at 9:41 pm

Posted in SQL Database

Tagged with

SQL Database のリソース使用状況を DTU 以外の観点で取得してみる

one comment

SQL Database では、DTU の使用状況で、リソースの使用状況を確認することができますが、それ以外の方法でも取得することができそうだったので、軽くメモを。

Read the rest of this entry »

Written by masayuki.ozawa

2月 5th, 2017 at 10:57 pm

Posted in SQL Database

Tagged with

SQL Database のクエリのトレース方法について

leave a comment

SQL Database は SQL Server プロファイラで接続をすることができないため、SQL Server で使用する機会の多い、プロファイラを用いたクエリのトレースを実施することができません。

データベースエンジンの SQL Server プロファイラを使用したトレースに関しては、今後廃止される予定の機能となっているため、SQL Database 向けに提供されることはないと思います。

SQL Database のクエリのトレース方法については、拡張イベントで実施するのが一般的な方法になるかと。

SQL Database の拡張イベント

Read the rest of this entry »

Written by masayuki.ozawa

1月 21st, 2017 at 11:42 pm

Posted in SQL Database

Tagged with

SQL Database で In-Memory OLTP が GA しました

leave a comment

General availability: In-Memory OLTP in Azure SQL Database Premium でアナウンスされていますが、SQL Database の In-Memory OLTP が GA したようです。

これについては Microsoft Azure SQL Database provides unparalleled performance with In-Memory technologies でもアナウンスされています。

PASS でアナウンスされていたタイミングより、早い GA なんですかね。

これで、Hybrid Transactional and Analytical Processing (HTAP) が SQL Database でも正式サービスとして使用できます。

詳細については Optimize Performance using In-Memory Technologies in SQL Database で確認ができますが、SQL Server 2016 相当の Operational Analytics が、SQL Database の Premium で利用できるようになった形でしょうか。

GA になって Elastic Pool でも In-Memory OLTP が使えるようになったようですね。

SQL Database options and performance: Understand what’s available in each service tier

Max in-memory OLTP storage (GB) per pool となっており、In-Memory OLTP ストレージの最大がプール単位決まっていますので、サイジングがちょっと悩ましいですが。

Written by masayuki.ozawa

11月 10th, 2016 at 11:11 pm

Posted in SQL Database

Tagged with

SQL Database の長期保有バックアップについて

leave a comment

先日 Azure SQL Database: Now supporting up to 10 years of Backup Retention (Public Preview) でアナウンスがされたのですが、あまり調べられていなかったので軽くまとめてみたいと思います。

Read the rest of this entry »

Written by masayuki.ozawa

11月 6th, 2016 at 10:01 pm

Posted in SQL Database

Tagged with

SQL Database v12 におけるロック競合の取得

leave a comment

気づいたら SQL Database v12 でも、blocked_process_report によるロック競合が発生したクエリの情報が取得できるようになっていました。

Read the rest of this entry »

Written by masayuki.ozawa

10月 23rd, 2016 at 9:57 pm

Posted in SQL Database

Tagged with

クエリストアによる、クエリタイムアウトしたクエリの取得

leave a comment

SQL Server 2016 / SQL Database v12 で使用できるクエリストアの機能では、正常終了したクエリだけでなく、異常終了したクエリについても情報が取得されています。

異常終了したクエリから、クエリタイムアウト (コマンドタイムアウト) したクエリの情報の取得について考えてみたいと思います。

クエリストアの情報については、かなり日本語化されたものが出てきていますので、クエリ ストアがデータを収集するしくみ を一読しておくとよいかと。

Read the rest of this entry »

Written by masayuki.ozawa

10月 23rd, 2016 at 8:25 pm

クエリストアから特定のクエリの情報を取得する

leave a comment

imageIgnite のセッションを見ていたところ、クエリストアの活用方法がいろいろと紹介されていて、実践的な方法がかなり勉強になりました。

SQL Server 2016 にアップグレードした際に、

  • クエリストアを有効にする
  • アップブレード前の互換性レベルで、テスト用のワークロードを実行
  • 互換性レベル 130 に変更
  • 再度、テスト用のワークロードを実行
  • 実行効率が低下したクエリを確認し、必要に応じて、プランの強制を実施

という手順を行い、アップグレード後のクエリの実行効率の低下を防止するという手法についてはなるほどと思いました。

クエリストアでは、実行効率が低下したクエリや、リソースの消費量の高いクエリについては、SSMS から取得することができます。

image

特定のクエリの状態を取得したい場合は「追跡したクエリ」を使用することになるかと思いますが、この取得では「クエリ ID」を指定して情報の取得を行う必要があります。

image

特定のクエリについての情報を見たい場合のクエリ ID の特定について、少し考えてみました。

Read the rest of this entry »

Written by masayuki.ozawa

10月 10th, 2016 at 12:06 am

Ignite 2016 の SQL Server のデータベースエンジン関連のセッション

leave a comment

Ignite 2016 のセッションですが、Microsoft Ignite On-Demand で動画が公開されてています。

とりあえず、SQL Server のデータベースエンジン関連のセッションを流し見しているのですが、エンジン回りで関連しそうなセッションの紹介を。

最近、英語が苦手なのが致命的に響いてきていて、ひさしになんとかしてもらわないと生きていくのがつらいです…。

スライドについても公開されていて、 Ignite 2016 Slidedeck and Video downloader で一括でダウンロードできるようです。

Read the rest of this entry »

Written by masayuki.ozawa

10月 2nd, 2016 at 11:58 pm

外部テーブルを使用している SQL Database のデータベースを SQL Server に移行する

leave a comment

SQL Database と SQL Server 間でデータベースを相互に移行する場合、bacpac を使用することがあるかと思います。
bacpac ですが、同一の環境 (SQL Database 間 / SQL Server 間) での移行は、特に問題はないのですが、異なる環境間で移行をする場合、SQL Database で外部テーブルを使用していると、移行できないケースがありますので紹介を。

Read the rest of this entry »

Written by masayuki.ozawa

9月 18th, 2016 at 10:27 pm

Posted in SQL Database

Tagged with