はじめに
こんにちは、CI部の上野です。
本日でアドベントカレンダーも24日目となります。
世間ではクリスマスイブですが特に予定もないので、本日は最近BigQueryにプレビュー版で追加された「実行グラフ」をさわっていきたいと思います。
そもそもBigQuery とは
BigQueryはGoogle Cloud Platform の分析用エンタープライズ データ ウェアハウスです。BigQueryの特徴としては以下のような点が挙げられます。
- フルマネージド(クエリーサービス)として提供
- 費用は利用した分のみの従量課金
- 既存DWHの課題を解消したクラウド型DWH
- 大容量データを活用する拡張(GISとML)
今回は、BigQueryでのデータ処理を最近追加された「実行グラフ」で可視化してみた感想となります。
クエリ実行の詳細を表示する
実行グラフの表示手順
- Google Cloud コンソールで [BigQuery] ページを開きます。
- [エディタ] で [個人履歴] または [プロジェクト履歴] をクリックします。
- ジョブのリストで、関心のあるクエリジョブを特定します。[more_vert アクション] をクリックし、[クエリをエディタで開く] を選択します。
- [実行グラフ] タブを選択して、クエリの各ステージをグラフィカルに表示します。
実行グラフの機能
実際にBigQueryクエリを実行して、その結果に対して「実行グラフ」を表示してみました。
テーブルやそれぞれの処理について、「実行グラフ」の図をクリックするとテーブルの詳細や処理の実行時間、読み取ったレコード数や書き込んだレコード数などを確認することができます。
読み取ったレコード数や書き込んだレコード数については、グラフ内の遷移の矢印に書いてある数値で確認することもできます。
では、実行グラフ上部のコントロールバーを触っていきたいと思います。
右上の「Show / Hide Minimap」を押すと、右側に「今グラフ全体に対してどの範囲が表示されているか」が表示されます。
左隣の「グラフを全画面で表示」を押すと、ページ一面での表示に切り替わるのでとても見やすくなります。
「実行情報を表示する」をオンにすると、それぞれの処理を表示する図に実行情報が追加されます。ただし、ほとんどの実行情報が図に入り切っていないので、基本的にはこの機能は使わずに、見たい実行情報については処理ごとに図をクリックして確認することになると思います。
グラフでステージ期間ごとの上位ステージをハイライト表示するには、[期間別に上位のステージをハイライト表示する] をクリックします。実行してみると「SO6:Output」がハイライト表示されました。
使用されたスロット時間別の上位グラフをグラフでハイライト表示するには、[処理別に上位ステージをハイライト表示する] をクリックします。実行してみると「SO4:Join+」がハイライト表示されました。
おわりに
BigQueryの「実行グラフ」を実際に使ってみると、処理の流れやテーブルの結合関係などが視覚的に分かりやすくなったと思います。また、それぞれの処理の図をクリックすると実行時間や読み込みデータ量などがわかるので、処理のパフォーマンスに対するボトルネックの特定などにも是非ご活用ください。
最後まで読んでいただきありがとうございました。