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

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

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

[Roman Rehak,TechTarget]

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

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

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

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

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

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

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

news086.jpg

Domoが企業のデジタル変革に向けた機能強化、データから導かれるインサイトをAIが自動提案
データサイエンス、AI/機械学習、大企業向けガバナンス、新アプリとIoTソリューションの...

news062.jpg

藤田 晋社長がAbemaTVに挑む背景 広告業界における「一番クリティカルな問題」とは?
「何を言われても執念深く最後までやり切ろうと思っている」。藤田 晋社長は広告代理店向...

news022.jpg

「オンラインで完全なプライバシー確保は不可能」と考えている人が過半数――カスペルスキー調べ
日本を含む世界21カ国を対象に実施した、オンラインにおける個人のプライバシーに関する...