SQLServerをデータソースとしたレポーティング機能について

 

SQLServerを業務利用している場合、ユーザ要望に応じた定型レポートを
簡単に実現したいと思って調査。

 

ReportingServiceとは

SQLServerについてくるおまけの一つ。
(製品のEditionによるかもしれませんが)

SQLServerReportingService(SSRS):定型レポート作成
ノンプログラミングでデータベースなどからWebベースの定型レポートが作成できる。

SQLServerAnalysisService(SSAS):非定型データ分析
Excelをフロントエンドにしてデータ分析が行える。

みたいな棲み分けでしょうか?

SSRSはSQLServerに格納されたデータから定型レポートを作成するためのサービスです。
SQLServer2008からは専用サービスがHTTPリスナーを兼ねているのでIISなどのサービスがない
状態でもブラウザ経由でレポート参照が可能です。

利点としては

  • 定型レポートとしてグラフとかつけたリッチなアウトプットが作れる。
  • 外部出力もExcelやPDFなど標準で利用できる。

実務上利用する際の懸念事項としては
SQLServerの1機能として位置づけられており、基本的にはDBサーバー自体をReportingサービス用に公開しなければ使えない。
 実務利用上はDBサーバーを直接公開することはあまりしないし、
 SharePointServerとかReportingService専用にSQLServerをインストールしたサーバーを準備すればよいみたいだが、お試しで使うにはハードルが上がる。
 ※ちなみにSQLServerExpressEditionでもオプションでReportingサービスが使えるけど、外部サーバーのデータをソースにできない制限があるみたいだ。

 

単純に実務利用中のDBに対してReportingService以外の特別なサーバーを立てずにやろうとすると

  • DBサーバーでReportingServiceで生成したレポートを定期的にメールやファイルサーバーへ吐き出す機能を利用する。
  • ReportingService専用の公開サーバーを立て、ExpressEdition+ReportingService入れて集計元データから出力データを定期的に取得し利用する。

みたいな利用方法になるが、ここまでくるとASP.NETとかで作ったほうが手っ取り早いかなってなってくるみたいな。。。

 

<結論>

SharePointとか使ってるなら使えそうだけど、そうじゃなければ自前で作ったほうが早そう。