本連載は、「Microsoft SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「処理遅延の対処に必要な3つのポイント」を説明します。
本連載では、「Microsoft SQL Server(以下、SQL Server)」で発生するトラブルについて、「なぜ起こったか」の理由とともに具体的な対処方法を紹介していきます。
前回まではシステムの可用性を高める「フェイルオーバー」にまつわるトラブル事例を紹介してきました。今回から、SQL Serverで発生する5大トラブルのうち、5つ目のカテゴリーとなる「処理遅延」に関するトラブル事例と解決策を紹介していきます。
SQL Serverに限らず、データベースシステムで多く発生するトラブルの1つに「処理遅延」の問題があります。
単に「遅くなった」ことを解決したいとしても、発生状況によって原因は数多くあります。原因の調査に時間を要したり、原因が分からないまま諦めてしまったりすることもあるでしょう。トラブルの解決には、発生している現象と原因を的確に把握することが必須となります。このことは、本連載でこれまで何度もお伝えしてきた通りです。
処理遅延の問題が発生したときに把握しておくべき情報は、以下の3つです。
まず、遅延が業務のどこまで影響を及ぼしているか、システムや対象ユーザーの範囲を確認します。例えば、以下が考えられます。
このように範囲を確認することで、どこから調査を始めれば効率的かを判断できます。
併せて、特定の処理だけが遅い場合には、それが具体的にどんな処理かも確認します。例えば、以下のように分類します。
続いて、遅延の発生頻度を確認します。遅くなったタイミング、解消の有無、再発の有無などです。例えば、以下のようなパターンがあります。
最後は、遅延の深刻度を「具体的に数値化」して確認します。数値化しておくと、問題が解消されたと判断できる目安や目標にしやすくなります。例えば、以下のような項目をリストアップします。
これら3つの項目を確認した上で処理遅延に対処するトラブルシューティングを行うと、その原因を絞り込みやすくなります。
最初は影響範囲や発生頻度を把握しにくく、苦労するとも思います。コツとしては、意識して多方面へのヒアリングや切り分けの実施を継続することです。じきに慣れ、取り組みが理解されることで多方面の協力が得られるようにもなるので、必要な情報を収集しやすくなっていくはずです。
次回から、処理遅延の調査を進める上で有効となるログ採取や情報収集のヒントを紹介していきます。
ユニアデックス株式会社 NUL System Services Corporation所属。Microsoft MVP Data Platform(2011〜)。OracleやSQL Serverなど商用データベースの重大障害や大型案件の設計構築、プリセールス、社内外の教育、新技術評価を担当。2016年IoTビジネス開発の担当を経て、2016年現在は米国シリコンバレーにて駐在員として活動中。目標は生きて日本に帰ること。
ユニアデックス株式会社所属。入社以来 SQL Serverの評価/設計/構築/教育などに携わりながらも、主にサポート業務に従事。SQL Serverのトラブル対応で社長賞の表彰を受けた経験も持つ。休日は学生時代の仲間と市民駅伝に参加し、銭湯で汗を流してから飲み会へと流れる。
Copyright © ITmedia, Inc. All Rights Reserved.