SE の雑記

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

「待ち事象」を起点とした SQL Server のボトルネックの調査の基本 その 1

leave a comment

先日、ZOZOTOWNで最大級のトラフィックを記録する福袋発売イベントで実施した負荷対策 という、ZOZOTOWN さんの負荷対策についての記事が公開されました。
はてブをみると、かなりの方がブックマークをされているようですね。
私も案件の中で、ボトルネック調査をすることがあるのですが、その際の基本的なアプローチをまとめる、良い機会かなと思って本投稿を書いてみました。
 

ボトルネックを調査する対象となる環境はどのようなものか?

ボトルネックの調査を行うための環境ですが、色々ケースがあるかと思います。
例えば、次のようなものがあるのではないでしょうか。

  • 自分が保守に携わっている本番環境で発生するパフォーマンス問題
  • 開発環境で発生するパフォーマンス問題
  • 特定のタイミング (例 : 夜間バッチ) 発生するパフォーマンス問題

ここ数年はフリーランスとして業務をしているため、保守 / 運用を通して「自分が恒常的に面倒を見ているシステムに対してのボトルネック解消」を受けるような機会はありません。
私がボトルネックの調査に携わる機会が多いのは、次のようなケースです。

  • 自分が開発 / 保守に携わっておらず、システムの中身が全くわからない環境で発生しているパフォーマンス問題

このようなケースのパフォーマンス問題に対しての調査の依頼というものは、毎年相談を受けます。
本投稿は、「自分が中身を知っているシステムではない環境」でパフォーマンスのボトルネックを調査する場合の、私が実際に行っているアプローチの一つとなります。
 
Read the rest of this entry »

Written by Masayuki.Ozawa

1月 3rd, 2019 at 11:24 pm

はじめて Go を触る際に参考にさせていただいた情報のメモ

leave a comment

以前作成した、Zaiba2 の SQL Server / SQL Database のメトリクス情報の取得は、PowerShell / PowerShell Core で実行可能なスクリプトとして実装していたのですが、TICK Stack の標準のメトリクスの仕組みでは、Go が使用されている Telegraf が使用されています。
Telegraf には、新しい Input Plugin を組み込むことができるのですが、それには Go を使用したコーディングが必要となるので、この機会に勉強をしてみました。
その際に、Go を始めるにあたって参考にした情報をメモとして。
テストコードの記述や、Release にコンパイル済みモジュールが追加できていないのですが、Go 版の Zaiba2 のメトリクス収集は zaiba2go として GitHub に放流してあります。
Read the rest of this entry »

Written by Masayuki.Ozawa

12月 27th, 2018 at 12:21 am

Posted in Go,SQL Server

Tagged with ,

SSMS 18.0 Preview 5 で追加された新しい機能について

leave a comment

SSMS 18.0 Preview 5 で、二つほど大きめの機能が追加されているのでご紹介まで。
このバージョンから 次の二つの機能 が追加されています。

  • 静的データマスク (Static Data Masking)
  • クエリチューニングアシスタント (クエリ調整アシスタント / Query Tuning Assistant : QTA)

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 9th, 2018 at 7:13 pm

Posted in SQL Server

Tagged with , ,

Azure SQL Database Hyperscale のデータアクセスの基本パターンを調べてみる

leave a comment

Azure SQL Database の新しいサービスレベルである、Hyperscale が現在、Preview のサービスですが提供されています。
現時点で公式に公開されている情報としては、次のような内容でしょうか。

概要については、これらの情報から確認できるのですが、実際にどのようなデータアクセスが行われるのかが公開されていなかったので、可能な範囲で調べてみました。
Read the rest of this entry »

Written by Masayuki.Ozawa

12月 9th, 2018 at 1:04 pm

Posted in SQL Database

Tagged with ,

Managed Instance の直近の機能アップデートやらなんやら (2018/12/05 版)

leave a comment

今月、SQL Database Managed Instance (MI) の Business Critical が一般提供開始され、MI のベースになる部分は大体リリースされたのかなと。
Migrate mission critical SQL workloads to the most economical cloud destination に様々な情報が記載されていますが、直近で実施された機能アップデートをざっくりとまとめておこうかと。
Read the rest of this entry »

Written by Masayuki.Ozawa

12月 6th, 2018 at 12:09 am

Posted in Managed Instance

Tagged with

SQL Server の簡易モニタリングツール Zaiba2 のプロトタイプを公開しました

leave a comment

SQL Server の各種メトリクスを時系列でする確認する必要があり、それを Windows 環境を使用したシンプルな構成で簡易に実行したかったため、Zaiba2 (ざいばつ) というツールを作成しました。
現時点のモジュールは Github で公開していますので、セットアップの際には、このリポジトリのファイルをダウンロードしておいてください。

Zaiba2 は、SQL Server 2008 以降 / SQL Database に対応しており、次のようなダッシュボードにより、各種メトリクスを可視化することが可能となります。
ブラウザについては Edge ではなく、Chrome を使った方が良いかと。
(Edge だと、期間を変更した場合のリロードが遅い気がするのですよね)
image
Read the rest of this entry »

Written by Masayuki.Ozawa

12月 1st, 2018 at 9:34 pm

Posted in SQL Server

Tagged with ,

SQL Server の仮定のインデックスについてまとめてみる

one comment

SQL Server のインデックスの設定状況について調査する機会があり、その中で「そういえば、そういう機能あったな」というものの一つに「仮定のインデックス」(仮想インデックス) がありました。
本ブログで今まで取り上げたことが無かったので、少しまとめてみたいと思います。
詳細については SQL Server Performance Tuning with Hypothetical Indexes の記事が参考になります。
Read the rest of this entry »

Written by Masayuki.Ozawa

11月 25th, 2018 at 9:14 pm

Posted in SQL Server

Tagged with

SQL Server 2019 の Big Data Cluster に Cognitive Services in containers を組み込んでみる

leave a comment

SQL Server 2019 の Big Data Cluster は Kubernetes 上に構築されたデータ分析基盤となります。
image
このデータ分析基盤の上に、Cognitive Serivces in containers を組み込む場合、どのような作業が必要になるのかを、軽く検証してみました。
今回は、NUC 上に構築した k8s 上に展開しています。
Read the rest of this entry »

Written by Masayuki.Ozawa

11月 21st, 2018 at 10:28 pm

Cognitive Services in containers を使用してみる

leave a comment

でアナウンスされていますが、Cognitive Services の機能をコンテナーで動作させることができるイメージの提供が開始されています。
デプロイの方法などについては Cognitive Services Containers を利用して ローカルの Docker コンテナで Text Analytics Sentiment を試すでまとめられており、展開方法についてはこちらを見ると確認できるかと。
詳細な内容については、Container support in Azure Cognitive Services のドキュメントから確認できます。
Read the rest of this entry »

Written by Masayuki.Ozawa

11月 17th, 2018 at 9:40 pm

Posted in Microsoft Azure

Tagged with

SQL Server Management Studio 18.0 Preview 5 がリリースされました

leave a comment

SSMS 18.0 Preview 5 がリリースされました。

詳細はこちら

この SSMS を使用することで、SQL Server 2019 CTP 2.1 で追加された静的データマスキングが利用できるようになります。

この機能自体は SSMS の拡張機能ですので、SQL Server 2019 以外でも利用することが可能です。
他にも新しい機能として、Query Tuning Assistant (クエリ調整アシスタント) が追加されているようですね。

Written by Masayuki.Ozawa

11月 16th, 2018 at 7:43 am

Posted in SQL Server

Tagged with ,