2013年04月18日 08時00分 公開
特集/連載

賢いログ管理で、SQL Serverのパフォーマンスを改善ログとイベントデータはアプリDBと分離せよ

大規模なアプリケーションを支えるデータベースは、ログやイベントデータが多くのトラフィックを占める。こうしたデータ量増大にも耐えられるデータベースを構築するにはどのような仕組みが最適か。

[Roman Rehak,TechTarget]

 Webサイトやアプリケーションのバックエンドデータベースが大規模になり、使用率が上がったら、膨大なトラフィックでアプリケーションが使用不能になるかもしれない。アプリケーションアーキテクトと開発者は、そうなる前に、データベースのスケーリング方法を迅速に見いだす必要がある。

 アプリケーションが使用不能になることを防ぐ最良の方法の1つは、最初から大規模化を想定し、全てを単一のデータベースに保存しないようにすることだ。データを複数の論理的なグループに分類し、機能別に分離したデータベースにそれらを保存することで、将来の拡張がより容易に行えるようになる。

 適切に設計されたアプリケーションは、エラーを処理し、ユーザーにエラーを表示するだけでなく、エラーログをデータベースに記録することもできるはずだ。また、現在では多くのWebサイトが、訪問者がどのようにWebサイトを使うか(何をクリックするかなど)を追跡している。このため、アプリケーションがデータベースに保存しなければならないイベントがたくさんある。

 これらのことから、大規模で使用率の高いアプリケーションでは、データベースに何百万行ものデータがどんどん蓄積されていく可能性がある。

 ビジネス用のアプリケーションは、こうしたイベントデータやログデータをアプリケーションの稼働を支えるデータベースに保存していることが多く、データベースの大規模化の大きな要因となっている。こうしたデータの保存は、データベースをホストしメンテナンスするために必要なコストを増大させてしまう。

 ログデータやイベントデータと、データベースアプリケーションで使われるデータとを分離すれば、以下のようなメリットが得られる。

ITmedia マーケティング新着記事

news030.jpg

コンテンツSEOでやらかしてしまいがちな3つの勘違い
ITmedia マーケティングで2021年3月に連載して多くの反響をいただいた「勘違いだらけのEC...

news158.jpg

「リベンジ消費」は限定的、コロナ禍以前の状態に完全に戻ると考える人はわずか25%――野村総合研究所調査
コロナ禍が収束した場合の生活者の消費価値観や生活行動はどうなるのか。野村総合研究所...

news176.jpg

Teslaが成長率1位、LVMHグループ5ブランドがランクイン 「Best Global Brands 2021」
毎年恒例の世界のブランド価値評価ランキング。首位のAppleから10位のDisneyまでは前年と...