イントロダクション¶
このドキュメントはすべての NGSI プロセッサとリソースで Draco をインストールし 管理する方法を詳しく述べています。
Dracoは、サードパーティのストレージに Orion コンテキスト・データを保存すること を担当する一連のプロセッサで構成されており、そのようなデータの履歴ビューを作成 することができます。言い換えれば、Orion はエンティティの属性に関する最後の値 のみを保存し、古い値が必要な場合は、Draco を使用して値ごとに別のストレージに 保存する必要があります。
Draco は Orion のサブスクリプション/通知機能を使用しています。Draco-ngsi に代わって Orion でサブスクリプションが作成され、これらのエンティティ属性の いずれかで更新が発生したときに通知を受けるエンティティを詳しく記述します。
用語¶
Draco について説明するために、読者が精通しているべきいくつかの重要な用語が あります。内部的には、Draco は Apache NIFI に基づいているので、このドキュメントでは、NiFi と Draco という名前を 同義語として使用します。
それでは、ここでこれらの NiFi 固有の用語についてハイ・レベルで説明します。
フローファイル : 各 "ユーザ・データ" (つまり、ユーザが処理および 配布のために NiFi に取り込むデータ) は、フローファイル (フローファイル) と呼ばれます。フローファイルは、属性 (Attributes) とコンテンツ (Content) の2つの部分で構成されています。コンテンツはユーザデータそのものです。 属性は、ユーザデータに関連付けられているキーと値のペアです。
プロセッサ : プロセッサ (Processor) は、フローファイルの作成、 送信、受信、変換、ルーティング、分割、マージ、および処理を担当する NiFi コンポーネントです。NiFi ユーザがデータフローを構築するために 利用できる最も重要な構成要素です。
リレーションシップ : 各プロセッサは、それに対して定義された 0個以上のリレーションシップを持ちます。これらのリレーションシップは、 フローファイルの処理結果を示すために名前が付けられています。 プロセッサがフローファイルの処理を終了すると、フローファイルを いずれかの関係にルーティング または "トランスファー"します。 その後、DFM は、各潜在的な処理結果の下で、フローファイルが次に 進むべき場所を指定するために、これらの各関係を他のコンポーネントに 接続することができます。
コネクション : DFM は、NiFi ツール・バーのコンポーネント部分から キャンバスにコンポーネントをドラッグし、そしてコネクションを介して コンポーネントを一緒に接続することによって自動化されたデータフローを 作成します。各コネクションは1つ以上のリレーションシップから成ります。 描画されたコネクションごとに、DFM はコネクションに使用する リレーションシップを決定できます。これにより、データは処理結果に 基づいてさまざまな方法でルーティングされます。各コネクションは フローファイル・キューを収容します。フローファイルが特定 のリレーションシップに転送されると、関連付けられたコネクションに 属するキューに追加されます。
コントローラ・サービス : コントローラ・サービスは、ユーザ・ インターフェイスの DFM によって追加および設定された後、NiFi の起動時に起動し、他のコンポーネント (プロセッサや他のコントローラ・ サービスなど) で使用するための情報を提供する拡張ポイントです。 いくつかのコンポーネントによって使用される一般的なコントローラ・ サービスは StandardSSLContextService です。キーストアやトラストストアの プロパティを一度設定し、その設定をアプリケーション全体で再利用する 機能を提供します。アイデアは、それを必要とするかもしれないすべての プロセッサでこの情報を設定するよりもむしろ、コントローラ・サービスは 必要に応じて使用するためにどんなプロセッサにでもそれを提供すると いうことです。
Draco は、コンテキスト・データを複数のシンクに保存するための特定の プロセッサとテンプレートのセットを実行するように設計されています。
実際には、Draco は knife のエンジンを使用し、新しいプロセッサと テンプレートを追加しています。基本的には、ソース・プロセッサが データの受信とフローファイルへの変換を担当します。その後、 それらは他のプロセッサに転送され、フローファイルが NGSI イベントに 変換され、最終的にデータがサードパーティ製のストレージに永続化されます。
Draco の現在の安定版は Orion コンテキスト・データを以下の場所に 保存することができます。
- MySQL, よく知られている リレーショナル・データベース・マネージャ
- MongoDB, NoSQL ドキュメント指向 データベース
- PostgreSQL, よく知られて リレーショナル・データベース・マネージャ
対象とする読者¶
このドキュメントは主に、すでに Orion Context Broker インスタンスを使用しており、Orion によって管理されている コンテキスト・データから履歴ビューを作成したいと思っている FIWARE ユーザを対象としています。その場合、Draco をインストールして 管理する方法を学ぶために、このドキュメントが必要になります。
あなたの目的が Draco または NiFi 用の新しいプロセッサを作成すること、 または何らかの方法でそれを拡張することであるならば、 ユーザ&プログラマ・ガイドを参照してください。
ドキュメントの構造¶
このイントロダクションとは別に、このインストール&管理ガイドは 主に Draco のインストール、設定、実行そしてテストに関するセクションを 含みます。FIWARE ユーザはまた、マルチ・テナンシーまたはパフォーマンスの ヒントに関する有用な情報を見つけるでしょう。さらに、健全性チェック手順 (インストールが成功したかどうかを知るのに役立ちます)) および診断手順 (問題が発生したときに役立つことを目的とした一連のヒント)も提供されています。
このドキュメントでカバーされていないトピックについては、 APACHE NiFI の公式ドキュメントが NiFi が提供するすべてのサービスの詳細な説明を 提供していることに注意することは非常に重要です。