Microsoftは2026年5月、Azure SQL Managed Instance(SQL MI)のデータ変更をAzure Event HubsまたはFabric Evenstreamへニアリアルタイムで配信する「Change Event Streaming」機能をパブリックプレビューとして公開した。INSERT・UPDATE・DELETEの行レベル変更を、CDCやカスタムポーリングなしにSQLレイヤーだけで管理できる新しいアーキテクチャだ。

Change Event Streamingとは

従来、RDBMSの変更データをリアルタイムに別システムへ連携するには、Change Data Capture(CDC)の設定やカスタムポーリングスクリプトの実装が必要だった。CDCは強力だが設定が複雑で、ポーリングはレイテンシとリソースのトレードオフが常に課題となる。

Change Event Streamingはこの課題を解決する。SQLのトランザクションログと連携し、行レベルの変更イベントをCloudEvents形式のJSONとしてAzure Event Hubsに配信する。リトライや配信ログの協調管理はSQL側が担うため、アプリケーション側の実装を大幅に簡略化できる。

技術的なポイント

  • CloudEvents準拠: 業界標準のイベントフォーマット(CNCF CloudEvents)でデータを配信。Kafka互換のEvent Hubs Consumer APIやFabric Evenstreamのコンシューマーからそのまま消費できる
  • SQLレイヤーで完結: CDCのような外部エージェントやポーリングサービスが不要。設定はSQL MI側で一度行うだけ
  • Fabric Eventstream対応: Microsoft Fabric(次世代データ統合プラットフォーム)のEvenstreamにも直接配信可能。リアルタイム分析パイプラインの構築が容易になる
  • ニアリアルタイム: ミリ秒オーダーではないが、従来のポーリング方式と比較して大幅な低レイテンシ化が期待できる

アーキテクチャの変化

従来のCDCベース構成と今回の変化を比較すると、中間レイヤーの排除による恩恵がよくわかる。

従来(CDCベース):


出典: この記事は Stream data in near real time from SQL MI to Azure Event Hubs – Public Preview の内容をもとに、筆者の見解を加えて独自に執筆したものです。