clock2014.04.03 12:08
SERVICE
home

Microsoft Power BI 活用レポート:Power Pivotを使ってみた① ~データ処理速度は「実用に耐える」~

AUTHOR :  花谷 慎太郎

Power Pivot の「処理速度」は実用レベルとしては十分

ギックスでは、従来より「Aktblitz(アクトブリッツ)」という高速データ処理ソフトウェアを活用しています。今回は、こちらと比較しながら、処理性能について考察を進めていきます。

Power Pivotはどのくらい速い?

これまで、エクセルでは100万行以下のデータしか扱えませんでした。それが”エクセルのインターフェース”を利用したまま、数千万~数億単位の行数のデータを処理できるというのがExcel Power BIの大きな特徴です。その数千万~数億行の処理を担うのがPower BIファミリーの中の「Power Pivot」というアドインモジュールになります。

我々ギックスは、ビッグデータを分析する際に、データアーティストの仮説に対して、即座に検証結果を返し、次の仮説に進んでいくという「高速な試行錯誤プロセス」を好むので、データの処理速度を非常に重視します。今後、弊社でPower Pivotを活用していくにあたり、その計算処理能力が、果たしてそのような「高速な試行錯誤」に耐えうるのかを確認する必要があります。

今回は、お手軽ベーシック版で導入したPower BIのアドイン「Power Pivot」のデータ処理速度を確認していきます。スピード感を把握するために、Power Pivotと他のインメモリー型のビッグデータ分析ツールに同じ作業をさせてみて、時間的にどのくらいの差があるか比較することにしました。今回の比較対象ツールは、ターボデータラボラトリーの製品、Aktblitz IIです。

※Aktblitz IIは、これまでの連載でも何度も紹介している「超高速データ処理ツール」です。(関連記事一覧

Power BIとAktblitz IIsのデータ処理速度の比較

今回の比較は、メモリーを増設した分析用の高スペックPC(OS:Windows 8 64bit、CPU:Core-i7(3.5GHz)、メモリー32GB)上にインストールしたPower BIとAktblitz IIを使って同じ作業を実施し、その時間を計測しました。試用したデータは、①1,700万行、1.1GBのcsvファイル、②1,200万行、1.2GBのcsvファイルです。

1. データのインポート(csvなどからの初期読み込み)

最初に、①1,700万行、1.1GBのcsvファイルのデータを各々のソフトで読み込みました。

Aktblitzでは、10秒で読み込めましたが、Power Pivotは、128秒(2分8秒)かかりました。

これまで、色々な記事で「Aktblitz IIは本当に高速処理が可能である」と主張してきましたが、Power BIと比較しても、Aktblitz IIの読み込みの早さは際立ちます。一方のPower BIのほうは、Aktblitz IIの10倍以上の時間が必要です。(但し、一度実施すればよい「データ読み込み処理」ですので、処理開始後に少し待つ、というものだと思えば、そこまで問題にはならないように思います)

2. 自形式のファイルの読み込み

Power Pivotは、一度csvファイルを読み込んだ後に、当該データファイルをエクセル形式で保存すると、次からは「より早く」ファイルを立ち上げることができます。Power Pivotで①1,700万行、1.1GBのcsvファイルを読み込んだあと、エクセル形式で保存しました。そのファイルを再度の立ち上げは、7秒で完了します。

一方で、Akbtlitzのほうも、読み込んだcsvファイルをAktblitzのデータ形式であるD5T形式で保存しました。こちらのファイルの再度立ち上げには、7秒かかりました。

自形式ファイルからの読み込みに関しては、Power PivotとAktblitzは同等であり、どちらも「非常に速い」といえると思います。

3. データの結合

次に、①1,700万行、1.1GBのデータを②1,200万行、1.2GBのデータと結合しました。

Aktblitzでは、JOINと呼ばれるデータ結合の作業で6秒、Power Pivotのほうは141秒(2分21秒)かかりました。(※Power Pivotは「リレーションを貼る」という作業です)

データ結合に関しても、Aktblitzが圧倒的に速いことがわかります。一方、Power Pivotは、インポートと同様に「一度リレーションを貼ったものをエクセル形式で保存」した場合には、再読み込みを25秒程度で行えました。即ち、一度リレーションを貼ってしまうと、2回目以降は高速にそのデータ群を利用できるようになると言えます。

———

上記の比較から、ファイルを読み込み・ファイル結合などの処理の「最初の1回」は、Aktblitzに比べてPower BIのほうが「10倍~20倍ぐらい長く時間がかかる」という結果になりました。Aktblitzはインメモリー型のソフトウェアの中でも、データの読み込み、ジョイン、集計などに特化したソフトであるため、上記のような作業が得意領域であり、ストレス無しで、圧倒的な高速処理が可能だという事が分かります。

一方、Power Pivotも、Aktblitzよりも初回の読み込みやデータ結合は少し時間はかかるものの、2回目以降はそれほど時間をかけずに使えるということがわかりました。このスピード感であれば、弊社での分析における「高速試行錯誤プロセス」にも十分耐えうると思います。

今後、更なる使い込みの中でより深く、より詳細に検証していく必要があるものの、現時点では

  • (Aktblitz IIよりは遅いものの)Power BIは十分に速い。

と言えるでしょう。また、ビジュアライズ、マップへのプロット、統計的な分析が、エクセル上でワンストップに使えるという利便性を考えると、非常に魅力的なツールであると感じています。

次回は機能面での使用感をお伝えしたいと思います。

本特集の記事一覧はコチラから

 

 

SERVICE