Tableauで10億件データを集計しても良いレスポンスを保つには【餅は餅屋】
はじめに
昨今ではセルフサービスBIの浸透により、非エンジニア層の方々もデータ分析で活躍されるようになりました。これは大変喜ばしいことで、働く方々にとってデータがより身近になり、データに基づいた行動がとれる世界が近づいてきたのだと思います。
セルフサービスBIのおかげで、現場部門は手元のデータを手間なく分析することができるようになりました。その一方でセルフサービスBIはデータの品質に悩みを抱える機会が多いです。
あらゆる情報が統合され、高品質なデータウェアハウスがない場合、データの発生源の信憑性を絶えず気にしなければならなくなります。
また、大量データを分析するときにBI側の画面描画が遅くなる場合もございます。データソースをExcelやCSVにすると顕著に現れて参ります。もちろんBI製品の向上や負荷をかけにくい画面設計などで解決を試みることもできますが、大本であるデータベースに手を入れた方が効率的でしょう。
前提
本記事はBIツールを利用する非エンジニア層の方々に向けて、現代の技術では画面側で完全に解決をすることができないデータベース側の問題については、やはりデータベース製品が必要だよねということをお伝えする記事です。
BIツールを否定するものではなく、専門領域は専門領域のツールに任せたほうが効率的だよね、という意味合いで記載していることをご承知おきください m(_ _)m
10億件のデータを集計してみる
最初にこちらの下図をご覧ください。
こちらはTableauでデータ分析をしているところです。サクサクとデータ分析ができていますね。このくらいのスピードであれば思考を止めることなくデータ分析ができるでしょう。
サクサク動いていましたが、実は操作しているデータの件数は10億件です。昔だったら天文学的な、今でもすんげぇ多いデータ量です。この大量データはDr.Sumの中に格納されています。
少しだけDr.Sumの紹介をします。
Dr.Sumとは
Dr.Sumは企業のデータ活用に必要な機能を網羅するデータ分析基盤で、国産の分析用データベースです。
データウェアハウス構築に初めて取り組む方から多機能・高性能を求めるベテランまでが満足できる仕組みとなっています。
データベース初心者にも優しいので操作のほとんどがGUIであることが特徴です。
Dr.Sumの推しポイントについては別の記事で紹介いたします。
Dr.Sumはなんでこんなに早いのか
10億件データでもサクサク動くDr.Sum。これが20億件になっても100億件になっても問題なく動作します。
Dr.Sumは通常のディスク集計の他にインメモリ集計という機能がございます。
ディスク集計でも充分に早いのですが、10億くらいになるとインメモリ集計が望ましいです。
インメモリ集計は、当然ながらメモリ容量を圧迫しますので、必要なテーブルのみをインメモリ化することが望ましいです。
Dr.Sum以外ならばどうなのか
結論からいうとDr.Sum以外にも高速集計できるデータベースは他にもあります。カラムナ型のデータベースであれば集計は得意技です。
- 集計速度
- 費用
- 使いやすさ
- セキュリティ
などの観点からデータベースを選択すると良いと思います。
重要なことは”データを貯める高速集計型の集約庫”を用意しておくということです。
さいごに
ExcelやCSVのデータをBIツールにアップロードをして扱うことは大変お手軽ですが、データの更新やそのデータの流用を考えると、データ品質を担保することが難しいです。
またどうしてもデータ量や集計速度に懸念が出てしまいます。
BIツールを導入する際には併せてデータの格納庫を意識するようにしましょう。