Google BigQuery

BigQuery BI Engine解説

こんにちは、エクスチュア渡部です。
2019/4/9-4/11に行われたGoogleNext@サンフランシスコに参加して来ました。

GoogleNextのレポートは、以下のブログも是非読んでください。
GoogleNext 2019レポート:1日目
GoogleNext 2019レポート:2日目
GoogleNext 2019レポート:3日目
データアナリスト/データエンジニア向けNext19まとめ

今回はデータアナリティクス周りの発表の目玉の一つである
「BigQuery BI Engine」に関して解説していきたいと思います。

https://cloud.google.com/blog/products/data-analytics/google-cloud-smart-analytics-accelerates-your-business-transformationより引用

【概要】

BI Engineとはざっくり、
BigQuery×BIツールのパフォーマンスを向上させるBigQueryの拡張サービスです。

これまで、BIツールの接続先としてBigQueryを選択する場合、当然ですが「直繋ぎ」でした。
BIツール側で指定された動作に対して、都度BigQueryがクエリを走らせていたため、
キャッシュが効かない場合あまりパフォーマンスに期待が出来ないこともありました。

そのためにデータマートを都度作成し、その分バッチも組んで処理が増え続けていく・・
なんてことは、DWH×BIの領域ではよくある事態だと思います。

そんな現状への打開策として提供されたのが「BigQuery BI Engine」です。
BI Engineはこれまで直繋ぎだった「BigQueyとBIツールの間」にデータを蓄積するメモリが加わり、
レポートで頻繁に必要とされるデータをインメモリ処理にしてくれることで、パフォーマンスを向上させる仕組みです。
※Tableauを使用されている方は、「抽出」を自動的にしてくれるようなものだと思ってください。

【BI Engine VS BQ直繋ぎ】

比較動画を作成してみました。
アメリカの新生児の名前の件数のデータ(163.49 MB)において、
BIEngineを使用しているデータソースとBIEngineを使用しないデータソースを用いた集計結果において、
①オハイオ州のみデータでフィルター
②ミシガン州のみデータでフィルター
という動作がどの程度パフォーマンスに差が出るのかを見ています。

結果、ざっくりですが①も②もBI Engine側は「2秒」、
BI Engineを使用していないものは「10秒」ほどの結果となりました。
データソースの容量や集計条件によってこれより効果が出るものもあれば、出ないものもあるでしょうが、
100MBレベルのデータソースでもこれだけ差が出ると言うのは一つ驚きです。

また、BQ側に発行されるクエリの本数にも大きな違いがありました。
この動画を作成する間20分程ごちゃごちゃデータスタジオを操作した結果、
・BI Engine側のプロジェクトでDSから発行されたクエリの本数は2本
・非BI Engine側のプロジェクトでDSから発行されたクエリの本数は60本(うち40本は課金対象)
でした。

BI Engineではインメモリで処理出来るデータは、追加のクエリの発行が行われません。
そのため、コスト面でのメリットも生み出すほか、大量同時アクセスでBQのクエリ制限に
引っかかり画面が表示できない!なんて事態ともおさらば出来ます。

【価格】

BQ Engineの価格は「キャッシュするデータの容量(1GB~10GBまでで選択)」によって変化します。
BI Engine>Documentation>Pricing

1GBあたり月$30と一見強気な価格設定ですが、
①無駄なクエリ課金を減らせる
②時間を買える(レポート表示やアドホックな分析がサクサク行える)
③「表示重い・・・データマート作るか・・・」から生まれるタスクが(データによっては)無くせる
と考えたら安い買い物だと思います。

【BI Engineの始め方】

BI Engineの始め方は簡単です。

①BQコンソールからBI Engineの画面に行き、「CREATE RESERVATION」を選択

②ロケーションと金額を選択する

1つのreservationあたり、1つのロケーションしか選択出来ません。
BI Engineを使用したいデータがどこに格納されているのかを調べ、該当のロケーションを選択してください。


あとは確認してReservationを作成するのみで、
BI Engineの準備は完了です。

【制約】

現時点では以下の制約があるようです。
・BIツールはDataStudioのみサポート(TableauやLookerは近いうちに対応予定)
・ビュー/カスタムクエリに対しては完全には最適化されない(つまりテーブルにしろってことですね)
・最適化できるテーブルの容量は10GBまで

【まとめ】

BigQueryの機能の拡充が続き、ますます便利なツールとなってきました。
そんな中今回追加された機能であるBigQuery BI Engineによって、
BigQueryに格納されたデータをもとに
レポート作成/アドホック分析を行う方にとって非常に大きなメリットを生み出していく機能になりますね。

私も参加したGoogleNextのセッション
Serverless BI Reporting on GCP with Data Studio
でも、BigQuery BI Engineに関する言及がありました。
お時間がある方は是非こちらもチェックして見てください。
※BI Engineに関する言及は25:20~から


エクスチュアはGoogleCloudの公式パートナー企業です。
また、Tableau、Adobe Experience Cloudなどのマーケティングテクノロジーに精通した
経験豊富なスタッフが、御社のビッグデータ分析をサポートします。

お問い合わせはこちらから

ブログへの記事リクエストはこちらまで

GoogleNext 2019レポート:3日目前のページ

データアナリスト/データエンジニア向けNext19まとめ次のページ

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Adobe Analytics

    Adobe Analytics: データフィードをGoogle BigQueryのテーブルにロードす…

    ※2019年9月4日追記この記事は情報が古いので、新しい記事を書き…

  2. Google BigQuery

    GCPのBQMLを使ってKaggleコンペに挑んでみた(その1)

    こんにちは。エクスチュアでインターンをさせて頂いている中野智基です。…

  3. Adobe Analytics

    Looker: エンジニアがBIで分析ダッシュボードを作る

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  4. Firebase Analytics

    Firebase AnalyticsのデータをフラットなCSVに変換するETL処理

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  5. Adobe Analytics

    Adobe Analytics: Datafeedにデバイスデータがないけど慌てない

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  6. Adobe Analytics

    Adobe Analytics: DatafeedをGoogle BigQueryにロード(2019…

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

カテゴリ
最近の記事
  1. Account Engagementで送るメールをマルチエー…
  2. 協力と裏切りの理論
  3. 【Snowflake Tips】Content-Typeには…
  4. データ連携を自動化!Fivetranの概要・料金とスプレッド…
  5. Adobe WebSDK クロスドメイン計測【第2部】FPI…
  1. Databricks

    databricks:GCPで利用を開始する
  2. KARTE

    KARTE:最低限!KARTEの運用管理のためにやっておくこと!
  3. Snowflake

    Snowflake Summit2023 振り返り
  4. IT用語集

    ハードウェア(Hardware)、ソフトウェア(Software)って何?
  5. Adobe Analytics

    訪問回数 とは-Adobe Analyticsの指標説明
PAGE TOP