IoT / IIoTのキーテクノロジーVORTEX

Data Distribution Service (DDS)って何?

”The Proven Data Connectivity Standard for the Internet of Things”

 Data Distribution Service (DDS™)は、Object Management Group® (OMG®)が提供するデータ中心接続(データセントリック)のためのミドルウェアプロトコルとAPI規格です。DDSによってシステム上のコンポーネントを一つに統合し、低レイテンシーのデータ接続性、非常に厳しい信頼性、そしてビジネス・ミッションクリティカルなIoTアプリケーションが必要とする拡張性のあるアーキテクチャを提供されます。
分散システムでは、ミドルウェアはOSとアプリケーション間に存在するソフトウェアレイヤです。ミドルウェアによってシステム上の様々なコンポーネントがより簡単にし、データを共有することを可能となります。ソフトウェア開発者がアプリケーションとシステム間で情報を受け渡すメカニズムよりもそれらのアプリケーションの具体的な目的にフォーカスすることによって、分散システムの開発を単純化することができます。

DDS

 DDSミドルウェアはOS、ネットワーク転送、ローレベルのデータフォーマットの細かい内容からアプリケーションを切り離すソフトウェアレイヤです。同じコンセプトとAPIアプリケーションがOS、言語、CPUアーキテクチャ間で情報を交換できるように、様々なプログラミング言語で提供されます。データ伝送フォーマットや発見、接続、信頼性、プロトコル、QoS管理等の様なローレベルの細かい事象については、ミドルウェアが管理します。

DDS

データセントリック

 DDSはQoSでコントロールされるデータ共有を提供します。アプリケーションはTopic Nameで識別されるTopicをパブリッシュ(出版)/サブスクライブ(購読)することで通信します。サブスクリプション(購読)は時間とコンテンツフィルターを指定し、Topicにパブリッシュされるデータのサブセットを得るだけです。異なるDDSドメインはお互いに完全に独立しています。DDSドメインをまたいでのデータ共有はできません。
数多くの通信ミドルウェア規格や製品がありますが、DDSは独自のデータセントリックで、Iotに最適です。たいていのミドルウェアはアプリケーションとシステム間で情報を送信することで機能します。データセントリックは全てのメッセージがコンテキスト情報を含みアプリケーションが受信したデータを理解する必要があります。
データセントリックの肝は「DDSがどのようなデータを格納し、そのデータをどのように共有するかを操作しているということをDDS理解している」ということです。昔からあるメッセージ・セントリックのミドルウェアお使用しているプログラマは、メッセージを送るコードを書かなければなりません。データセントリックのミドルウェアを使用しているプログラマはいつ、どのようにデータを共有するかに特化したコードを書き、データの値を直接共有します。アプリケーションコードにあるありとあらゆる複雑性の管理に代わって、DDSが直接的に制御し、管理されたセキュアなデータ共有を実装します。

グローバルデータスペース

 DDSは「グローバルデータスペース」と呼ばれるローカルのデータ記憶装置を概念的に想像します。アプリケーションに対して、グローバルデータスペースはAPIを経由してアクセスされるネイティブなメモリのように見えます。ローカルストレージのように見えるところに書き込めます。実際には、DDSはリモートノードの適切ない記憶装置を更新するためのメッセージを送信し、ローカルの記憶装置のように見えるものを読めば良いのです。

DDS
DDSドメイン内で、データ共有ユニットがTopic内にあるデータオブジェクトです。Topicは名前で特定され、データオブジェクトは「Key」属性で特定されます。これはkey属性がデータベースにおけるレコードの特定のするために利用される方法と似ています。この図はその概念的なものです。DDSはピアツーピアで通信し、サーバーやクラウドによって仲介されるデータを要求しません。
 まるで、ローカル記憶装置はアプリケーションが全グローバルデータスペースへのアクセスできるような錯覚を与えます。これは単なる錯覚でしかなく、全てのデータがあるようなグローバルスペースはありません。それぞれのアプリケーションは必要なものを必要な分だけローカルに格納します。DDSは変化するデータを取り扱います、したがって、グローバルデータスペースとはただのローカル記憶装置の集まりという仮想的な概念です。システム上で動作している全てのアプリケーションは、たいていの言語において、最適のネイティブフォーマットでローカルメモリを見ます。グローバルデータスペースは、言語やシステムを考えずに、極めて低いレイテンシーで、トランスポートを介して、組み込み、モバイル、クラウドアプリケーション間でデータを共有します。

Quality of Service

 データは、信頼性やシステム正常性(liveliness)、セキュリティさえも含む、柔軟なQuality of Service (QoS)特性で共有もされます。実勢のシステムでは、全てのエンドポイントがローカル記憶装置で全てのアイテムが必要というわけではありません。
DDSは必要なデータだけを送信するのに非常に賢い仕組みです。メッセージがいつも意図した目的地に到達しなければ、ミドルウェアが必要とされるところに信頼性を実装します。システムが変更となった時は、ミドルウェアは動的にどのデータをどこに送るかを判断し、賢いやり方で変化に関するものを伝えます。合計データサイズが巨大な場合、DDSは賢いやり方でフィルターをかけ、各エンドポイントが本当に必要とするデータだけを送信します。アップデートが早い必要があるときは、DDSは一度にたくさんのリモートアプリケーションをアップデートするためにマルチキャストメッセージを送信します。データフォーマットは進化するので、DDSはシステムの様々なパーツで利用されるバージョンを管理し、自動的に変換します。セキュリティクリティカルなアプリケーションでは、DDSはアクセスを制御し、データフローパスを守らせ、オンザフライデータを暗号化します。
DDSが真の力を発揮するのは、非常に高速で、かつ動的な、厳しい、変わりやすい環境でこれら全てのことを同時に指定する時です。

Dynamic Discovery

 DDSはパブリッシャ/サブスクライバのDynamic Discoveryを提供します。Dynamic DiscoveryはDDSアプリケーションを拡張します。これは、自動的にDDSによって発見されるため、アプリケーションが通信のエンドポイントを理解したり、コンフィギュレーションする必要がないことを意味します。これは実行時に完成され、設計やコンパイルの時になされる必要はなく、DDSアプリケーションで真の「プラグアンドプレイ」が可能となります。
このDynamic Discoveryはエンドポイントの理解だけでは終わりません。エンドポイントがデータをパブリッシュするのか、サブスクライブするのか、それとも両方なのかをDDSは理解します。パブリッシュされた、またはサブスクライブされたタイプのデータがわかります。また、パブリッシャーの要求する通信特性やサブスクライバが要求される通信特性も理解します。これらの全ての特性はDynamic DiscoveryとDDSパーティシパントの組み合わせで考慮されます。
DDSパーティシパントは同じ装置上にあったり、ネットワーク越しにあったりします。また、アプリケーションは通信において同じDDS APIを使用します。IPアドレスを知らせたり、構築する必要もなく、また装置構成の違いを考慮する必要もないため、様々なOSやハードウェアプラトフォーム上で追加の通信パーティシパントを追加することが簡単で、取るに足らない作業にすることができます。

拡張性のあるアーキテクチャ

DDS
DDSシステムはEdgeからFog、Cloudへと広げることができます。Edgeでは高速リアルタイムのMachine to Machine通信のために利用されることができます。その中間システムにおいて、ロバスト性があり、信頼性に関するQoSとコンテンツを意識した情報フローを提供することができます。これらのシステムを統合することで、DDSはクラウドでの完全な情報のアクセスや配布に関する拡張性を提供します。
 OMG DDSアーキテクチャは小さなデバイスからクラウドまで、さらに大変巨大なシステムに対してなど、拡張性を持って設計されています。DDSは何千、何百万というパーティシパントを調整し、超高速でデータを配り、何千ものデータオブジェクトを管理し、突出した可用性と機密性を提供することによって、Internet of Thingsを実現します。単一の標準通信レイヤでの数多くの複雑性を緩和することによって、DDSが分散システム開発を容易にします。

注:
DDS Domain Participantはドメインにあるアプリケーションのローカルにある参加者です。ドメインは、お互いと通信できる全てのアプリケーションをつなぐ分散処理の概念です。それは「通信の入れ物」のようなイメージです。つまり、同じドメインに存在するパブリッシャ/サブスクライバだけがやりとりできます。更に、ドメインはDDSのパブリッシャ/サブスクライバ/トピック/マルチトピック/コンテンツフィルタトピックの製造所として動作します。


お問い合せ窓口

株式会社ソフトサービス
本社(福岡)
092-477-5566
関東営業所
03-5809-1428
関西営業所
06-6881-2709
お問い合わせはこちら

PRISMTECH社