データ分析

SQL やリアルタイム AI をはじめとする機能でストリーム分析を簡単に実行する

Google Cloud Data Analytics 1.jpg

※この投稿は米国時間 2020 年 5 月 7 日に、Google Cloud blog に投稿されたものの抄訳です。

試練と不確実性の時代に突入した今、世界中の企業に求められているのは、顧客が望む信頼性、効率性の高いシステムを運用するために、クリエイティブな発想力を活かし、より少ないリソースでより多くを成し遂げることです。データ分析においては、この特異な状況の中で作業を続ける自立自走型のエンジニアリング チームと運用チームが、必要な生産性レベルを維持するための方策を見いだすことが重要となります。多くのチームにとって重要な目標は、高い価値をもたらす最新型のストリーミング パイプラインの開発と、コスト減につながるバッチ ワークフローの維持や最適化を両立することです。この度 Google Cloud は、デベロッパー チームと運用チームがストリーム分析に簡単にアクセスするための新しい機能をリリースしました。以下はその概要です。

導入される機能の主な特長:

  • 一般提供されている Dataflow SQL を利用して、BigQuery のウェブ UI からストリーミング パイプラインを直接開発
  • Dataflow を AI Platform統合し、高度な分析ユースケースをシンプルな手順で開発
  • オブザーバビリティ ダッシュボードでモニタリング機能を拡充

Google Cloud のストリーミング プラットフォームは Pub/SubDataflowBigQuery の自動スケーリング インフラストラクチャを基盤とし、エンジニアリング チームと運用チームが可変量データをリアルタイムで取り込み、処理し、分析してビジネス分析情報を得るために必要なリソースをプロビジョニングします。Google Cloud は「The Forrester Wave™: Streaming Analytics, Q3 2019」レポートにおいてこの分野のリーダーに選出されたことを光栄に思います。今回のリリースでは、評価の決め手となった機能をベースに、さらに強化を進めています。

ストリーム分析の新機能

Dataflow と Pub/Sub の両方でリリースした主要機能により、ストリーミング パイプラインとバッチ データ パイプラインの開発プロセスはいっそう簡単になります。アイデアからパイプラインへ、マネジメントからイテレーションへと移行して、お客様のニーズに効率的に対応できます。

●Dataflow SQL の一般提供

Dataflow SQL を利用して、データ アナリストとデータ エンジニアは SQL のスキルを活かし、BigQuery のウェブ UI からストリーミング Dataflow パイプラインを直接開発できます。Dataflow SQL のパイプラインでは、自動スケーリング、時間ベースのウィンドウ処理、Streaming Engine、並列データ処理を全面的に活用することが可能です。Pub/Sub から取得されるストリーミング データを Cloud Storage のファイルまたは BigQuery のテーブルと結合し、結果を BigQuery または Pub/Sub に書き込んで、Google スプレッドシートまたは他の BI ツールを使用してリアルタイムのダッシュボードを構築できます。本番環境のジョブをスクリプトで処理するには、最近追加され、多数のクエリ パラメータをサポートしているコマンドライン インターフェースを使用できます。スキーマの管理には、Data Catalog 統合機能と組み込みのスキーマ エディタを使用できます。

1.jpg

●Jupyter ノートブックでの反復型のパイプライン開発

デベロッパーは AI Platform Notebooks でパイプラインを一から反復的に構築し、Dataflow ランナーでデプロイできるようになりました。Apache Beam パイプラインを段階的に作成するには、パイプラインのグラフを「入力、評価、出力」ループ(REPL)のワークフローで検査します。ノートブックは Google の AI Platform を通じて利用できます。最先端のデータ サイエンスと機械学習のフレームワークに従って直感的に使える環境でパイプラインを記述して、優れたカスタマー エクスペリエンスを簡単に実現できます。

●Flex テンプレートによるパイプラインの共有とスケーリング

Dataflow のテンプレートを利用すると、パイプラインをチームメンバー間や組織全体で簡単に共有できます。Google が提供している数多くのテンプレートを活用して、シンプルでありながら有用なデータ処理タスクを実装することも可能です。Flex テンプレートでは、任意の Dataflow パイプラインからテンプレートを作成できます。

●Pub/Sub デッドレター トピックの一般提供

Pub/Sub 向けのデッドレター トピックが一般提供され、よりシンプルな手順で、信頼性の高いストリーミング パイプラインとイベント ドリブン システムを運用できます。イベント ドリブンのシステムでは、「デッドレター」、つまりサブスクライバー アプリケーションで処理できないメッセージが問題になりがちです。デッドレター トピックを利用すると、そのようなメッセージをオフラインで調べてデバッグするために後回しにして、他のメッセージを遅延なく処理することができます。

●変更データ キャプチャ(CDC)でストリーム データ処理を最適化

ストリーム データ処理を最適化する手法の 1 つは、使用できるデータすべてではなく、変更のあったデータのみの操作に重点を置くことです。その場合に役立つのが変更データ キャプチャ(CDC)です。Dataflow チームが開発したサンプル ソリューションでは、変更のあったデータのストリームをバージョン 5.6 以降の任意のタイプの MySQL データベース(セルフマネージドやオンプレミスなど)から取り込み、Dataflow で BigQuery のデータセットと同期できます。

●Cloud AI Platform との統合

AI Platform API と簡単に統合して、高度な分析ユースケースを導入するためのライブラリにアクセスできるようになりました。AI Platform と Dataflow の機能には、動画クリップの分類、画像の分類、自然言語分析、データ損失防止(DLP)、その他多くのストリーミング予測ユースケースが含まれます。 

使いやすさとスピードは、データ パイプラインの構築と立ち上げを行うチームだけではなく、パイプラインの管理や保守を行うチームも体感できるはずです。さらに、運用チームの能力がいっそう発揮されることを目指して、Dataflow のモニタリング エクスペリエンスも強化しました。

●オブザーバビリティ ダッシュボードでオペレーションの複雑さを緩和

オブザーバビリティ ダッシュボードと Dataflow のインライン モニタリングでジョブの指標に直接アクセスして、バッチ パイプラインとストリーミング パイプラインのトラブルシューティングに役立てることができます。モニタリング グラフにアクセスして、ステップレベルとワーカーレベルの両方で状況を把握し、古いデータや大きなシステム レイテンシなどの条件でアラートを設定できます。以下に例を示します。

2.jpg

今までにない簡単さで、ストリーム分析を取り入れることができます。テストや試験運用に着手するための第一歩は、なんらかのデータをプラットフォームに移行することです。Pub/Sub のクイックスタート ドキュメントをご覧いただき、Google Cloud でリアルタイムの取り込みとメッセージングを活用して一歩先へと踏み出してください。

- By プロダクト管理ディレクター Evren Eryurek