Power BIとデータベースとの親和性は?
今回は、Power BIとデータベースの関係から、少し話を広げてみましょう。AccessやSQL Serverなど、Power BIと連携するデータベースについて紹介します。
AccessとPower BIの関係
Microsoftの製品群をお使いの方からは、Power BI Desktopを触ってみると、Accessとインターフェースが似ていると感じた、という感想をいただくことがあります。
Microsoftの小規模リレーショナルデータベースソフトであるAccessは、「データの関連付け」がソフトのうちでも重要な機能のひとつです。Power BI Desktopにも、データの関連付けを行う「リレーション」ビューが用意されています。こちらの画面は、Accessのリレーション編集画面とルックアンドフィールが似たものになっています。Accessを使ったことがある方は、Power BI Desktopのリレーショナル画面を感覚的に使いこなせる、というのはよくあることです。
ただし、ほかの部分では、2つのソフトはかなり異なります。というのも、Accessは、データ入力や検索に使われることがメインで、いわばデータの出入り口として使用します。一方、Power BIは取り込んだデータの「可視化」に使われるのがメインなのでデータの出口になります。
企業で使われる幅広いデータベースとの連携をサポート
Power BIのデータベースの読み込みは、Microsoft製品に限られません。
日本の企業で現在使われているデータベースは、Microsoft SQL Server、Oracle Databaseが二大シェアになっています。そのほかにもIBM DB2やSybase、Teradataなども、よく利用されています。これらのデータベースは、すでにPower BI Desktopでもサポートされています。日本の企業が導入しているであろう一般的なデータベースはすべて接続可能といってもよいでしょう。
オープンソースのデータベースを利用されている場合も含め、SAP HANAやSalesforceのデータも取れるようになっています。
Power BI DesktopやExcelのPower Queryで「データの取得」のリストに表示されないデータベースがあった場合も、ODBC(Open Database Connectivity)という機能を使うと接続可能になることがあります。たとえば最近利用者の増えているAWSはメニューにはまだありませんが、Amazon AuroraやAmazon Redshiftにも前述の ODBC で接続可能です。
Power BI Desktopを使うとき、データベースやサーバー環境もMicrosoftの製品群で揃えていないと使えないのでは? という心配はありません。もちろんクラウドを利用するのであればAzureのほうが、さらに簡単に接続できますが、オンプレミスからクラウドまで、幅広い環境と接続してご利用いただけます。
例えば、ECサイトなどを持っていて、その売上分析をしたいという場合、Power BIサービスは最適なツールです。この場合、ECサイトの売上や顧客のデータが、どのデータベースに入っているかが分かっていれば、社内の環境からPower BI Desktopを使用して直接データを取得できます。あとは自動更新で常に新しいデータを取得しながら、日々のデータ可視化・分析に利用できるようになります。最低限、データベースの環境を知っておく必要はありますが、データの取得自体は、そんなに難しいことではありません。
もちろん、JSONもサポートされているので、直接読み込めないデータであっても、中間形式としてJSONでデータを書き出せる機能があれば、その形式を経由して読み込むこともできます。
Power BIとPower Queryの違い
Power BI Desktopのデータ取得とExcelのPower Queryのデータ取得の画面では、表示されるデータベースの種類が多少異なることにお気づきの方もいるでしょう。
データベースとの連携機能は、Excel 2010のPower Queryから長い年月を経て利用されていますので、機能自体はきわめて安定しています。しかし、Power BI Desktopでは、最新の機能をいち早く取り入れるため、さらにベータ版を含む連携機能が随時、搭載されています。データを取得の「Azure」以下、「その他」以下には、多数のベータが選択可能になっています。
その後、正規版になったものは、今後ExcelのPower Queryでも読み込み可能になる予定です。
今回は、Power BIで扱うデータソースとなる、データベースとの親和性について紹介しました。Power BIを社内でより幅広い業務へ導入する参考になれば幸いです。