<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=445779107733115&amp;ev=PageView&amp;noscript=1">

ストリームデータ処理とは?特徴や活用例について解説

 2021.10.04  2021.12.23

IT技術の発展やRFIDの普及により、近年、企業が扱うデータの量や質は変化しています。こうした状況において、ストリームデータ処理の重要性や認知度が向上してきました。

本記事では、そもそもストリームデータとは、といった基本的な事項から、活用例やデータ分析基盤を整備する際のポイントまで解説します。

ストリームデータとは

ストリームデータとは、継続的に発生し、なおかつ無制限に増大し続けるデータのことです。時刻情報を含むため、時間の経過によってデータの性質や価値が変わることも、特徴の1つです。端的に表せば「無限に増え続けるデータ」であり、昨今のビジネスシーンで注目を集める「ビッグデータ」も、ストリームデータの一部と言えます。

一見複雑で身近なものには感じられないかもしれませんが、実は多くの人が毎日利用しているFacebook・TwitterなどのSNSもストリームデータの集積です。

Twitterを例にすると、タイムライン上には全世界の人々のツイートが継続的に投稿されています。Twitterにユーザーが存在する限り、総ツイート数は増え続けるでしょう。また、時間の経過、トレンドの遷移によってツイートの内容は変動します。さらに、タイムラインを遡るごとに情報の価値は薄れ、何年も前のツイート内容は利用する場面が限られるため、価値も低くなります。

そのほか身近なところでは、株式取引情報や交通情報、検索クエリなどもストリームデータに当てはまります。 ます。こうして考えると、あらゆるところにストリームデータが存在しているとおわかりいただけたでしょう。

花王株式会社様 導入事例
freee株式会社様導入事例

ストリームデータ処理とは

前述の通り、ストリームデータは永続的に発生するので、処理も同じく永続して行わなければなりませんれる膨。無限に送ら大なデータを保管するとなると、本来、多大なリソースを割く必要があります。これを解決するのが、ストリームデータ処理です。
ストリームデータ処理とは、ストリームデータをリアルタイムで処理する技術のことをいいます。送られてきたデータを、重要なデータとそうでないデータにリアルタイムで選別し、保管や情報の引き出し、あるいは破棄を繰り返します。実例を確認してみましょう。

企業が扱うストリームデータには、RFID(交通系カード・ETCカードに代表される非接触型の情報認識システム)やセンサーなどがあります。中でも、数値の異常を検知するセンサーから送られるような情報は、すべてが重要なわけではありません。値が正常であるというデータは長期間保存する価値はなく、確認次第すぐに破棄してよいものです。
ストリームデータ処理を活用することで、このようなデータの要不要が即座に選り分けられます。データをリアルタイムに処理することで、フレッシュな情報を引き出すことが可能となり、迅速な意思決定を促進するのです。

ストリームデータ処理とバッチ処理の違い

ストリームデータ処理の比較対象として、バッチ処理がたびたび例に挙がります。バッチ処理とは、バッチ単位(ひとまとまり)のデータを一括処理することです。ストリームデータ処理と同様、ビッグデータ分析に適した処理ではありますが、明確な違いがあるので確認しましょう。

ストリームデータ処理

  • 入力データの特徴:永続的に送られる無限のデータ
  • 処理を行うタイミング:永続的(短い処理を繰り返す)
  • 処理するデータ:特定の時間、または直近のデータ
  • 対応するデータサイズ:キロバイト単位がほとんど
  • データ遅延:数ミリ秒~数分

バッチ処理

  • 入力データの特徴:処理実行時にすべての対象データがそろっている必要あり
  • 処理を行うタイミング:対象データが集まったときに一括で行う
  • 処理するデータ:バッチ内全体のデータ
  • 対応するデータサイズ:大きなデータのまとまり
  • データ遅延:数分~数時間

バッチ処理は、一定期間集計したデータをまとめて処理することから、効率的にデータ処理が行えます。しかし、処理実行時にすべてのデータをそろえておく必要があり、かつ対象範囲が明確でなくてはなりません。また、リアルタイムの集計結果を確認することはできず、バッチをまたいだ出力には基本的に対応しません。例えば、バッチを月ごとに分けていた場合、1月分のデータ集計結果は1月末日まで確認できず、12月のデータと合算して分析することも不可能ということです。

一方、ストリームデータ処理はリアルタイムで行われる上、バッチごとに分けることもないので、このような状況にはなり得ません。また、ストリームデータ処理でも、期間や対象を設けることで、バッチ処理のような働きをすることは可能です。そのため、ストリームデータ処理はバッチ処理の上位互換といってもよいでしょう。

ストリームデータ処理ならではの利点

ストリームデータ処理が優れているのは、ビッグデータからリアルタイムで重要な情報のみを得られる点です。前述の通り、ストリームデータに含まれる情報は、鮮度が落ちるほどに価値を失います。企業間の競争が激化している現代では、データから得られる情報の取り入れが遅いことは致命的と言えるでしょう。必要な情報を即座に分析することで、迅速な意思決定につながります。

Google Cloud 事例
Google Cloud

ストリームデータ処理の活用例

ストリームデータ処理活用の代表例が、証券取引所で行われる株価指数算出です。コンマ単位で変動する株価に対応するには、ストリームデータ処理が欠かせません。交通状況モニタリングにも、ストリームデータ処理は活用されています。車両位置情報を収集し、リアルタイム分析することで、周辺車両の状況に応じた渋滞や事故を検知できます。

ショッピングモールの在庫管理に活用されることもあります。ストリームデータ処理を導入することで、在庫数や時間帯に応じた商品の割引が可能です。このように、ストリームデータ処理は幅広い分野で活用されています。

データ分析基盤を整備する上で大切なこと

データ分析基盤を構築する上で、特に重要なのがユースケースの確保です。ユースケースとは、利用者(あるいは外部システム)から見て、システムがどのように動作するかを明確化することです。データ分析においては、人海戦術などの解決策もあるため、必ずしも基盤に投資することはありません。ユースケースを確保することで、基盤への投資価値の有無が、具体性を持って再確認できます。

次に、収集するデータの選定も大切です。いくら高度なデータ分析を行っても、データそのものの質が悪ければ、分析結果の精度は落ちてしまいます。異常なデータの除去や欠損値の補正が行われているか、データ抽出時に人的ミスが生じていないかをチェックしましょう。

また、データ更新の流れは、一方通行にするのが望ましいとされています。逆方向のデータ更新を許すと、処理のタイミングによってデータの状態が異なり、復旧が困難になります。一方通行であれば、何らかのエラーが発生した際も、一歩手前に戻ることで対処可能です。

リアルタイムなデータ処理を実現するGoogle Cloud 

Google Cloud」は、Google がクラウド上で提供するサービスの総称です。高性能な仮想マシンや可用性の高いストレージが提供されており、AIを活用した需要予測や手頃な料金でのビッグデータ分析、アプリケーション開発が行えます。

Google Cloud に含まれるストリームデータ分析サービスは、Pub/Sub・Dataflow・BigQueryの3つです。Pub/Subは、世界中のあらゆるストリームデータを大規模に取り込むサービスです。Pub/Sub を使えば、1 秒間に億単位のイベントを取り込んで分析できます。

Dataflow は、エクサバイトまで対応したデータの取得・分析・分類などを行うデータ処理サービスです。ストリームデータ分析とバッチデータ分析を統合し、最適なパフォーマンスでのデータ処理を可能とします。

BigQuery は、クラウド内のビッグデータをリアルタイムで解析するサービスです。数百万行のデータを取り込み、リアルタイムでダッシュボードを作成できます。

まとめ

ストリームデータ処理は、永続的に発生するとき系列を含むデータを、リアルタイムで処理する技術です。最新の情報をいち早く取り入れ、行動に移すことが求められる昨今の企業にとって、極めて重要な技術と言えるでしょう。代表的なところでは、株価指数算出や交通状況モニタリングのほか、ショッピングモールの在庫管理などに活用されています。

自社でストリームデータ処理を行うなら、Google Cloud がおすすめできます。扱いやすさもさることながら、コストパフォーマンスも非常に高いサービスです。Googleが自社で活用しているということからも、信頼性の高さは証明されていると言えるでしょう。ぜひ導入を検討してみてください。

BigQueryで始めるデータドリブン経営

RELATED POST関連記事


RECENT POST「Google Cloud(GCP)」の最新記事


Google Cloud(GCP)

【GoogleCloud】BigQueryのデータリネージ(Dataplex機能)を紹介|データマネジメントには欠かせないデータリネージの考え方とは

Google Cloud(GCP)

LookerとBigQueryの組み合わせで実現できる事

Google Cloud(GCP)

データ分析基盤とは?必要性や構成要素を解説!

Google Cloud(GCP)

Google Cloud Dataflow がデータ分析基盤に使われる理由

ストリームデータ処理とは?特徴や活用例について解説