難問・アンチパターン定義問題

データエンジニアが「Azure Event Hubsはメッセージキューとして使えるため、Azure Service Busを使わずすべてのメッセージング要件をEvent Hubsに集約する」と提案しています。この提案の問題点はどれか?

A.Event HubsはAzure Service Busより常に低コストなので提案は正しい
✗ コストはシナリオによって異なり、Event Hubsが常に低コストとは言えない。
B.Event Hubsはストリーム用であり、メッセージ順序保証・デッドレタリング・Exactly-once配信などService Busのエンタープライズ機能をサポートしない← 正解
✓ 正解。Event Hubsは高スループットのイベントIngestionとストリーム処理に最適化されているが、エンタープライズメッセージングの機能(デッドレタリング・メッセージの順序保証・トランザクション・Exactly-once配信・TTL・セッションメッセージ)はService Bus Premiumが提供する。注文処理・銀行振込など「確実な1回のみの処理」が必要な場合はService Bus。IoTイベントの大量Ingestionはは Event Hubs。適材適所が重要。
C.Event HubsはAzure StorageとのみのintegrationでSQL Serverへの直接ルーティングができない
✗ Event Hubsは多くのAzureサービスと統合可能。SQL Server直接ルーティングが問題の本質ではない。
D.Event HubsはService Busより接続数が少なく大量の消費者を持てない
✗ Event HubsはService Busより多くのコンシューマーを並列で持てる(コンシューマーグループ機能)。

DP-900:Microsoft Azure Data Fundamentals の問題一覧