Microsoft、複雑なインフラ環境におけるリアルタイムイベント処理を最適化する「Drasi」をオープンソースで公開:イベント駆動型システムの構築で開発者が抱える3つの課題、どう解決?
Microsoftは「Drasi」をオープンソースで公開した。Drasiは、複雑なインフラ環境におけるリアルタイムイベント処理を最適化するデータ処理プラットフォームだ。
Microsoftは2024年10月3日(米国時間)、複雑なインフラ環境におけるリアルタイムイベント処理を最適化するデータ処理プラットフォーム「Drasi」をOSS(オープンソースソフトウェア)として公開した。DrasiはGitHubで公開されており、ライセンスはApache License 2.0となっている。
Microsoftは、Drasiについて「複雑なインフラストラクチャ内のクリティカルなイベントの検出と、ビジネス目標に合わせたアクションの実行を簡素化するデータ処理プラットフォームだ。開発者やソフトウェアアーキテクトは、IoTの統合、セキュリティプロトコルの強化、複雑なアプリケーションの管理など、イベント駆動型システムのユースケースに活用できる」と述べている。
イベント駆動型システムの構築で開発者が抱える3つの課題
イベント駆動型システムは、リアルタイム処理やサービスの効率的な分離を可能にする強力な存在となる一方、Microsoftは大きく分けて3つの課題があると指摘する。
1つ目は、ビジネスニーズに合わせてシステムを拡張させると、イベントの頻度と複雑さが増し、コンポーネント間で関連する変更の検出が困難になること。2つ目は、データが複数の形式で複数の場所に分散して保存されており、さらなる複雑さにつながること。3つ目は、ネットワーク遅延、輻輳(ふくそう)、イベント処理の遅延が原因で、処理が滞る可能性があることだ。
Microsoftは「開発者はイベント処理を構築する際、複数のツールやライブラリを組み合わせる必要がある。その結果、複雑で、保守や拡張が困難なアーキテクチャになりがちだ。非効率的なポーリングメカニズムに依存していたり、データソースへの絶え間ないクエリを要求したりする必要があり、パフォーマンスのボトルネックやリソース消費の増加につながっている。多くの変更検出ツールは、バッチ処理、データ照合、リアルタイムではないイベント分析をしており、真のリアルタイム性を欠いている。即時対応が必要なビジネスでは、このようなわずかな遅れでさえ、機会損失やリスクにつながりかねない」と述べている。
Drasiの特徴
Drasiは、従来のデータ処理手法による負担なしに、変化し続けるシステムにおけるリアルタイムイベント処理を簡素化するという。「データレイクにデータをコピーしたり、データソースにクエリを実行したりせずに、ログや変更フィードのイベントを監視することで、システムの変更を追跡している軽量なアプローチを採用している」と、Microsoftは述べている。
Drasiによるイベント処理の流れ
アプリケーション開発者は、データベースクエリを使用して、追跡する変更(論理条件)を定義する。Drasiはこの定義に基づいて変更を評価する。条件に合致した変更を検出した場合、リアクションを実行する。Microsoftによると、この一連のプロセスは、「ソース」「継続的クエリ」「リアクション」という3つのDrasiコンポーネントに基づいているという。
- Sources:システム内のさまざまなデータソースに接続し、重要な変更を継続的に監視する。Sourcesはアプリケーションログ、データベース更新、システムメトリクスを追跡し、リアルタイムで関連情報を収集する
- Continuous Queries:Drasiはその都度データを手動で確認する代わりにContinuous Queries(継続的クエリ)を使用する。継続的クエリはCypher Query Language(CQL)で記述され、事前にデータを集約、照合せずに、複数のソースからデータを統合できる
- Reactions:継続的クエリを完了すると、Drasiは登録されたリアクションを実行する。これにはアラートの送信、他システムの更新、修正ステップの実行などが含まれる
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Netflix、ワークフローオーケストレーター「Maestro」をオープンソース化 1日に約200万のジョブを完了
Netflixはデータ/MLワークフロー管理ツール「Maestro」をオープンソース化した。データパイプラインやMLモデルのトレーニングパイププラインなど複雑なワークフローを効率的に管理できるという。 - エディタやブラウザなどでも「GitHub Copilot」の各機能が利用可能に 「OpenAI o1」「Copilot Chat」も使える今、GitHubはどう便利になる?
GitHubは、GitHub CopilotのIndividualプランとBusinessプランに、github.comのGitHub Copilot Chatを含むCopilot機能のプレビューアクセスを追加したと発表した。これにより、GitHub Copilotをエディタ、ブラウザ、モバイルなど幅広い環境で利用できるようになる。 - Google、コンテナにイベントを送信する機能「Eventarc」を一般公開
Googleは、フルマネージドのコンテナ化アプリケーション実行環境「Cloud Run」にイベントを送信できる新機能「Eventarc」の一般提供を開始した。分散されたマイクロサービス間でのイベントベースの通信に役立つ。