SE の雑記

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

Archive for the ‘SQL Server’ tag

WHERE 付きのカウントを早くする方法を考えてみる

leave a comment

以前、クラスター化インデックスのみのテーブルで COUNT(*) をおすすめしない理由 という投稿を書きました。
クラスター化インデックスのみが設定されているテーブルに対しての COUNT(*) はテーブルスキャンが発生してしまうため、非クラスター化インデックスを設定して、非クラスター化インデックススキャンまたは、sys.dm_db_partition_stats を使用してテーブル全体の件数 (概算件数) を取得するという内容です。
この投稿はテーブル全体の件数を取得する際の方法でしたので、今回の投稿では WHERE で条件を絞った場合の件数取得について少し考えてみようかと。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 29th, 2014 at 11:49 pm

ユーザー定義関数を使用する場合に気を付けておきたいこと

leave a comment

先日、大阪で開催された db tech showcase 2014 の [B24] Oracle から SQL Server システム移行の勘所 でも話にあったようですが、ユーザー定義関数を使用する場合に気を付けておきたいことをメモとして。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 29th, 2014 at 7:14 pm

Posted in SQL Server

Tagged with

SQL CLR を調べようとしたときの参考

leave a comment

ちょっと SQL CLR を調べる必要があったので、その時に参考にしたサイトのメモを。

CLR (共通言語ランタイム) 統合によるデータベース オブジェクトの構築
マネージ コードでの SQL Server オブジェクトの作成
CLR データベース オブジェクトを使用する方法
Using CLR With SQL Server 2012

開発には Visual Studio 2013 Express を使用することができます。
SSDT and Visual Studio versions
Microsoft Visual Studio Express 2013 for Windows Desktop

デフォルトでは SQL Server オブジェクトブラウザーが SQL Server 2014 に対応していないので、[ツール] → [拡張機能と更新プログラム] から SSDT を更新するとよいかと。
# SQL Server 2014 に対応した SQL CLR は SQL Server 2012 同様、.NET Framework 4.0 で開発すればよいので、オブジェクトブラウザーを使用しないのであれば、デフォルトの状態でも開発できますが。

Written by Masayuki.Ozawa

7月 29th, 2014 at 9:21 am

Posted in SQL Server

Tagged with ,

プランキャッシュを確認する際のポイント

leave a comment

診断系の情報を取得するクエリはいくつか持っているのですが、クエリについての情報を拡充したかったので、考えを整理するためのメモを。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 25th, 2014 at 8:48 am

Azure 仮想マシンの SQL Server のデータファイルのスケーリング

leave a comment

Azure の仮想マシンで SQL Server を動作させる場合のデータベースのデータファイルのスケーリングについて考えてみたいと思います。

ログファイルのスケーリングについては、Azure VM で記憶域プールを使用した際の列数の影響について の考え方になるかと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 22nd, 2014 at 5:07 pm

Azure VM で記憶域プールを使用した際の列数の影響について

leave a comment

SQL Server を Azure の仮想マシンで実行した際に、接続したディスクを効果的に使用するために記憶域プール (ストレージプール / 記憶域スペース) を使用することがあるかと思います。

SQL Server を Azure VM で動作させた場合のストレージに対しての考慮事項については、

Azure の仮想マシンにおける SQL Server のパフォーマンスに関する考慮事項
Microsoft Azure Universal Storage for SQL Server 2014
Scaling-out SQL Server disks and data files on Windows Azure Virtual Machines…a real-world example
Azure 仮想マシンにおける SQL Server のパフォーマンス ガイダンス
などで紹介されており、基本的な考え方としては「複数のディスクに I/O を分散させて、IOPS の上限を緩和させる」ことになるかと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 15th, 2014 at 3:31 pm

SQL Server PowerShell で SQL Server 認証を使用して接続

leave a comment

先日、LT をする際にちょっと調べたことのメモを。
SQL Server PowerShell (SQLPS) ですが何もしないと Windows 認証となりますので、SQL Server 認証を使用する方法を。

SQLPS については SQL Server PowerShell を参照して下さい。
SQL Server 認証を使用した接続については、データベース エンジン PowerShell での認証の管理 に記載されています。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 15th, 2014 at 9:31 am

Posted in PowerShell,SQL Server

Tagged with ,

名前付きインスタンスで取得したシステムデータベースのバックアップを既定のインスタンスにリストア

leave a comment

名前付きインスタンスで取得したシステムデータベースのバックアップを既定のインスタンスにリストアする方法をまとめてみたいと思います。

今回はバックアップの取得先とリストア先で照合順序 / SQL Server のマイナーバージョンまで含めたバージョン情報は同一の状態としています。
# SQL Server のバージョンがマイナーバージョンレベルでも異なっていると、システムデータベースのリストアはできませんので。

Read the rest of this entry »

Written by Masayuki.Ozawa

7月 7th, 2014 at 10:13 pm

Posted in SQL Server

Tagged with

2014 Microsoft MVP アワードを受賞させていただきました

leave a comment

昨年に引き続き SQL Server のカテゴリで Microsoft MVP アワードを再受賞させていただきました。
最近、SQL Server の情報発信の頻度が下がっている気がするので、気を引き締めて勉強していきたいと思います。

今年もいろいろな地域の勉強会には参加させていただければと思いますので、SQL Server ネタ (BI ネタのぞく) で登壇機会がありましたらお誘いいただけると幸いです。

引き続きよろしくお願いいたします。

Written by Masayuki.Ozawa

7月 1st, 2014 at 10:37 pm

Posted in SQL Server

Tagged with

待ち事象を時系列で解析するためのデータを取得する その 2

leave a comment

以前、待ち事象を時系列で解析するためのデータを取得する という投稿をしたのですがその別バージョンとなります。

Read the rest of this entry »

Written by Masayuki.Ozawa

6月 22nd, 2014 at 6:30 pm

Posted in SQL Server

Tagged with