【新提案】理想は現場主導のセルフサービスBI
BI (Business Intelligence) と聞いて、システム管理者の方々はどのような印象を持たれますか? 「訳がわからん!」というのが正直なところではないかと思います。データベースの管理やチューニングは得意でも、BI となると一気に腰が引けてしまう...そんなエンジニアは多いはずです。実を言えば、私もそうです。
軽視されがちですが、以前から SQL Server には BI をサポートする機能が実装されています。
- SQL Server Integration Services (SSIS)
複数のデータソースを抽出/変換し、データ ウェアハウスとして統合する。俗にいう ETL ツール。 - SQL Server Analysis Services (SSAS)
多次元データベース (キューブ) を作成し、オンライン分析処理 (OLAP) やデータ マイニングを行う。 - SQL Server Reporting Services (SSRS)
各種 RDB や、キューブ、XML ベースのデータ ソースから、表やグラフを用いたインタラクティブなレポートを作成する。
これらのサービスは使いこなせればかなり便利ですし、とても高度で有用な機能を実装しています。しかしあまりメジャーではない理由...。それは、これらの機能が主に「データベース アプリケーションの開発者」向けだったからです。
事実、これらの機能を使用するには Business Intelligence Development Studio と呼ばれる Visual Studio に似た開発ツールを使用しなければなりません。覚えてしまえばなんてことのないツールではありますが、マイクロソフトからの情報の多くが開発者向けに提供されていることもあり、インフラ担当 SE や IW 層にとっては縁のないテクノロジーとして捉えられていたことは事実です。
効率的にそして効果的にデータを分析するには、「分析する人」と「分析するデータ」に合ったツールを用意する必要があります。
SE であれば「PowerShell さえあれば十分」という方もいらっしゃるでしょう。一方で、マーケット部門や経営企画部門などに所属する IW (Information Worker) と呼ばれる方々にとっては、「使い慣れた Excel ですべての作業を完結したい」と考えるのは当然です。しかし従来はそうはいきませんでした。データは複数のデータベースに散在しているし、それらを使い慣れた Excel に取り込むのだって一苦労です。もちろんそれをサポートするシステム部門も大変です。SE はシステム管理には詳しいものの、Excel のマクロ、ましてやピボット テーブルの使い方にはとんと疎いというのは定説と言ってよいでしょう。
おそらく、SE と IW の本音は以下のとおりでしょう。
- SE は IW の分析業務には関わりたくない
- IW はすべてのデータを Excel に直接取り込んで分析したい。それが 100 万行であっても!
これらを実現するソリューションが、5月1日発売開始予定の SQL Server 2008 R2 と共に登場します。それが PowerPivot (パワー ピボット) です。ピボット テーブルとどこか似た響きを持ったこのテクノロジーは、果たしてどのような機能を実現してくれるのでしょうか。詳しく見ていきましょう。
■PowerPivot とは
PowerPivot とは EXCEL 2010 および SharePoint Server 2010 用のアドイン機能です。それぞれの特徴を以下に示します。
- PowerPivot for EXCEL 2010
従来 SSAS を使用して作成しなければならなかった多次元データベース(CUBE)を Excel 上で作成できる。これにより、分析を行いたいユーザー自らが手持ちのデータを PowerPivot に読み込み、自由に分析を行うことができるようになる。分析の手法は従来のピボットテーブルと同様であり、これまでの操作性を維持できるため、生かすことが可能。保存したExcelのブックには CUBE も含まれるため、ファイルとして流通させることも可能。
- PowerPivot for SharePoint Server 2010
SharePoint Server 2010 の Excelサービスに PowerPivot 機能が組み込まれ、PowerPivot が組み込まれたExcelシートのランタイムとして機能するとともに、SharePoint Server が持つドキュメント管理機能を使用してアクセス権を厳密に管理することができる。Excel 2010 を持たない利用者であっても、Internet Explorer を使用して SharePoint Server 2010 にアップロードされた「PowerPivot が組み込まれた Excel シート」を参照できる。
これらの機能により、これまでシステム管理者に依頼しなければならなかった分析用データの準備を自ら行えるようになり、かつ分析後のデータは、分析を実行する利用者が持つ権限の範囲で自由に公開することができる。
■PowerPivot for EXCEl 2010
PowerPivot for EXCEL 2010 がインストールされると、Excel のメニューには「PowerPivot」メニューが表示されます。利用者は、このメニューから PowerPivot ウィンドウを開いて、各種機能を使用することができます。
PowerPivot で扱うことができるデータソースは多彩です。 SQL Server や Access、Excel、テキストファイル はもちろんのこと、SQL Azure、Oracle、データフィードなど を利用者の権限の範囲で取り込むことができます。もちろん、取り込んだこれらのデータは1つのCubeに組み込むことができます。
システム管理者は、これまでのように、利用者に対して新たにSQL Server上にデータを取り込んで準備したり、キューブ作成の手伝いを行う必要はありません。利用者が使用したいテーブルのアクセス権だけを意識すればよくなります。つまり、システム管理者にとって難解な BI 用語を覚える必要がなくなるのです。
逆に、利用者はシステム管理者がデータを準備するまで作業を 停止する必要はありません。分析者としてのプロの「勘」をフルに働かせ、分析に使えそうなデータを見つけたら、即、分析軸に取り込むことができます。いささか極端ではありますが、そのデータさえ信頼できるものであれば、WEB 上で見つけたデータをそのまま EXCEL にコピペして PowerPivot に取り込むことだって可能です。
Cubeを作成したら、ピボットテーブルと同様の操作で分析を行えます。 Excel 2010 からは スライサーと呼ばれる機能が実装されており、フィルターを非常に簡単に作成できるようになっています。右の画面ショットの例では都道府県をスライサーに設定しています。
■PowerPivot for SharePoint Server 2010
PowerPivot for EXCEL 2010 で作成したブックは、そのままメールの添付ファイル等で流通させることが可能です。ただし、ブックには一切の分析用ソースが含まれているため、そのまま流通させることに躊躇してしまうはずです。正しい分析結果を維持するためには、データの改ざんも防止しなければなりません。
また、Excel 2010 を全員がインストールしているかどうかという不安もあるでしょう。
このようなセキュリティや情報共有の問題を解消してくれるのが、PowerPivot for SharePoint 2010 です。そういう意味では、「組織的な展開を前提とするのであれば PowerPivot for Excel 2010 と PowerPivot for SharePoint 2010 はセットの機能である」 と考えていただいたほうが良いでしょう。
PowerPivot for SharePoint 2010 が SharePoint 2010上 にインストールされると、SharePoint Server の Excelサービスに PowerPivot エンジンが組み込まれます(実際には、バックエンドの SQL Server Analysis Services との連携機能が実装されます)。これにより、PowerPivot for Excel 2010 で作成したブックはSharePoint Server 2010 上で実行可能となります。
PowerPivot for SharePoint Server 2010 上で実行される Excelシートは、Internet Explorer で参照することができます。もちろん、Internet Explorer 上か らスライサーを操作することができますから、必要な分析結果に絞り込んで参照することができます。
右の図は 「PowerPivot ギャラリー」と呼ばれる Silverlightベースのライブラリ機能です。これにより、アップロードされたブックを、シート単位にプレビューすることができるため、どのような分析結果を参照できるのかをいちいち開いて確認する必要がありません。PowerPivot の核となる機能ではありませんが、利用者にとってとても便利な機能でしょう。
そして、当たり前すぎるので詳しくは触れませんが、SharePoint Server が持つアクセス権管理機能を使用して、参照、編集などを厳密に管理することができます。
このように、PowerPivot を使用することで、システム管理者にとって面倒だった「BIのサポート」を利用者自身に任せてしまうことができます。マイクロソフトは、これらの機能を「セルフサービスBI」と呼んでいます。
PC が企業に導入されて社員一人一台が当たり前になりつつあったころのこと、「EUC」という言葉がもてはやされました。End User Computing、つまり利用者自身がコンピュータの機能を使いこなすことでビジネスのスピードアップを図る、という考え方です(おおざっぱすぎますかね…)。
たしかに、OAツールの進化によって利用者自身でできることは増えました。相対的にエンドユーザーのコンピュータリテラシーは向上したといってよいでしょう。しかし、要所要所でシステム管理者の手助けが必要だったり、場合によってはシステム管理者がアクションを起こさないと次に進めない機能も多く存在しています。
こうした現状は、システム管理者の負荷を増やすだけでなく、利用者のストレスをも増幅します。結果としてシステム全体の品質低下になりかねません。その責任の一端は、もちろんマイクロソフトにあります。誰が何と言っても、それは間違いありません。
マイクロソフトは、システム管理者と利用者がお互いにストレスを感じないソフトウェアの開発に力を入れています。そのキーワードの1つとなるのが「セルフサービス」であり、その考え方を取り込んだのが「セルフサービスBI」、つまりPowerPivot なのです。