SlideShare a Scribd company logo
1 of 15
FIWAREシステム内の短期履歴の管理
(Managing Short Term History within FIWARE Systems)
Jason Fox, Senior Technical Evangelist
FIWARE Foundation
Translated to Japanese by Kazuhito Suda, FIWARE Evangelist
学習目標
▪ 短期履歴 (Short Term History) とは何ですか? スマート・アプリ
ケーション内の短期履歴はどのように関連していますか?
▪ 短期履歴を処理するために利用できる FIWARE コンポーネント
はどれですか?
▪ トレンド・グラフを作成するにはどうすればよいですか?
▪ どのようなオプションがありますか?
▪ NGSI-LD temporal インターフェースをどのように使用できます
か?
1
前提条件
▪ Docker
▪ Docker Compose
▪ Git
▪ Postman
▪ Cygwin for Windows
▪ MongoDB Compass
2
git clone https://github.com/FIWARE/tutorials.Step-
by-Step.git
cd tutorials.Step-by-Step/
git submodule update --init --recursive
▪ https://www.docker.com/
▪ https://docs.docker.com/compose/install/
▪ https://git-scm.com/downloads
▪ https://www.getpostman.com/downloads/
▪ https://www.cygwin.com/install.html
▪ https://www.mongodb.com/download-
center/compass
FIWARE Catalogue
33
Data/APIManagement
PublicationMonetization
Core Context Management
(Context Broker)
Context
Processing, Analysis, Visualization
Interface to
IoT, Robotics and third party systems
Deploymenttools
3
Development of
Context-aware applications
(Orion, Orion-LD, Scorpio,
STH-Comet, Cygnus,
QuantumLeap, Draco)
Connection to the
Internet of Things
(IDAS, OpenMTC)
Real-time
processing of
context events
(Perseo)
Handling authorization
and access control to
APIs
(Keyrock, Wilma,
AuthZForce, APInf )
Publication and
Monetization of Context
Information
(CKAN extensions, Data/API
Biz Framework, IDRA)
Creation of
Application Dashboards
(Wirecloud)
Real-time
Processing of media
streams
(Kurento)
Business Intelligence
(Knowage)
Connection to robots
(FIROS, Fast RTPS,Micro XRCE-DDS)
Big Data
Context Analysis
(Cosmos)
Cloud Edge
(FogFlow)
Documents exchange
(Domibus)
STH-Comet
▪ 迅速なプロトタイピングのためのシンプルな
セットアップです
▪ 簡単にスケールできないません
▪ STH-Comet は古い NGSI v1 サブスクリ
プション・エンドポイントをリッスンします
"attrsFormat": "legacy"
▪ すべてのタイムスタンプは、
notifiedAt 属性に基づいています
▪ STH-Comet は、 MongoDB へのデータベ
ースの読み取りと書き込みの両方を担当
4
STH-Comet が Context Broker にサブスクライブする方法
5
フィルタリング
● id または idPattern
● type または typePattern
Conditions ブロックを使用して
クエリをさらに絞り込む :
○ q
○ attrs
通知 (Notification)
● http.url は、STH-Comet への通
知先
● luminosity をパスするだけ
● NGSI v1形式で渡されるデータには、
attrsFormat: legacy が必要
頻繁に変化する値に throttling を使用
curl -L -X POST 'http://localhost:1026/v2/subscriptions/' 
-H 'Content-Type: application/json' 
-H 'fiware-service: openiot' 
-H 'fiware-servicepath: /' 
--data-raw '{
"description": "Notify STH-Comet to sample Lamp",
"subject": {
"entities": [
{"idPattern": "Lamp.*"}
],
"condition": {
"attrs": ["luminosity"]
}
},
"notification": {
"http": {
"url": "http://sth-comet:8666/notify"
},
"attrs": ["luminosity"],
"attrsFormat": "legacy"
},
"throttling": 5
}'
Cygnus 経由の STH-Comet
6
▪ 本番システムのためのより複雑なソリューション
▪ スケーリングが向上します
▪ Cygnus は NGSI v2 サブスクリプションエン
ド・ポイントをリッスンします
▪ Cygnus は MongoDB へのデータベース書き
込みを担当します
▪ STH-Comet は MongoDB へのデータベース
読み取りを担当します
▪ すべてのタイムスタンプは、
notifiedAt 属性に基づきます
Cygnus が Context Broker にサブスクライブする方法
7
通知 (Notification)
● http.url は Cygnus への通知先
で、Cygnus 標準のポート 5051
● データは NGSI v2 形式で渡されま
す
● ジオフェンスなし、メタデータなし
luminosity のみがわたされます
curl -L -X POST 'http://localhost:1026/v2/subscriptions/' 
-H 'Content-Type: application/json' 
-H 'fiware-service: openiot' 
-H 'fiware-servicepath: /' 
--data-raw '{
"description": "Notify Cygnus to sample Lamp",
"subject": {
"entities": [
{ "idPattern": "Lamp.*" }
],
"condition": {
"attrs": ["luminosity"]
}
},
"notification": {
"http": {
"url": "http://cygnus:5051/notify"
},
"attrs": ["luminosity"]
},
"throttling": 5
}'
QuantumLeap
▪ QuantumLeap は NGSI v2 サブ
スクリプション・エンドポイントをリッスン
します
▪ QuantumLeap は特定の時系列
(time-series) データベースへの読
み取りと書き込みの両方を担当します
▪ タイムスタンプはメタデータ属性に基づ
いています 例 dateModified
▪ QuantumLeap API を使用するか、
代わりに API を使用して Crate-DB
に直接クエリを作成できます
▪ Grafana などの外部ツールとうまく統
合できます
8
QuantumLeap が Context Brokerにサブスクライブする方法
9
通知 (Notification)
● http.url は、QuantumLeap へ
の通知先
● データは、NGSI v2 形式で渡され
ます
● サブスクリプションは luminosity
と location の両方を渡します –
GeoFencing クエリを作成できます
● メタデータも必要です –
notificationsAt ではなく
dateModified を使用します
curl -L -X POST 'http://localhost:1026/v2/subscriptions/' 
-H 'Content-Type: application/json' 
-H 'fiware-service: openiot' 
-H 'fiware-servicepath: /' 
--data-raw '{
"description": "Notify QuantumLeap to sample Lamp",
"subject": {
"entities": [{"idPattern": "Lamp.*"}],
"condition": {
"attrs": ["luminosity", "location"]
}
},
"notification": {
"http": {
"url": "http://quantumleap:8668/v2/notify"
},
"attrs": ["luminosity", "location"],
"metadata": ["dateCreated","dateModified"]
},
"throttling": 5
}'
時系列データ (Time-series Data) の取得
▪ STH Comet API
• Swagger 仕様
https://raw.githubusercontent.com/FIWARE/specifications/master/OpenAPI
/context.STH.Comet/STH.Comet-openapi.json
▪ QuantumLeap API
• Swagger 仕様
https://raw.githubusercontent.com/FIWARE/specifications/master/OpenAPI
/quantumLeap/quantumleap.yml
▪ Crate-DB HTTP エンドポイント:
• https://crate.io/docs/crate/reference/en/latest/interfaces/http.html
▪ ダイレクト SQL ステートメント
• SQL 文法
https://crate.io/docs/crate/reference/en/latest/sql/index.html
10
時系列データ (Time-series Data) の表示
● 自作 (Build-your-own)
○ コンポーネントへの HTTP クエリ作成を使用
○ 既存のグラフ作成ライブラリを使用
■ Chart.js, Highcharts framework, eCharts など.
○ スクリプトを使用して JSON ペイロードを正しい形式に変換
● Grafana
○ SQL クエリを使用して時系列データベースにアクセス
○ 表示を修正するための設定可能なツール
● Wirecloud Widgets
○ QuantumLeap source ウィジェットを使用
○ オペレータまたは画面表示のウィジェットへのワイヤーリング
11
“XとYの間のエンティティのすべての値を取得”
NGSI-LD Temporal インタフェース
NGSI-LD 仕様: https://www.etsi.org/deliver/etsi_gs/CIM/001_099/009/01.02.01_60/gs_cim009v010201p.pdf
12
curl -G -X GET 
'http://localhost:1026/ngsi-ld/temporal/entities/
urn:ngsi-ld:Vehicle:B9211’ 
-H 'Link: <http://fiware.org/ngsi-ld/my-
context.jsonld>; rel="http://www.w3.org/ns/json-
ld#context"; type="application/ld+json"' 
-H 'Accept: application/ld+json' 
-d 'attrs=speed,brandName' 
-d 'timerel=between' 
-d 'time=2018-08-01:12:00:00Z' 
-d 'endTime=2018-08-01:13:00:00Z’
{
"id": "urn:ngsi-ld:Vehicle:B9211",
"type": "Vehicle",
"brandName": [
{
"type": "Property",
"value": "Volvo"
}
],
"speed": [
{
"type": "Property",
"value": 120,
"observedAt": "2018-08-01T12:03:00Z"
},
{
"type": "Property",
"value": 80,
"observedAt": "2018-08-01T12:05:00Z"
}
],
"@context": "http://fiware.org/ngsi-ld/my-context.jsonld"
}
▪ オプションの NGSI-LD インターフェイス
▪ デフォルトは observedAt を使用
▪ 範囲のみ、まだ集約はできない…
▪ Key-Value 形式でも利用可能
サマリ : 短期履歴 (Short-Term History)
▪ 短期履歴 (Short Term History) により、ユーザは一定期間に発生する傾向を発見
できます:
• Maxima, Minima, Sums Averages etc.
▪ FIWAREカタログには、短期履歴を処理する2つのコンポーネントが
含まれています
• STH-Comet
• QuantumLeap
▪ 各コンポーネントは時系列データのバケットをデータベースに配置し、
APIを介して取得を提供します
▪ 任意のグラフ作成ツールを使用して結果を表示します
▪ NGSI-LD temporal interface を使用して、observedAt プロパティまたは
その他の DateTime プロパティに基づいて範囲データを返すことができます
13
Thank you!
http://fiware.org
Follow @FIWARE on Twitter
14

More Related Content

What's hot

FIWARE Overview and description of GEs
FIWARE Overview and description of GEsFIWARE Overview and description of GEs
FIWARE Overview and description of GEsfisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)fisuda
 
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツールこんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツールdcubeio
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)fisuda
 
FIWARE アーキテクチャの保護 - FIWARE WednesdayWebinars
FIWARE アーキテクチャの保護 - FIWARE WednesdayWebinarsFIWARE アーキテクチャの保護 - FIWARE WednesdayWebinars
FIWARE アーキテクチャの保護 - FIWARE WednesdayWebinarsfisuda
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門Hiroyuki Wada
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)fisuda
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
RDF/OWLの概要及びOSS実装、及び活用イメージについて
RDF/OWLの概要及びOSS実装、及び活用イメージについてRDF/OWLの概要及びOSS実装、及び活用イメージについて
RDF/OWLの概要及びOSS実装、及び活用イメージについてMasayuki Isobe
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)fisuda
 
起業家的?!エンジニアのススメ | Developer Summit 2020
起業家的?!エンジニアのススメ | Developer Summit 2020起業家的?!エンジニアのススメ | Developer Summit 2020
起業家的?!エンジニアのススメ | Developer Summit 2020SORACOM,INC
 
CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話
CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話
CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話Katsuya Yamaguchi
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!Tetsutaro Watanabe
 
ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)NTT DATA Technology & Innovation
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Kohei Tokunaga
 
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)NTT DATA Technology & Innovation
 

What's hot (20)

FIWARE Overview and description of GEs
FIWARE Overview and description of GEsFIWARE Overview and description of GEs
FIWARE Overview and description of GEs
 
Linked Data (再)入門
Linked Data (再)入門Linked Data (再)入門
Linked Data (再)入門
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.6.0対応)
 
RDF Semantic Graph「RDF 超入門」
RDF Semantic Graph「RDF 超入門」RDF Semantic Graph「RDF 超入門」
RDF Semantic Graph「RDF 超入門」
 
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツールこんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.3.0対応)
 
FIWARE アーキテクチャの保護 - FIWARE WednesdayWebinars
FIWARE アーキテクチャの保護 - FIWARE WednesdayWebinarsFIWARE アーキテクチャの保護 - FIWARE WednesdayWebinars
FIWARE アーキテクチャの保護 - FIWARE WednesdayWebinars
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 1.13.0対応)
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
IDガバナンス&管理の基礎
IDガバナンス&管理の基礎IDガバナンス&管理の基礎
IDガバナンス&管理の基礎
 
RDF/OWLの概要及びOSS実装、及び活用イメージについて
RDF/OWLの概要及びOSS実装、及び活用イメージについてRDF/OWLの概要及びOSS実装、及び活用イメージについて
RDF/OWLの概要及びOSS実装、及び活用イメージについて
 
GraphQL入門 (AWS AppSync)
GraphQL入門 (AWS AppSync)GraphQL入門 (AWS AppSync)
GraphQL入門 (AWS AppSync)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
 
起業家的?!エンジニアのススメ | Developer Summit 2020
起業家的?!エンジニアのススメ | Developer Summit 2020起業家的?!エンジニアのススメ | Developer Summit 2020
起業家的?!エンジニアのススメ | Developer Summit 2020
 
CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話
CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話
CSI Driverを開発し自社プライベートクラウドにより適した安全なKubernetes Secrets管理を実現した話
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
 
ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
ストリーム処理におけるApache Avroの活用について(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
 

Similar to FIWAREシステム内の短期履歴の管理

CloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/SwiftCloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/Swiftirix_jp
 
Cloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしようCloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしようKazuto Kusama
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介AdvancedTechNight
 
Lagopus Router v19.07.1
Lagopus Router v19.07.1Lagopus Router v19.07.1
Lagopus Router v19.07.1Tomoya Hibi
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShiftEtsuji Nakai
 
クラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれクラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれMasataka MIZUNO
 
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようNTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようMidori Oge
 
Observability, Service Mesh and Microservices
Observability, Service Mesh and MicroservicesObservability, Service Mesh and Microservices
Observability, Service Mesh and MicroservicesTaiki
 
OpenStack Object Storage; Usage
OpenStack Object Storage; UsageOpenStack Object Storage; Usage
OpenStack Object Storage; Usageirix_jp
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッションYuichi Hasegawa
 
Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429Etsuji Nakai
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireAkio Katayama
 
OSC2011Tokyo/Fall OpenStack Swift入門
OSC2011Tokyo/Fall OpenStack Swift入門OSC2011Tokyo/Fall OpenStack Swift入門
OSC2011Tokyo/Fall OpenStack Swift入門irix_jp
 
「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisited「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisitedUptime Technologies LLC (JP)
 
140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler140917運用管理勉強会job scheduler
140917運用管理勉強会job schedulerOSSラボ株式会社
 
Tremaで試すFirewall
Tremaで試すFirewallTremaで試すFirewall
Tremaで試すFirewallM Hagiwara
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...NTT DATA Technology & Innovation
 

Similar to FIWAREシステム内の短期履歴の管理 (20)

CloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/SwiftCloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/Swift
 
Cloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしようCloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしよう
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
 
Lagopus Router v19.07.1
Lagopus Router v19.07.1Lagopus Router v19.07.1
Lagopus Router v19.07.1
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift
 
HTML5&API総まくり
HTML5&API総まくりHTML5&API総まくり
HTML5&API総まくり
 
クラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれクラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれ
 
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようNTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
 
AWS Lambda Updates
AWS Lambda UpdatesAWS Lambda Updates
AWS Lambda Updates
 
Observability, Service Mesh and Microservices
Observability, Service Mesh and MicroservicesObservability, Service Mesh and Microservices
Observability, Service Mesh and Microservices
 
OpenStack Object Storage; Usage
OpenStack Object Storage; UsageOpenStack Object Storage; Usage
OpenStack Object Storage; Usage
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッション
 
Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 Whire
 
OSC2011Tokyo/Fall OpenStack Swift入門
OSC2011Tokyo/Fall OpenStack Swift入門OSC2011Tokyo/Fall OpenStack Swift入門
OSC2011Tokyo/Fall OpenStack Swift入門
 
「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisited「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisited
 
140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler
 
Tremaで試すFirewall
Tremaで試すFirewallTremaで試すFirewall
Tremaで試すFirewall
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
 
Apache geode at-s1p
Apache geode at-s1pApache geode at-s1p
Apache geode at-s1p
 

More from fisuda

FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)fisuda
 
FIWARE - スマートサービスを支えるオープンソース
FIWARE - スマートサービスを支えるオープンソースFIWARE - スマートサービスを支えるオープンソース
FIWARE - スマートサービスを支えるオープンソースfisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)fisuda
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)fisuda
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)fisuda
 

More from fisuda (20)

FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.12.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.11.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.10.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.8.0対応)
 
FIWARE - スマートサービスを支えるオープンソース
FIWARE - スマートサービスを支えるオープンソースFIWARE - スマートサービスを支えるオープンソース
FIWARE - スマートサービスを支えるオープンソース
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.7.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.6.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.5.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.4.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.3.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.3.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.2.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.2.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.1.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.1.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.0.0対応)
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 3.0.0対応)
 

FIWAREシステム内の短期履歴の管理

  • 1. FIWAREシステム内の短期履歴の管理 (Managing Short Term History within FIWARE Systems) Jason Fox, Senior Technical Evangelist FIWARE Foundation Translated to Japanese by Kazuhito Suda, FIWARE Evangelist
  • 2. 学習目標 ▪ 短期履歴 (Short Term History) とは何ですか? スマート・アプリ ケーション内の短期履歴はどのように関連していますか? ▪ 短期履歴を処理するために利用できる FIWARE コンポーネント はどれですか? ▪ トレンド・グラフを作成するにはどうすればよいですか? ▪ どのようなオプションがありますか? ▪ NGSI-LD temporal インターフェースをどのように使用できます か? 1
  • 3. 前提条件 ▪ Docker ▪ Docker Compose ▪ Git ▪ Postman ▪ Cygwin for Windows ▪ MongoDB Compass 2 git clone https://github.com/FIWARE/tutorials.Step- by-Step.git cd tutorials.Step-by-Step/ git submodule update --init --recursive ▪ https://www.docker.com/ ▪ https://docs.docker.com/compose/install/ ▪ https://git-scm.com/downloads ▪ https://www.getpostman.com/downloads/ ▪ https://www.cygwin.com/install.html ▪ https://www.mongodb.com/download- center/compass
  • 4. FIWARE Catalogue 33 Data/APIManagement PublicationMonetization Core Context Management (Context Broker) Context Processing, Analysis, Visualization Interface to IoT, Robotics and third party systems Deploymenttools 3 Development of Context-aware applications (Orion, Orion-LD, Scorpio, STH-Comet, Cygnus, QuantumLeap, Draco) Connection to the Internet of Things (IDAS, OpenMTC) Real-time processing of context events (Perseo) Handling authorization and access control to APIs (Keyrock, Wilma, AuthZForce, APInf ) Publication and Monetization of Context Information (CKAN extensions, Data/API Biz Framework, IDRA) Creation of Application Dashboards (Wirecloud) Real-time Processing of media streams (Kurento) Business Intelligence (Knowage) Connection to robots (FIROS, Fast RTPS,Micro XRCE-DDS) Big Data Context Analysis (Cosmos) Cloud Edge (FogFlow) Documents exchange (Domibus)
  • 5. STH-Comet ▪ 迅速なプロトタイピングのためのシンプルな セットアップです ▪ 簡単にスケールできないません ▪ STH-Comet は古い NGSI v1 サブスクリ プション・エンドポイントをリッスンします "attrsFormat": "legacy" ▪ すべてのタイムスタンプは、 notifiedAt 属性に基づいています ▪ STH-Comet は、 MongoDB へのデータベ ースの読み取りと書き込みの両方を担当 4
  • 6. STH-Comet が Context Broker にサブスクライブする方法 5 フィルタリング ● id または idPattern ● type または typePattern Conditions ブロックを使用して クエリをさらに絞り込む : ○ q ○ attrs 通知 (Notification) ● http.url は、STH-Comet への通 知先 ● luminosity をパスするだけ ● NGSI v1形式で渡されるデータには、 attrsFormat: legacy が必要 頻繁に変化する値に throttling を使用 curl -L -X POST 'http://localhost:1026/v2/subscriptions/' -H 'Content-Type: application/json' -H 'fiware-service: openiot' -H 'fiware-servicepath: /' --data-raw '{ "description": "Notify STH-Comet to sample Lamp", "subject": { "entities": [ {"idPattern": "Lamp.*"} ], "condition": { "attrs": ["luminosity"] } }, "notification": { "http": { "url": "http://sth-comet:8666/notify" }, "attrs": ["luminosity"], "attrsFormat": "legacy" }, "throttling": 5 }'
  • 7. Cygnus 経由の STH-Comet 6 ▪ 本番システムのためのより複雑なソリューション ▪ スケーリングが向上します ▪ Cygnus は NGSI v2 サブスクリプションエン ド・ポイントをリッスンします ▪ Cygnus は MongoDB へのデータベース書き 込みを担当します ▪ STH-Comet は MongoDB へのデータベース 読み取りを担当します ▪ すべてのタイムスタンプは、 notifiedAt 属性に基づきます
  • 8. Cygnus が Context Broker にサブスクライブする方法 7 通知 (Notification) ● http.url は Cygnus への通知先 で、Cygnus 標準のポート 5051 ● データは NGSI v2 形式で渡されま す ● ジオフェンスなし、メタデータなし luminosity のみがわたされます curl -L -X POST 'http://localhost:1026/v2/subscriptions/' -H 'Content-Type: application/json' -H 'fiware-service: openiot' -H 'fiware-servicepath: /' --data-raw '{ "description": "Notify Cygnus to sample Lamp", "subject": { "entities": [ { "idPattern": "Lamp.*" } ], "condition": { "attrs": ["luminosity"] } }, "notification": { "http": { "url": "http://cygnus:5051/notify" }, "attrs": ["luminosity"] }, "throttling": 5 }'
  • 9. QuantumLeap ▪ QuantumLeap は NGSI v2 サブ スクリプション・エンドポイントをリッスン します ▪ QuantumLeap は特定の時系列 (time-series) データベースへの読 み取りと書き込みの両方を担当します ▪ タイムスタンプはメタデータ属性に基づ いています 例 dateModified ▪ QuantumLeap API を使用するか、 代わりに API を使用して Crate-DB に直接クエリを作成できます ▪ Grafana などの外部ツールとうまく統 合できます 8
  • 10. QuantumLeap が Context Brokerにサブスクライブする方法 9 通知 (Notification) ● http.url は、QuantumLeap へ の通知先 ● データは、NGSI v2 形式で渡され ます ● サブスクリプションは luminosity と location の両方を渡します – GeoFencing クエリを作成できます ● メタデータも必要です – notificationsAt ではなく dateModified を使用します curl -L -X POST 'http://localhost:1026/v2/subscriptions/' -H 'Content-Type: application/json' -H 'fiware-service: openiot' -H 'fiware-servicepath: /' --data-raw '{ "description": "Notify QuantumLeap to sample Lamp", "subject": { "entities": [{"idPattern": "Lamp.*"}], "condition": { "attrs": ["luminosity", "location"] } }, "notification": { "http": { "url": "http://quantumleap:8668/v2/notify" }, "attrs": ["luminosity", "location"], "metadata": ["dateCreated","dateModified"] }, "throttling": 5 }'
  • 11. 時系列データ (Time-series Data) の取得 ▪ STH Comet API • Swagger 仕様 https://raw.githubusercontent.com/FIWARE/specifications/master/OpenAPI /context.STH.Comet/STH.Comet-openapi.json ▪ QuantumLeap API • Swagger 仕様 https://raw.githubusercontent.com/FIWARE/specifications/master/OpenAPI /quantumLeap/quantumleap.yml ▪ Crate-DB HTTP エンドポイント: • https://crate.io/docs/crate/reference/en/latest/interfaces/http.html ▪ ダイレクト SQL ステートメント • SQL 文法 https://crate.io/docs/crate/reference/en/latest/sql/index.html 10
  • 12. 時系列データ (Time-series Data) の表示 ● 自作 (Build-your-own) ○ コンポーネントへの HTTP クエリ作成を使用 ○ 既存のグラフ作成ライブラリを使用 ■ Chart.js, Highcharts framework, eCharts など. ○ スクリプトを使用して JSON ペイロードを正しい形式に変換 ● Grafana ○ SQL クエリを使用して時系列データベースにアクセス ○ 表示を修正するための設定可能なツール ● Wirecloud Widgets ○ QuantumLeap source ウィジェットを使用 ○ オペレータまたは画面表示のウィジェットへのワイヤーリング 11
  • 13. “XとYの間のエンティティのすべての値を取得” NGSI-LD Temporal インタフェース NGSI-LD 仕様: https://www.etsi.org/deliver/etsi_gs/CIM/001_099/009/01.02.01_60/gs_cim009v010201p.pdf 12 curl -G -X GET 'http://localhost:1026/ngsi-ld/temporal/entities/ urn:ngsi-ld:Vehicle:B9211’ -H 'Link: <http://fiware.org/ngsi-ld/my- context.jsonld>; rel="http://www.w3.org/ns/json- ld#context"; type="application/ld+json"' -H 'Accept: application/ld+json' -d 'attrs=speed,brandName' -d 'timerel=between' -d 'time=2018-08-01:12:00:00Z' -d 'endTime=2018-08-01:13:00:00Z’ { "id": "urn:ngsi-ld:Vehicle:B9211", "type": "Vehicle", "brandName": [ { "type": "Property", "value": "Volvo" } ], "speed": [ { "type": "Property", "value": 120, "observedAt": "2018-08-01T12:03:00Z" }, { "type": "Property", "value": 80, "observedAt": "2018-08-01T12:05:00Z" } ], "@context": "http://fiware.org/ngsi-ld/my-context.jsonld" } ▪ オプションの NGSI-LD インターフェイス ▪ デフォルトは observedAt を使用 ▪ 範囲のみ、まだ集約はできない… ▪ Key-Value 形式でも利用可能
  • 14. サマリ : 短期履歴 (Short-Term History) ▪ 短期履歴 (Short Term History) により、ユーザは一定期間に発生する傾向を発見 できます: • Maxima, Minima, Sums Averages etc. ▪ FIWAREカタログには、短期履歴を処理する2つのコンポーネントが 含まれています • STH-Comet • QuantumLeap ▪ 各コンポーネントは時系列データのバケットをデータベースに配置し、 APIを介して取得を提供します ▪ 任意のグラフ作成ツールを使用して結果を表示します ▪ NGSI-LD temporal interface を使用して、observedAt プロパティまたは その他の DateTime プロパティに基づいて範囲データを返すことができます 13