NECが公開するオープンソース

OSS貢献活動

Scorpio NGSI-LD Context Broker

Scorpio NGSI-LD Context Broker は、ETSI NGSI-LD 仕様に準拠した Context Broker の実装です。NEC Laboratories Europe GmbH が、NEC Corporation India Pvt. Ltd. と共同で開発しているオープンソースで、スマートソリューション基盤の中核ソフトウェアです。

ETSI NGSI-LD とは

スマートソリューションは、実世界の様々なソースから様々な情報を収集して、何が、いつ、どこで、なぜ起きているかを把握します。new windowETSI NGSI-LD (以下「NGSI-LD」と記載) では、実世界のモノ・コトの状態をコンテキスト情報として管理します。

NGSI-LD は、コンテキスト情報を管理するオープン標準 NGSI (Next Generation Service Interfaces) の進化版で、リンクトデータ技術を取り入れることでセマンティックなデータ表現(語彙、データ間の関係等の表現)や管理を可能にした仕様です。仕様策定は new windowETSI (欧州電気通信標準化機構) の ISG (Industry specification group) CIM (Cross cutting context information management) で進められています。

NGSI-LD の仕様では、コンテキスト情報をパブリッシュ、クエリ、サブスクライブおよびディスカバリーするための情報モデルと API、および、それらの HTTP/HTTPS バインディングと JSON-LD シリアライゼーションの仕様が定義されています。

コンテキスト情報は、情報モデルで表現され、エンティティ (建物など) とそのプロパティ (住所や地理的位置など) およびリレーションシップ (所有者など) で構成されます。

NGSI-LD API の主な機能は次のとおりです:

・コンテキスト情報を作成、更新、追加、および削除できます。
・コンテキスト情報のクエリができます。クエリにはフィルタリング、地理的スコープ、ページングなどの条件設定ができます。
・コンテキスト情報の変更をサブスクライブし、変更時に非同期のノーティフィケーションを受信できます。
・コンテキスト情報のソースをレジストレーションおよびディスカバリーできます。分散展開およびフェデレーション展開の構築を可能にします。
・RAS 機能が強化されています。

NGSI-LD は、new windowFIWARE プロジェクトで採用され、Context Broker と呼ばれる、各コンポーネント間でのコンテキスト情報の受け渡しを仲介する NGSI-LD サーバーの3種の実装や周辺コンポーネントの NGSI-LD 対応の開発が進められています。

NEC は、2017年に、他社と共同で ETSI にコンテキスト情報管理 (ISG CIM) に関するグループを立ち上げ、グループの議長および検討メンバーとして NGSI-LD の仕様策定を主導しています。

Scorpio NGSI-LD Context Broker とは

Scorpio NGSI-LD Context Broker (以下「Scorpio Context Broker」と記載) は、ETSI NGSI-LD のコンテキスト情報管理標準に準拠した Context Broker のリファレンス実装です。NEC Laboratories Europe GmbH が、NEC Corporation India Pvt. Ltd. と共同で開発している、new windowBSD 3-Clause license のオープンソースです。また、Scorpio Context Broker は、FIWARE の Core Context Management の技術チャプターに位置付けられた、FIWARE Full member GE です。

FIWARE / IoT プラットフォームのコアコンポーネントであり、様々なアプリケーション使用の観点から、動的コンテキストによって駆動される IoT データを、収集、処理、通知、および保存/取り込みを行います。

NGSI-LD API 仕様に準拠したさまざまなコンテキスト情報の操作ができる REST API エンドポイントの実装を提供します。Scorpio Context Broker を使用すると、リンクトデータの概念を使用して、動的なコンテキストで IoT データを収集、処理、通知、および保存できます。マイクロサービスベースのアーキテクチャを採用した実装のため、スケーラビリティ、クロステクノロジの統合など、既存の Context Broker 実装に勝る独自の利点があります。

Scorpio Context Broker の主な利点は、次の通りです:

・パフォーマンスを大幅に向上させるマイクロサービスアーキテクチャを採用しています。

・アーキテクチャは、スケーラブルで可用性が高く、負荷分散されるように設計および実装されています。

・Apache Kafka の使用により、ダウンタイムのないスケーリング機能を備えた堅牢な Pub/Sub サービスが可能になります。

・フェイルオーバーの回復力を提供します。

・ロードバランシングを提供して、分散インフラストラクチャの負荷を分散します。

・低カップリングと高凝集性を提供するのに十分なモジュール設計がされています。

・アプリケーションロジックを何度も変更することなく、さまざまなストレージ統合を提供します。

Scorpio Context Broker は、次の機能をサポートします:

・コンテキストプロデューサーは、コンテキスト情報の作成、更新、追加、削除など、コンテキストを管理する機能を提供します。

・コンテキストコンシューマーは、必要なコンテキスト情報を要求します。エンティティを識別するか、エンティティタイプを提供して関連するエンティティを検出し、場合によってはプロパティ値、既存のリレーションシップ、GeoJSON 機能として提供される地理的範囲に従ってフィルタリングします。

・同期クエリのレスポンスと非同期サブスクライブ/ノーティフィケーションの2つの対話スタイルをサポートしています。ノーティフィケーションはプロパティやリレーションシップの変更、または一定の時間間隔に基づくことができます。

・指定された時間間隔内に測定されたプロパティ値などの履歴情報を提供するための NGSI-LD のオプション機能の時間インターフェイス (Temporal interface) を実装しています。

・集中型、分散型、および統合型を含む複数のデプロイメント展開構成をサポートし、様々な利用シナリオに対応できる拡張性があります。

・フェデレーションを使用して、情報を (部分的に) 共有したい複数のプロバイダーからの情報を組み合わせることができます。

関連情報