この記事の要点
- ストリーム処理は、届き続けるデータを届いたそばから少しずつ処理する方式。バッチ処理は、ためたデータを決まった区切りでまとめて処理する方式。
- 違いの軸は 遅延(すぐ結果が要るか) と データの区切り方(終わりのない流れか、区切ったかたまりか)。IoT の異常検知はストリーム、月次の集計や機械学習モデルの学習はバッチが向く。
- 両方を並べて使う ラムダアーキテクチャ(バッチ層・スピード層・サービング層)と、ストリーム処理だけでまとめる カッパアーキテクチャ(2014年に Jay Kreps が提案)がある。
- IoT中級では「IoTデータ活用技術」(25〜30%、2026年9月時点)に当たる。場面から方式を選べるかが要点。
- 独自の確認問題3問(全選択肢の解説つき)で確かめられる。
ストリーム処理とバッチ処理とは?一言でいうと
ストリーム処理とは、センサなどから絶え間なく届くデータを、ためきる前に届いた順に処理して、すぐに結果を出す方式です。バッチ処理とは、一定の期間や量のデータをためてから、まとめて一度に処理する方式です。
たとえば工場の設備なら、「振動の値がしきい値を超えたら数秒以内に知らせる」のがストリーム処理、「1か月分の稼働データから設備ごとの稼働率を集計する」のがバッチ処理です。
ストリーム処理では、終わりのないデータの流れを「直近1分」「直近100件」のようなウィンドウ(時間や件数の窓)で区切って集計します。バッチ処理では、ファイルや期間でデータの範囲がはっきり決まっているので、全体を見渡した計算や、やり直しがしやすいのが特徴です。
遅延・データ量・用途で比べると?
| 観点 | ストリーム処理 | バッチ処理 |
|---|---|---|
| 結果が出るまで | 数秒以内など、届いてすぐ | 区切り(毎時・毎日・毎月)が来てから |
| データの区切り方 | 終わりのない流れを、ウィンドウで区切る | ためたかたまり(期間・ファイル)ごと |
| 一度に扱う量 | 少しずつ(1件〜ウィンドウ分) | 大量(期間分すべて) |
| 向く用途 | 異常の即時検知、監視、アラート、即時の制御 | 定期の集計・レポート、過去データの再計算、モデルの学習 |
| 全体を見た計算 | ウィンドウの外は見えないので苦手 | 期間全体を見渡せるので得意 |
| やり直し(再計算) | 過去のデータを流し直す仕組みが必要 | 同じ入力で処理を再実行しやすい |
| 考えること | 遅れて届いたデータ、順序の入れ替わり、止まらない運用 | 処理が次の区切りまでに終わるか、結果が古くなること |
← 表は横にスクロールできます →
IoT のデータは Velocity(速度)が大きく、ストリーム処理が欠かせない一方で、長期の傾向や学習にはバッチ処理も必要です。データの特徴の整理はビッグデータの3Vで扱っています。
中間として、数秒〜数分ごとの小さなかたまりをバッチ処理で次々に処理するマイクロバッチという方式もあります。「届いたそばから1件ずつ」ではないため、遅延はストリーム処理よりやや大きくなります。
ラムダアーキテクチャはどんな考え方?
ストリーム処理の「速さ」と、バッチ処理の「正確さ・やり直しやすさ」を両立させるための構成が ラムダアーキテクチャ です。Nathan Marz が広めた考え方で、同じデータを2つの経路に流します。
- バッチ層:届いたデータを変更しない記録としてすべてため、定期的に全体を処理して正確な結果を作る。
- スピード層:同じデータをストリーム処理し、バッチ層がまだ処理していない直近の分の結果をすぐに作る。
- サービング層:バッチ層とスピード層の結果を合わせて、利用者の問い合わせに答える。
| 観点 | ラムダアーキテクチャ | カッパアーキテクチャ |
|---|---|---|
| 処理の経路 | バッチとストリームの2つ | ストリームの1つ |
| 再計算のしかた | バッチ層で全体を処理し直す | 保存したデータを最初から流し直す |
| 利点 | 速報性と正確さを役割分担できる | 処理の実装が1つで済む |
| 弱点 | 2つの仕組みの保守と、結果をそろえる手間 | 長期間のデータを流し直せるように保存しておく必要がある |
← 表は横にスクロールできます →
弱点は、同じ処理を2つの仕組みで作り、同じ結果になるよう保ち続ける手間です。Jay Kreps は、2014年7月の記事「Questioning the Lambda Architecture」でこの点を指摘し、ストリーム処理だけで構成し、再計算が必要なときは保存しておいたデータを最初から流し直す構成を提案しました。これが カッパアーキテクチャ と呼ばれます。
IoT中級ではどこで問われる?
IoTシステム技術検定 中級の公式ページに示された出題カテゴリのうち、「IoTデータ活用技術(AI、ビッグデータ分析、活用事例)」25〜30% に当たります(2026年9月27日確認)。
公式テキスト『IoT技術テキスト 第4版』では、第3章「IoTデータ活用技術」に当たる範囲です。章とカテゴリの対応は当サイトの推定で、使っているのは目次の章名だけです。
4択の形としては、当サイトの作問の観点で次のようなものが考えられます(出題の傾向や頻度を示すものではありません)。
- 場面の説明から、ストリーム処理とバッチ処理のどちらが適しているかを選ぶ
- 2つの方式の特徴として適切(不適切)なものを選ぶ
- ラムダアーキテクチャの各層の役割を選ぶ
- 処理の場所(エッジ・クラウド)と処理の方式の組合せを選ぶ
処理の方式と処理の場所は別の軸です。エッジでストリーム処理を行い、クラウドでバッチ処理を行う組合せも一般的です。場所の選び方はエッジ・フォグ・クラウドの違い、送られてくるデータの量や周期の特徴はIoTの通信トラフィックの特性で扱っています。試験の形式はIoTシステム技術検定 中級とはへ。合格基準は公式に非公開です。
取り違えやすい点は?
| つまずき | 正しい整理 | 見分け方 |
|---|---|---|
| ストリーム処理はデータを保存しないと思う | 処理はためきる前に行うが、結果や元データを保存することは多い | 「処理のタイミング」と「保存するか」を分ける |
| バッチ処理は古い方式で不要だと思う | 期間全体を見る集計や学習、再計算ではいまも中心 | 「月次」「全期間」「学習」はバッチ |
| ストリーム処理なら何でも正確に計算できると思う | ウィンドウの外は見えず、遅れて届くデータの扱いも要る | 「全期間を見た計算」はストリームの苦手分野 |
| マイクロバッチをストリーム処理と同じだと思う | 小さなかたまりをバッチで処理する中間の方式 | 「数秒ごとのかたまり」ならマイクロバッチ |
| ラムダのスピード層が正確な最終結果を作ると思う | 正確な結果はバッチ層、直近の速報はスピード層 | 「速報」と「確定」を分けて考える |
← 表は横にスクロールできます →
確認問題1:ストリーム処理が向く場面は?
次の処理のうち、ストリーム処理が最も適しているものはどれか。
- 前月1か月分の稼働データから、設備ごとの稼働率を集計する
- 過去3年分の記録を使い、故障を予測する学習モデルを作り直す
- ボイラーの圧力が上限に近づいたら、数秒以内に担当者へ知らせる
- 年度末に、全拠点の電力使用量をまとめた報告書を作成する
正解:3。届いたそばから判定し、数秒以内に知らせる必要があるため、ストリーム処理が適しています。
1 は前月分という区切られた期間の集計で、バッチ処理が向きます。2 は長期間のデータ全体を使う学習で、バッチ処理の典型です。4 は年度末に一度行う集計で、すぐに結果が要る処理ではありません。
確認問題2:ラムダアーキテクチャの層の役割は?
ラムダアーキテクチャの各層の説明として、最も適切なものはどれか。
- スピード層は、ためた全データを定期的に処理し、正確な最終結果を作る
- バッチ層は、ためた全データを定期的に処理し、正確な結果を作る
- サービング層は、センサから届くデータを最初に受け取り、保存だけを行う
- バッチ層は、直近の未処理分だけを届いたそばから処理して速報を作る
正解:2。バッチ層はデータを変更しない記録としてため、定期的に全体を処理して正確な結果を作ります。
1 はバッチ層の説明をスピード層にすり替えています。3 のサービング層は、2つの層の結果を合わせて問い合わせに答える層です。4 はスピード層の説明です。
確認問題3:カッパアーキテクチャの説明は?
カッパアーキテクチャの説明として、最も適切なものはどれか。
- ストリーム処理の経路だけで構成し、再計算は保存したデータを流し直して行う
- バッチ処理の経路だけで構成し、直近のデータは次の区切りまで処理しない
- バッチとストリームの2つの経路を並べ、結果をサービング層で合わせて返す
- データを保存せずに処理し、再計算が必要になったら計算を諦める構成である
正解:1。カッパアーキテクチャは、処理をストリームの経路1つにまとめ、処理を変えて再計算したいときは、保存しておいたデータを最初から流し直します。
2 はバッチ処理だけの構成で、速報性がありません。3 はラムダアーキテクチャの説明です。4 は誤りで、流し直すためにデータを長く保存しておくことが前提になっています。
確認問題のあとは何をすればいい?
迷った問題は、場面の中の「すぐに」「数秒以内」と「前月」「全期間」「学習」のどちらが出てくるかで見直してみてください。遅延の要求がほぼ答えを決めます。
本番と同じ4択で、ほかのカテゴリと混ぜて解くなら、登録不要のIoT中級の無料お試し20問で全問の解説まで確認できます。
よくある質問
リアルタイム処理とストリーム処理は同じですか?
近い意味で使われますが、同じではありません。リアルタイム処理は「決められた時間内に結果を出す」という要求を指す言葉で、ストリーム処理は「流れてくるデータを順に処理する」方式を指します。ストリーム処理はリアルタイムの要求に応えるための代表的な方式です。
IoT ではどちらか一方を選べばよいですか?
多くの場合は両方を使います。即時の検知や監視はストリーム処理、定期の集計やモデルの学習はバッチ処理、という役割分担が一般的です。
IoT中級でこの範囲は何問出ますか?
公式に示されているのはカテゴリ単位の比率だけで(「IoTデータ活用技術」25〜30%、2026年9月27日確認)、この用語の問題数は公表されていません。
出典・参考
本番と同じペースで腕試し
記事の次は、本番形式の問題で。
公式の出題カテゴリの比率どおりに組んだ無料お試しを、登録不要・カード不要で解けます。続きの模試と章別ドリルは買い切りで、月額はかかりません。
あわせて読みたい
当サイトは、モバイルコンピューティング推進コンソーシアム(MCPC)とは関係のない個人が運営する非公式の学習教材です。掲載している問題はすべて当サイトのオリジナルで、実際の試験問題・過去問題・再現問題ではありません。試験の日程・受検料・出題範囲は公式サイト(https://www.mcpc-jp.org/license/ )で必ず確認してください。合格を保証するものではありません。合格の目安は当サイトの推定です。技術・制度の記述は「最終確認日」時点のものです。