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とか使ってるなら使えそうだけど、そうじゃなければ自前で作ったほうが早そう。