SlideShare une entreprise Scribd logo
1  sur  46
Managing Context Information
at large scale
(Introduction)
Contact twitter
@marivibriz
Contact email
mariavirtudes.brizruiz@telefonica.com
(Reference Orion Context Broker version: 0.20.0)
Introduction
• Context Management in FIWARE
• Orion Context Broker
• Creating and pulling data
• Pushing data and notifications
• Standard operations
Orion Context Broker
2
Being “Smart” requires first being “Aware”
• Implementing a Smart Application requires gathering and
managing context information
• Context information refers to the values of attributes
characterizing entities relevant to the application
3
Different sources of context need to be handle
• Context information may come from many sources:
– Existing systems
– Users, through mobile apps
– Sensor networks (Internet of Things)
• Source of info for a given entity and attribute may vary
over time
4
FIWARE NGSI: Connecting to the Internet of
Things
• OMA NGSI-9/10 API: a simple yet powerful standard API for managing
Context information
• The FIWARE NGSI API is RESTful: any web/backend programmer gets
quickly used to it
Context Broker
NGSI APINGSI API
GET <Oauth token>
/V1/contextEntities/lamp1/attributes/presenceSensor
PUT <Oauth token>
/V1/contextEntities/lamp1/attributes/status
“light on”
Setting up the value of attribute
“status” to “light on” triggers
execution of a function in the IoT
device that switches the lamp on
Issuing a get operation on the
“presenceSensor” attribute
enables the application to get
info about presence of people
near the lamp
5
Orion Context Broker
• Main functions:
– Context management
– Context availability management
• HTTP and REST-based
– XML payload support
– JSON payload support
• Context in NGSI is based in an entity-attribute model:
Attributes
• Name
• Type
• Value
Entity
• EntityId
• EntityType
1 n
“has”
6
Orion Context Broker in a nutshell
Orion Context Broker
Context
Producers
Context
Consumers
subscriptions
update
query
notify
notify
update
update
DB
1026
1026
7
GET <cb_host>:1026/version
{
"orion" : {
"version" : "0.17.0",
"uptime" : "7 d, 21 h, 33 m, 39 s",
"git_hash" : "238c3642ad67899da7c1ff08aba4b5c846b4901a",
"compile_time" : "Mon Dec 1 11:27:18 CET 2014",
"compiled_by" : "fermin",
"compiled_in" : "centollo"
}
}
8
Orion Context Broker – check health
Orion Context Broker Basic Operations
Entities
• GET /v1/contextEntities/{entityID}
• Retrieves an entity
• POST /v1/contextEntities/{entityID}
• Creates an entity
• PUT /v1/contextEntities/{entityID}
• Updates an entity
• DELETE /v1/contextEntities/{entityID}
• Deletes an entity
9
Orion Context Broker Basic Operations
Attributes
• GET /v1/contextEntities/{entityID}/attributes/{attrName}
• Retrieves an attribute’s value
• POST /v1/contextEntities/{entityID}/attributes/{attrName}
• Creates a new attribute for an entity
• PUT /v1/contextEntities/{entityID}/attributes/{attrName}
• Updates an attribute’s value
• DELETE /v1/contextEntities/{entityID}/attributes/{attrName}
• Deletes an attribute
10
Context Broker operations: create & pull data
• Context Producers publish data/context elements by invoking the
updateContext operation on a Context Broker.
• Context Consumers can retrieve data/context elements by invoking the
queryContext operation on a Context Broker
Context Consumer
queryContext
Context Producer
updateContext
Context Broker
11
Quick Usage Example: Car Create
200 OK
...
{
"contextResponses": [
{
"attributes": [
{
"name": "speed",
"type": "float",
"value": ""
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
],
"id": “Car1",
"isPattern": "false",
"type": “Car"
}
12
Entity id and type can be included in the URL, e.g.
POST /v1/contextEntities/type/Car/id/Car1
POST <cb_host>:1026/v1/contextEntities
...
{
"id": "Car1",
"type": "Car",
"attributes": [
{
"name": "speed",
"type": "float",
"value": "98"
}
]
}
Quick Usage Example: Car UpdateContext (1)
PUT <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed
...
{
"value": "110"
}
200 OK
...
{
"code": "200",
"reasonPhrase": "OK"
}
13
Quick Usage Example: Car QueryContext (1)
200 OK
...
{
"attributes": [
{
"name": "speed",
"type": "float",
"value": "110"
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
14
You can get all the attributes of the entity using the
entity URL:
GET/v1/contextEntities/type/Car/id/Car1
GET <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed
Quick Usage Example: Car UpdateContext (2)
PUT <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed
...
{
"value": "115"
}
200 OK
...
{
"code": "200",
"reasonPhrase": "OK"
}
15
Quick Usage Example: Car QueryContext (2)
200 OK
...
{
"attributes": [
{
"name": "speed",
"type": "float",
"value": "115"
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
16
GET <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed
200 OK
...
{
"contextResponses": [
{
"attributes": [
{
"name": "temperature",
"type": "float",
"value": ""
},
{
"name": "pressure",
"type": ”integer",
"value": ""
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
],
"id": "Room1",
"isPattern": "false",
"type": "Room"
}
Quick Usage Example: Room Create (1)
POST <cb_host>:1026/v1/contextEntities
...
{
"id": "Room1",
"type": "Room",
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "24"
},
{
"name": "pressure",
"type": “integer",
"value": "718"
}
]
}
17
200 OK
...
{
"contextResponses": [
{
"attributes": [
{
"name": "temperature",
"type": "float",
"value": ""
},
{
"name": "pressure",
"type": "integer",
"value": ""
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
],
"id": "Room1",
"isPattern": "false",
"type": "Room"
}
Quick Usage Example: Room UpdateContext (1)
18
PUT <cb_host>:1026/v1/contextEntities/type/Room/id/Room1
...
{
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "25"
},
{
"name": "pressure",
"type": "integer",
"value": "720"
}
]
}
Quick Usage Example: Room QueryContext (1)
19
200 OK
...
{
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "25"
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
GET <cb_host>:1026/v1/contextEntities/type/Room/id/Room1/attributes/temperature
Quick Usage Example: Room QueryContext (2)
20
200 OK
...
{
"contextElement": {
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "25"
},
{
"name": "pressure",
"type": ”integer",
"value": "720"
}
],
"id": "Room1",
"isPattern": "false",
"type": "Room"
},
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
GET <cb_host>:1026/v1/contextEntities/type/Room/id/Room1
200 OK
...
{
"contextResponses": [
{
"attributes": [
{
"name": "temperature",
"type": "float",
"value": ""
},
{
"name": "pressure",
"type": ”integer",
"value": ""
}
],
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
],
"id": "Room1",
"isPattern": "false",
"type": "Room"
}
Quick Usage Example: Room Create (2)
POST <cb_host>:1026/v1/contextEntities
...
{
"id": "Room2",
"type": "Room",
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "29"
},
{
"name": "pressure",
"type": “integer",
"value": "730"
}
]
}
21
Quick Usage Example: Room QueryContext (3)
22
POST <cb_host>:1026/v1/queryContext
...
{
"entities": [
{
"type": "Room",
"isPattern": "true",
"id": "Room.*"
} ,
"attributes": [
"temperature"
]
]
}
200 OK
...
{
"contextResponses": [
{
"contextElement": {
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "25"
}
],
"id": "Room1",
"isPattern": "false",
"type": "Room"
},
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
},
{
"contextElement": {
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "29"
}
],
"id": "Room2",
"isPattern": "false",
"type": "Room"
},
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
]
}
Context Broker operations: push data
• Context Consumers can subscribe to receive context information that satisfy
certain conditions using the subscribeContext. Such subscriptions may have
a duration.
• The Context Broker notifies updates on context information to subscribed
Context Consumers by invoking the notifyContext operation they export
subscription_id = subscribeContext (consumer, expr, duration)
Context Consumer
notifyContext (subscription_id, data/context)
Context Broker
Application
23
Quick Usage Example: Subscription
POST <cb_host>:1026/v1/subscribeContext
…
{
"entities": [
{
"type": "Room",
"isPattern": "false",
"id": "Room1"
}
],
"attributes": [
"temperature"
],
"reference": "http://<host>:<port>/publish",
"duration": "P1M",
"notifyConditions": [
{
"type": "ONCHANGE",
"condValues": [
"temperature"
]
}
],
"throttling": "PT5S"
}
200 OK
...
{
"subscribeResponse": {
"duration": "P1M",
"subscriptionId": "51c0ac9ed714fb3b37d7d5a8",
"throttling": "PT5S"
}
}
24
ONTIMEINTERVAL & ONCHANGE
Upcoming: ONVALUE
25
19
Quick Usage Example: Notification
25
POST http://<host>:<port>/publish
…
{
"subscriptionId" : "51c0ac9ed714fb3b37d7d5a8",
"originator" : "localhost",
"contextResponses" : [
{
"contextElement" : {
"attributes" : [
{
"name" : "temperature",
"type" : "float",
"value" : "19"
}
],
"type" : "Room",
"isPattern" : "false",
"id" : "Room1"
},
"statusCode" : {
"code" : "200",
"reasonPhrase" : "OK"
}
}
]
}
Quick Usage Example: Notification
26
Orion Context Broker Standard Operations
Functions Operations
NGSI10
• Query,
• Update and
• Subscribe to context elements
• updateContext
• queryContext
• subscribeContext
• updateContextSubscription
• unsubscribeContextSubscription
27
• They are equivalent to previous convenience operations in functionality
• All them use POST as verb, including the parameters in the payload
• More expressive than convenience operations. Some advance functionality is
only supported with standar operations (e.g. geo-aware query)
• They are not a substitute but a complement to convenience operations
Would you like to know more?
• The easy way
– Orion User Manual: google for “Orion FIWARE manual” and use
the first hit
– Orion Catalogue page: google for “Orion FIWARE catalogue” and
use the first hit
• References
– This presentation
• http://www.slideshare.net/fermingalan/fiware-managing-context-
information-at-large-scale
– Orion Catalogue:
• http://catalogue.fiware.org/enablers/publishsubscribe-context-
broker-orion-context-broker
– Orion support trhough StackOverflow
• Ask your questions using the “fiware-orion” tag
• Look for existing questions at
http://stackoverflow.com/questions/tagged/fiware-orion
28
Managing Context Information
at large scale
(Advanced Topics)
(Reference Orion Context Broker version: 0.20.0)
Contact twitter
@marivibriz
Contact email
mariavirtudes.brizruiz@telefonica.com
Advanced Features
• Pagination
• Compound attribute values
• Geo-location
• Metadata
• Registrations & context providers
• Multitenancy
• Entity service paths
Orion Context Broker
30
• Pagination helps clients organize query and
discovery requests with a large number of
responses.
• Three URI parameters:
– limit
• Number of elements per page (default: 20, max: 1000)
– offset
• Number of elements to skip (default: 0)
– details
• Returns total elements (default: "off")
Pagination
31
Pagination
• Example, querying the first 100 entries:
POST <orion_host>:1026/v1/queryContext?limit=100&details=on
• The first 100 elements are returned, along with the following errorCode in
the response:
"errorCode": {
"code": "200",
"details": "Count: 322",
"reasonPhrase": "OK"
}
• Now we now there are 322 entities, we can keep querying the broker for
them:
– POST <orion_host>:1026/v1/queryContext?offset=100&limit=100
– POST <orion_host>:1026/v1/queryContext?offset=200&limit=100
– POST <orion_host>:1026/v1/queryContext?offset=300&limit=100
32
Compound Attribute Values
• An attribute can have a structured value. Vectors
and key-value maps are supported.
• It maps directly to JSON's objects and arrays.
33
Compound Attribute Values
• Example: we have
a car whose four
wheels' pressure
we want to
represent as a
compound
attribute for a car
entity. We would
create the car
entity like this:
{
"contextElements": [
{
"type": "Car",
"isPattern": "false",
"id": "Car1",
"attributes": [
{
"name": "tirePressure",
"type": "kPa",
"value": {
"frontRight": "120",
"frontLeft": "110",
"backRight": "115",
"backLeft": "130"
}
}
]
}
],
"updateAction": "APPEND"
}
34
Metadata
• Users may attach metadata to attributes
• Reserved metadatas: ID, Location, creDate and modDate
• Examples:
35
…
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "26.5",
"metadatas": [
{
"name": "accuracy",
"type": "float",
"value": "0.9"
}
]
}
]
…
…
"attributes": [
{
"name": "temperature",
"type": "float",
"value": "26.5",
"metadatas": [
{
"name": "average",
"type": "float",
"value": "22.4"
}
]
}
]
…
Complete NGSI Model
Attributes
• Name
• Type
• Value
Entity
• EntityId
• EntityType
1 n
“has”
Metadata
• Name
• Type
• Value1 n
“has”
36
Geo-location
• Entities can have an attribute
that specifies its location
– Using a "location" metadata
• Example: create an entity called
Madrid
…and create a couple more towns:
• Leganés
• Alcobendas
POST <cb_host>:1026/v1/updateContext
{
"contextElements": [
{
"type": "City",
"isPattern": "false",
"id": "Madrid",
"attributes": [
{
"name": "position",
"type": "coords",
"value": "40.418889, -3.691944",
"metadatas": [
{
"name": "location",
"type": "string",
"value": "WSG84"
}
]
}
]
}
],
"updateAction": "APPEND"
}
37
Geo-location – Circle
38
Geo-location – Circle
39
POST <cb_host>:1026/v1/queryContext
…
{
"entities": [
{
"type": "City",
"isPattern": "true",
"id": ".*"
}
],
"restriction": {
"scopes": [
{
"type" : "FIWARE::Location",
"value" : {
"circle": {
"centerLatitude": "40.418889",
"centerLongitude": "-3.691944",
"radius": "13500"
}
}
}
]
}
}
Geo-location – Inverse Circle
40
POST <cb_host>:1026/v1/queryContext
…
{
"entities": [
{
"type": "City",
"isPattern": "true",
"id": ".*"
}
],
"restriction": {
"scopes": [
{
"type" : "FIWARE::Location",
"value" : {
"circle": {
"centerLatitude": "40.418889",
"centerLongitude": "-3.691944",
"radius": "13500",
"inverted": "true"
}
}
}
]
}
}
Orion Context Broker - Operations
Functions Operations
NGSI9
• Register,
• Search and
• Subscribe for context sources
• registerContext
• discoverContextAvailability
• subscribeContextAvailability
• updateContextAvailabilitySubscription
• unsubscribeContextAvailability
NGSI10
• Query,
• Update and
• Subscribe to context elements
• updateContext
• queryContext
• subscribeContext
• updateContextSubscription
• unsubscribeContextSubscription
41
Would you like to know more?
• The easy way
– Orion User Manual: google for “Orion FIWARE manual” and use
the first hit
– Orion Catalogue page: google for “Orion FIWARE catalogue” and
use the first hit
• References
– This presentation
• http://www.slideshare.net/fermingalan/fiware-managing-context-
information-at-large-scale
– Orion Catalogue:
• http://catalogue.fiware.org/enablers/publishsubscribe-context-
broker-orion-context-broker
– Orion support through StackOverflow
• Ask your questions using the “fiware-orion” tag
• Look for existing questions at
http://stackoverflow.com/questions/tagged/fiware-orion
42
Thanks!Thanks!
BACKUP SLIDES
Backup slides
44
More on Convenience Operations
Subscriptions
• POST /v1/contextSubscriptions
• Creates a subscription
• PUT /v1/contextSubscriptions/{subID}
• Updates a subscription
• DELETE /v1/contextSubscriptions/{subID}
• Cancel a subscription
45
More on Convenience Operations
Entity Types
• GET /v1/contextTypes
• Retrieve a list of all entity types currently in Orion,
including their corresponding attributes
• GET /v1/contextTypes/{typeID}
• Retrieve attributes associated to an entity type
PRO TIP
GET /v1/contextTypes?collapse=true
Retrieves a list of all entity types without attribute info
46

Contenu connexe

Tendances

Orion Context Broker 20220301
Orion Context Broker 20220301Orion Context Broker 20220301
Orion Context Broker 20220301Fermin Galan
 
Context Information Management in IoT enabled smart systems - the basics
Context Information Management in IoT enabled smart systems - the basicsContext Information Management in IoT enabled smart systems - the basics
Context Information Management in IoT enabled smart systems - the basicsFernando Lopez Aguilar
 
Fiware Developers Week IoT Agents (Advanced)
Fiware Developers Week IoT Agents (Advanced)Fiware Developers Week IoT Agents (Advanced)
Fiware Developers Week IoT Agents (Advanced)dmoranj
 
Developing your first application using FI-WARE
Developing your first application using FI-WAREDeveloping your first application using FI-WARE
Developing your first application using FI-WAREFermin Galan
 
Orion Context Broker 2020-03-25
Orion Context Broker 2020-03-25Orion Context Broker 2020-03-25
Orion Context Broker 2020-03-25Fermin Galan
 
IoT Agents (With Lightweight M2M)
IoT Agents (With Lightweight M2M)IoT Agents (With Lightweight M2M)
IoT Agents (With Lightweight M2M)dmoranj
 
Iot Toolkit and the Smart Object API - Architecture for Interoperability
Iot Toolkit and the Smart Object API - Architecture for InteroperabilityIot Toolkit and the Smart Object API - Architecture for Interoperability
Iot Toolkit and the Smart Object API - Architecture for InteroperabilityMichael Koster
 
FIWARE NGSI: Managing Context Information at Large Scale
FIWARE NGSI: Managing Context Information at Large ScaleFIWARE NGSI: Managing Context Information at Large Scale
FIWARE NGSI: Managing Context Information at Large ScaleFIWARE
 
Orion Context Broker 20210602
Orion Context Broker 20210602Orion Context Broker 20210602
Orion Context Broker 20210602Fermin Galan
 
Ipso smart object seminar
Ipso smart object seminarIpso smart object seminar
Ipso smart object seminarMichael Koster
 
REST APIs for the Internet of Things
REST APIs for the Internet of ThingsREST APIs for the Internet of Things
REST APIs for the Internet of ThingsMichael Koster
 
Object models for interoperability
Object models for interoperabilityObject models for interoperability
Object models for interoperabilityMichael Koster
 
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...DevDay.org
 
OpenStack- A ringside view of Services and Architecture
OpenStack- A ringside view of Services and ArchitectureOpenStack- A ringside view of Services and Architecture
OpenStack- A ringside view of Services and ArchitectureRitesh Somani
 
201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbroker201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbrokerFIWARE
 
Jax london - Battle-tested event-driven patterns for your microservices archi...
Jax london - Battle-tested event-driven patterns for your microservices archi...Jax london - Battle-tested event-driven patterns for your microservices archi...
Jax london - Battle-tested event-driven patterns for your microservices archi...Natan Silnitsky
 
Custom Distributed Tracing in Azure Functions (2021-02-27)
Custom Distributed Tracing in Azure Functions (2021-02-27)Custom Distributed Tracing in Azure Functions (2021-02-27)
Custom Distributed Tracing in Azure Functions (2021-02-27)Paco de la Cruz
 
Opentelemetry - From frontend to backend
Opentelemetry - From frontend to backendOpentelemetry - From frontend to backend
Opentelemetry - From frontend to backendSebastian Poxhofer
 

Tendances (20)

Orion Context Broker 20220301
Orion Context Broker 20220301Orion Context Broker 20220301
Orion Context Broker 20220301
 
Context Information Management in IoT enabled smart systems - the basics
Context Information Management in IoT enabled smart systems - the basicsContext Information Management in IoT enabled smart systems - the basics
Context Information Management in IoT enabled smart systems - the basics
 
Fiware Developers Week IoT Agents (Advanced)
Fiware Developers Week IoT Agents (Advanced)Fiware Developers Week IoT Agents (Advanced)
Fiware Developers Week IoT Agents (Advanced)
 
Developing your first application using FI-WARE
Developing your first application using FI-WAREDeveloping your first application using FI-WARE
Developing your first application using FI-WARE
 
Orion Context Broker 2020-03-25
Orion Context Broker 2020-03-25Orion Context Broker 2020-03-25
Orion Context Broker 2020-03-25
 
IoT Agents (With Lightweight M2M)
IoT Agents (With Lightweight M2M)IoT Agents (With Lightweight M2M)
IoT Agents (With Lightweight M2M)
 
Iot Toolkit and the Smart Object API - Architecture for Interoperability
Iot Toolkit and the Smart Object API - Architecture for InteroperabilityIot Toolkit and the Smart Object API - Architecture for Interoperability
Iot Toolkit and the Smart Object API - Architecture for Interoperability
 
FIWARE NGSI: Managing Context Information at Large Scale
FIWARE NGSI: Managing Context Information at Large ScaleFIWARE NGSI: Managing Context Information at Large Scale
FIWARE NGSI: Managing Context Information at Large Scale
 
Orion Context Broker 20210602
Orion Context Broker 20210602Orion Context Broker 20210602
Orion Context Broker 20210602
 
Introduction to FIWARE IoT
Introduction to FIWARE IoTIntroduction to FIWARE IoT
Introduction to FIWARE IoT
 
Ipso smart object seminar
Ipso smart object seminarIpso smart object seminar
Ipso smart object seminar
 
REST APIs for the Internet of Things
REST APIs for the Internet of ThingsREST APIs for the Internet of Things
REST APIs for the Internet of Things
 
Object models for interoperability
Object models for interoperabilityObject models for interoperability
Object models for interoperability
 
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
 
OpenStack- A ringside view of Services and Architecture
OpenStack- A ringside view of Services and ArchitectureOpenStack- A ringside view of Services and Architecture
OpenStack- A ringside view of Services and Architecture
 
Iottoolkit wot
Iottoolkit wotIottoolkit wot
Iottoolkit wot
 
201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbroker201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbroker
 
Jax london - Battle-tested event-driven patterns for your microservices archi...
Jax london - Battle-tested event-driven patterns for your microservices archi...Jax london - Battle-tested event-driven patterns for your microservices archi...
Jax london - Battle-tested event-driven patterns for your microservices archi...
 
Custom Distributed Tracing in Azure Functions (2021-02-27)
Custom Distributed Tracing in Azure Functions (2021-02-27)Custom Distributed Tracing in Azure Functions (2021-02-27)
Custom Distributed Tracing in Azure Functions (2021-02-27)
 
Opentelemetry - From frontend to backend
Opentelemetry - From frontend to backendOpentelemetry - From frontend to backend
Opentelemetry - From frontend to backend
 

En vedette

Orion Context Broker Webminar
Orion Context Broker WebminarOrion Context Broker Webminar
Orion Context Broker WebminarFIWARE
 
Orion Context Broker Exercises
Orion Context Broker ExercisesOrion Context Broker Exercises
Orion Context Broker ExercisesFermin Galan
 
شركه بورتو البحر الميت للتنمية السياحية Powe point
شركه بورتو البحر الميت للتنمية السياحية Powe pointشركه بورتو البحر الميت للتنمية السياحية Powe point
شركه بورتو البحر الميت للتنمية السياحية Powe pointhadeel ameen
 
Catedral de santiago_Touro2015
Catedral de santiago_Touro2015Catedral de santiago_Touro2015
Catedral de santiago_Touro2015danieyago
 
коледна приказка с мама
коледна приказка с мамаколедна приказка с мама
коледна приказка с мамаmegikatq
 
Curriculum vita Ibrahim Ammar
Curriculum vita Ibrahim AmmarCurriculum vita Ibrahim Ammar
Curriculum vita Ibrahim AmmarIbrahim Ammar
 
คู่มือการใช้ถึงหมักก๊าชชีวภาพ
คู่มือการใช้ถึงหมักก๊าชชีวภาพคู่มือการใช้ถึงหมักก๊าชชีวภาพ
คู่มือการใช้ถึงหมักก๊าชชีวภาพmantanwa22
 
Portugal za romenia
Portugal za romeniaPortugal za romenia
Portugal za romeniamegikatq
 
3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- Track3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- TrackTIDChile
 
คำสั่งภัยพิบัติน้ำท่วม 1
คำสั่งภัยพิบัติน้ำท่วม 1คำสั่งภัยพิบัติน้ำท่วม 1
คำสั่งภัยพิบัติน้ำท่วม 1mantanwa22
 
Permanenthiring
PermanenthiringPermanenthiring
PermanenthiringNeuhiring
 
Crea presentación de microsoft office power point 97 2003 (2)
Crea presentación de microsoft office power point 97 2003 (2)Crea presentación de microsoft office power point 97 2003 (2)
Crea presentación de microsoft office power point 97 2003 (2)pgkikasv
 
FI Workshop Sesión Inaugural TID Chile
FI Workshop Sesión Inaugural TID ChileFI Workshop Sesión Inaugural TID Chile
FI Workshop Sesión Inaugural TID ChileTIDChile
 
TDM Wyre Academy - IT Apprenticeships Employer Brochure
TDM Wyre Academy - IT Apprenticeships Employer BrochureTDM Wyre Academy - IT Apprenticeships Employer Brochure
TDM Wyre Academy - IT Apprenticeships Employer BrochureKerry Carpenter
 
Verbos y cuantificadores, rodriguez avila
Verbos y cuantificadores, rodriguez avilaVerbos y cuantificadores, rodriguez avila
Verbos y cuantificadores, rodriguez avilaJussely Rodríguez
 
Magazine Genre Reseach
Magazine Genre ReseachMagazine Genre Reseach
Magazine Genre Reseachmaxwell33434
 
игри белгия
игри  белгияигри  белгия
игри белгияmegikatq
 

En vedette (20)

Orion Context Broker Webminar
Orion Context Broker WebminarOrion Context Broker Webminar
Orion Context Broker Webminar
 
Orion Context Broker Exercises
Orion Context Broker ExercisesOrion Context Broker Exercises
Orion Context Broker Exercises
 
شركه بورتو البحر الميت للتنمية السياحية Powe point
شركه بورتو البحر الميت للتنمية السياحية Powe pointشركه بورتو البحر الميت للتنمية السياحية Powe point
شركه بورتو البحر الميت للتنمية السياحية Powe point
 
Energy
EnergyEnergy
Energy
 
Catedral de santiago_Touro2015
Catedral de santiago_Touro2015Catedral de santiago_Touro2015
Catedral de santiago_Touro2015
 
коледна приказка с мама
коледна приказка с мамаколедна приказка с мама
коледна приказка с мама
 
Curriculum vita Ibrahim Ammar
Curriculum vita Ibrahim AmmarCurriculum vita Ibrahim Ammar
Curriculum vita Ibrahim Ammar
 
คู่มือการใช้ถึงหมักก๊าชชีวภาพ
คู่มือการใช้ถึงหมักก๊าชชีวภาพคู่มือการใช้ถึงหมักก๊าชชีวภาพ
คู่มือการใช้ถึงหมักก๊าชชีวภาพ
 
Portugal za romenia
Portugal za romeniaPortugal za romenia
Portugal za romenia
 
MUHAMMAD IQBAL
MUHAMMAD IQBALMUHAMMAD IQBAL
MUHAMMAD IQBAL
 
3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- Track3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- Track
 
คำสั่งภัยพิบัติน้ำท่วม 1
คำสั่งภัยพิบัติน้ำท่วม 1คำสั่งภัยพิบัติน้ำท่วม 1
คำสั่งภัยพิบัติน้ำท่วม 1
 
Permanenthiring
PermanenthiringPermanenthiring
Permanenthiring
 
Crea presentación de microsoft office power point 97 2003 (2)
Crea presentación de microsoft office power point 97 2003 (2)Crea presentación de microsoft office power point 97 2003 (2)
Crea presentación de microsoft office power point 97 2003 (2)
 
FI Workshop Sesión Inaugural TID Chile
FI Workshop Sesión Inaugural TID ChileFI Workshop Sesión Inaugural TID Chile
FI Workshop Sesión Inaugural TID Chile
 
TDM Wyre Academy - IT Apprenticeships Employer Brochure
TDM Wyre Academy - IT Apprenticeships Employer BrochureTDM Wyre Academy - IT Apprenticeships Employer Brochure
TDM Wyre Academy - IT Apprenticeships Employer Brochure
 
OCWM Thank You
OCWM Thank YouOCWM Thank You
OCWM Thank You
 
Verbos y cuantificadores, rodriguez avila
Verbos y cuantificadores, rodriguez avilaVerbos y cuantificadores, rodriguez avila
Verbos y cuantificadores, rodriguez avila
 
Magazine Genre Reseach
Magazine Genre ReseachMagazine Genre Reseach
Magazine Genre Reseach
 
игри белгия
игри  белгияигри  белгия
игри белгия
 

Similaire à Orion Context Broker

FIWARE Tech Summit - FIWARE NGSIv2 Introduction
FIWARE Tech Summit - FIWARE NGSIv2 IntroductionFIWARE Tech Summit - FIWARE NGSIv2 Introduction
FIWARE Tech Summit - FIWARE NGSIv2 IntroductionFIWARE
 
Orion Context Broker 1.15.0
Orion Context Broker 1.15.0Orion Context Broker 1.15.0
Orion Context Broker 1.15.0Fermin Galan
 
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...FIWARE
 
以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界Amazon Web Services
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWAREFIWARE
 
Building and deploying microservices with event sourcing, CQRS and Docker (Me...
Building and deploying microservices with event sourcing, CQRS and Docker (Me...Building and deploying microservices with event sourcing, CQRS and Docker (Me...
Building and deploying microservices with event sourcing, CQRS and Docker (Me...Chris Richardson
 
Orion Context Broker 20230606
Orion Context Broker 20230606Orion Context Broker 20230606
Orion Context Broker 20230606Fermin Galan
 
Orion Context Broker 20230602
Orion Context Broker 20230602Orion Context Broker 20230602
Orion Context Broker 20230602Fermin Galan
 
Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227Fermin Galan
 
Orion Context Broker 20210309
Orion Context Broker 20210309Orion Context Broker 20210309
Orion Context Broker 20210309Fermin Galan
 
Orion Context Broker introduction 20240115
Orion Context Broker introduction 20240115Orion Context Broker introduction 20240115
Orion Context Broker introduction 20240115Fermin Galan
 
Orion Context Broker 20221220
Orion Context Broker 20221220Orion Context Broker 20221220
Orion Context Broker 20221220Fermin Galan
 
Orion Context Broker 2020-10-29
Orion Context Broker 2020-10-29Orion Context Broker 2020-10-29
Orion Context Broker 2020-10-29Fermin Galan
 
Orion Context Broker 20180928
Orion Context Broker 20180928Orion Context Broker 20180928
Orion Context Broker 20180928Fermin Galan
 
Orion Context Broker 20181218
Orion Context Broker 20181218Orion Context Broker 20181218
Orion Context Broker 20181218Fermin Galan
 
Orion Context Broker 20191021
Orion Context Broker 20191021Orion Context Broker 20191021
Orion Context Broker 20191021Fermin Galan
 
Orion Context Broker 20190214
Orion Context Broker 20190214Orion Context Broker 20190214
Orion Context Broker 20190214Fermin Galan
 
Orion Context Broker 2020-10-28
Orion Context Broker 2020-10-28Orion Context Broker 2020-10-28
Orion Context Broker 2020-10-28Fermin Galan
 
Orion Context Broker 20210412
Orion Context Broker 20210412Orion Context Broker 20210412
Orion Context Broker 20210412Fermin Galan
 

Similaire à Orion Context Broker (20)

FIWARE Tech Summit - FIWARE NGSIv2 Introduction
FIWARE Tech Summit - FIWARE NGSIv2 IntroductionFIWARE Tech Summit - FIWARE NGSIv2 Introduction
FIWARE Tech Summit - FIWARE NGSIv2 Introduction
 
Orion Context Broker 1.15.0
Orion Context Broker 1.15.0Orion Context Broker 1.15.0
Orion Context Broker 1.15.0
 
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
 
以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界
 
AWS IoT Deep Dive
AWS IoT Deep DiveAWS IoT Deep Dive
AWS IoT Deep Dive
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWARE
 
Building and deploying microservices with event sourcing, CQRS and Docker (Me...
Building and deploying microservices with event sourcing, CQRS and Docker (Me...Building and deploying microservices with event sourcing, CQRS and Docker (Me...
Building and deploying microservices with event sourcing, CQRS and Docker (Me...
 
Orion Context Broker 20230606
Orion Context Broker 20230606Orion Context Broker 20230606
Orion Context Broker 20230606
 
Orion Context Broker 20230602
Orion Context Broker 20230602Orion Context Broker 20230602
Orion Context Broker 20230602
 
Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227
 
Orion Context Broker 20210309
Orion Context Broker 20210309Orion Context Broker 20210309
Orion Context Broker 20210309
 
Orion Context Broker introduction 20240115
Orion Context Broker introduction 20240115Orion Context Broker introduction 20240115
Orion Context Broker introduction 20240115
 
Orion Context Broker 20221220
Orion Context Broker 20221220Orion Context Broker 20221220
Orion Context Broker 20221220
 
Orion Context Broker 2020-10-29
Orion Context Broker 2020-10-29Orion Context Broker 2020-10-29
Orion Context Broker 2020-10-29
 
Orion Context Broker 20180928
Orion Context Broker 20180928Orion Context Broker 20180928
Orion Context Broker 20180928
 
Orion Context Broker 20181218
Orion Context Broker 20181218Orion Context Broker 20181218
Orion Context Broker 20181218
 
Orion Context Broker 20191021
Orion Context Broker 20191021Orion Context Broker 20191021
Orion Context Broker 20191021
 
Orion Context Broker 20190214
Orion Context Broker 20190214Orion Context Broker 20190214
Orion Context Broker 20190214
 
Orion Context Broker 2020-10-28
Orion Context Broker 2020-10-28Orion Context Broker 2020-10-28
Orion Context Broker 2020-10-28
 
Orion Context Broker 20210412
Orion Context Broker 20210412Orion Context Broker 20210412
Orion Context Broker 20210412
 

Plus de TIDChile

Iot presentation JustPeople-ago2015
Iot presentation JustPeople-ago2015Iot presentation JustPeople-ago2015
Iot presentation JustPeople-ago2015TIDChile
 
Ingeniería de Calidad de Software: Retos del siglo XXI
Ingeniería de Calidad de Software: Retos del siglo XXIIngeniería de Calidad de Software: Retos del siglo XXI
Ingeniería de Calidad de Software: Retos del siglo XXITIDChile
 
Fiware IoT Proposal & Community
Fiware IoT Proposal & Community Fiware IoT Proposal & Community
Fiware IoT Proposal & Community TIDChile
 
3° Fiware Overview-Chile
3° Fiware Overview-Chile3° Fiware Overview-Chile
3° Fiware Overview-ChileTIDChile
 
Orion Context Broker Exercises (Part 1)
Orion Context Broker Exercises (Part 1)Orion Context Broker Exercises (Part 1)
Orion Context Broker Exercises (Part 1)TIDChile
 
Fiware IoT- Ejercicios
Fiware IoT- EjerciciosFiware IoT- Ejercicios
Fiware IoT- EjerciciosTIDChile
 
Metamorfosis hacia una empresa ágil
Metamorfosis hacia una empresa ágilMetamorfosis hacia una empresa ágil
Metamorfosis hacia una empresa ágilTIDChile
 
Good practices to build good software
Good practices to build good softwareGood practices to build good software
Good practices to build good softwareTIDChile
 

Plus de TIDChile (8)

Iot presentation JustPeople-ago2015
Iot presentation JustPeople-ago2015Iot presentation JustPeople-ago2015
Iot presentation JustPeople-ago2015
 
Ingeniería de Calidad de Software: Retos del siglo XXI
Ingeniería de Calidad de Software: Retos del siglo XXIIngeniería de Calidad de Software: Retos del siglo XXI
Ingeniería de Calidad de Software: Retos del siglo XXI
 
Fiware IoT Proposal & Community
Fiware IoT Proposal & Community Fiware IoT Proposal & Community
Fiware IoT Proposal & Community
 
3° Fiware Overview-Chile
3° Fiware Overview-Chile3° Fiware Overview-Chile
3° Fiware Overview-Chile
 
Orion Context Broker Exercises (Part 1)
Orion Context Broker Exercises (Part 1)Orion Context Broker Exercises (Part 1)
Orion Context Broker Exercises (Part 1)
 
Fiware IoT- Ejercicios
Fiware IoT- EjerciciosFiware IoT- Ejercicios
Fiware IoT- Ejercicios
 
Metamorfosis hacia una empresa ágil
Metamorfosis hacia una empresa ágilMetamorfosis hacia una empresa ágil
Metamorfosis hacia una empresa ágil
 
Good practices to build good software
Good practices to build good softwareGood practices to build good software
Good practices to build good software
 

Dernier

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

Dernier (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

Orion Context Broker

  • 1. Managing Context Information at large scale (Introduction) Contact twitter @marivibriz Contact email mariavirtudes.brizruiz@telefonica.com (Reference Orion Context Broker version: 0.20.0)
  • 2. Introduction • Context Management in FIWARE • Orion Context Broker • Creating and pulling data • Pushing data and notifications • Standard operations Orion Context Broker 2
  • 3. Being “Smart” requires first being “Aware” • Implementing a Smart Application requires gathering and managing context information • Context information refers to the values of attributes characterizing entities relevant to the application 3
  • 4. Different sources of context need to be handle • Context information may come from many sources: – Existing systems – Users, through mobile apps – Sensor networks (Internet of Things) • Source of info for a given entity and attribute may vary over time 4
  • 5. FIWARE NGSI: Connecting to the Internet of Things • OMA NGSI-9/10 API: a simple yet powerful standard API for managing Context information • The FIWARE NGSI API is RESTful: any web/backend programmer gets quickly used to it Context Broker NGSI APINGSI API GET <Oauth token> /V1/contextEntities/lamp1/attributes/presenceSensor PUT <Oauth token> /V1/contextEntities/lamp1/attributes/status “light on” Setting up the value of attribute “status” to “light on” triggers execution of a function in the IoT device that switches the lamp on Issuing a get operation on the “presenceSensor” attribute enables the application to get info about presence of people near the lamp 5
  • 6. Orion Context Broker • Main functions: – Context management – Context availability management • HTTP and REST-based – XML payload support – JSON payload support • Context in NGSI is based in an entity-attribute model: Attributes • Name • Type • Value Entity • EntityId • EntityType 1 n “has” 6
  • 7. Orion Context Broker in a nutshell Orion Context Broker Context Producers Context Consumers subscriptions update query notify notify update update DB 1026 1026 7
  • 8. GET <cb_host>:1026/version { "orion" : { "version" : "0.17.0", "uptime" : "7 d, 21 h, 33 m, 39 s", "git_hash" : "238c3642ad67899da7c1ff08aba4b5c846b4901a", "compile_time" : "Mon Dec 1 11:27:18 CET 2014", "compiled_by" : "fermin", "compiled_in" : "centollo" } } 8 Orion Context Broker – check health
  • 9. Orion Context Broker Basic Operations Entities • GET /v1/contextEntities/{entityID} • Retrieves an entity • POST /v1/contextEntities/{entityID} • Creates an entity • PUT /v1/contextEntities/{entityID} • Updates an entity • DELETE /v1/contextEntities/{entityID} • Deletes an entity 9
  • 10. Orion Context Broker Basic Operations Attributes • GET /v1/contextEntities/{entityID}/attributes/{attrName} • Retrieves an attribute’s value • POST /v1/contextEntities/{entityID}/attributes/{attrName} • Creates a new attribute for an entity • PUT /v1/contextEntities/{entityID}/attributes/{attrName} • Updates an attribute’s value • DELETE /v1/contextEntities/{entityID}/attributes/{attrName} • Deletes an attribute 10
  • 11. Context Broker operations: create & pull data • Context Producers publish data/context elements by invoking the updateContext operation on a Context Broker. • Context Consumers can retrieve data/context elements by invoking the queryContext operation on a Context Broker Context Consumer queryContext Context Producer updateContext Context Broker 11
  • 12. Quick Usage Example: Car Create 200 OK ... { "contextResponses": [ { "attributes": [ { "name": "speed", "type": "float", "value": "" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } ], "id": “Car1", "isPattern": "false", "type": “Car" } 12 Entity id and type can be included in the URL, e.g. POST /v1/contextEntities/type/Car/id/Car1 POST <cb_host>:1026/v1/contextEntities ... { "id": "Car1", "type": "Car", "attributes": [ { "name": "speed", "type": "float", "value": "98" } ] }
  • 13. Quick Usage Example: Car UpdateContext (1) PUT <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed ... { "value": "110" } 200 OK ... { "code": "200", "reasonPhrase": "OK" } 13
  • 14. Quick Usage Example: Car QueryContext (1) 200 OK ... { "attributes": [ { "name": "speed", "type": "float", "value": "110" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } 14 You can get all the attributes of the entity using the entity URL: GET/v1/contextEntities/type/Car/id/Car1 GET <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed
  • 15. Quick Usage Example: Car UpdateContext (2) PUT <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed ... { "value": "115" } 200 OK ... { "code": "200", "reasonPhrase": "OK" } 15
  • 16. Quick Usage Example: Car QueryContext (2) 200 OK ... { "attributes": [ { "name": "speed", "type": "float", "value": "115" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } 16 GET <cb_host>:1026/v1/contextEntities/type/Car/id/Car1/attributes/speed
  • 17. 200 OK ... { "contextResponses": [ { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": ”integer", "value": "" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } ], "id": "Room1", "isPattern": "false", "type": "Room" } Quick Usage Example: Room Create (1) POST <cb_host>:1026/v1/contextEntities ... { "id": "Room1", "type": "Room", "attributes": [ { "name": "temperature", "type": "float", "value": "24" }, { "name": "pressure", "type": “integer", "value": "718" } ] } 17
  • 18. 200 OK ... { "contextResponses": [ { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": "integer", "value": "" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } ], "id": "Room1", "isPattern": "false", "type": "Room" } Quick Usage Example: Room UpdateContext (1) 18 PUT <cb_host>:1026/v1/contextEntities/type/Room/id/Room1 ... { "attributes": [ { "name": "temperature", "type": "float", "value": "25" }, { "name": "pressure", "type": "integer", "value": "720" } ] }
  • 19. Quick Usage Example: Room QueryContext (1) 19 200 OK ... { "attributes": [ { "name": "temperature", "type": "float", "value": "25" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } GET <cb_host>:1026/v1/contextEntities/type/Room/id/Room1/attributes/temperature
  • 20. Quick Usage Example: Room QueryContext (2) 20 200 OK ... { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "25" }, { "name": "pressure", "type": ”integer", "value": "720" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } GET <cb_host>:1026/v1/contextEntities/type/Room/id/Room1
  • 21. 200 OK ... { "contextResponses": [ { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": ”integer", "value": "" } ], "statusCode": { "code": "200", "reasonPhrase": "OK" } } ], "id": "Room1", "isPattern": "false", "type": "Room" } Quick Usage Example: Room Create (2) POST <cb_host>:1026/v1/contextEntities ... { "id": "Room2", "type": "Room", "attributes": [ { "name": "temperature", "type": "float", "value": "29" }, { "name": "pressure", "type": “integer", "value": "730" } ] } 21
  • 22. Quick Usage Example: Room QueryContext (3) 22 POST <cb_host>:1026/v1/queryContext ... { "entities": [ { "type": "Room", "isPattern": "true", "id": "Room.*" } , "attributes": [ "temperature" ] ] } 200 OK ... { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "25" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } }, { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "29" } ], "id": "Room2", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] }
  • 23. Context Broker operations: push data • Context Consumers can subscribe to receive context information that satisfy certain conditions using the subscribeContext. Such subscriptions may have a duration. • The Context Broker notifies updates on context information to subscribed Context Consumers by invoking the notifyContext operation they export subscription_id = subscribeContext (consumer, expr, duration) Context Consumer notifyContext (subscription_id, data/context) Context Broker Application 23
  • 24. Quick Usage Example: Subscription POST <cb_host>:1026/v1/subscribeContext … { "entities": [ { "type": "Room", "isPattern": "false", "id": "Room1" } ], "attributes": [ "temperature" ], "reference": "http://<host>:<port>/publish", "duration": "P1M", "notifyConditions": [ { "type": "ONCHANGE", "condValues": [ "temperature" ] } ], "throttling": "PT5S" } 200 OK ... { "subscribeResponse": { "duration": "P1M", "subscriptionId": "51c0ac9ed714fb3b37d7d5a8", "throttling": "PT5S" } } 24 ONTIMEINTERVAL & ONCHANGE Upcoming: ONVALUE
  • 25. 25 19 Quick Usage Example: Notification 25
  • 26. POST http://<host>:<port>/publish … { "subscriptionId" : "51c0ac9ed714fb3b37d7d5a8", "originator" : "localhost", "contextResponses" : [ { "contextElement" : { "attributes" : [ { "name" : "temperature", "type" : "float", "value" : "19" } ], "type" : "Room", "isPattern" : "false", "id" : "Room1" }, "statusCode" : { "code" : "200", "reasonPhrase" : "OK" } } ] } Quick Usage Example: Notification 26
  • 27. Orion Context Broker Standard Operations Functions Operations NGSI10 • Query, • Update and • Subscribe to context elements • updateContext • queryContext • subscribeContext • updateContextSubscription • unsubscribeContextSubscription 27 • They are equivalent to previous convenience operations in functionality • All them use POST as verb, including the parameters in the payload • More expressive than convenience operations. Some advance functionality is only supported with standar operations (e.g. geo-aware query) • They are not a substitute but a complement to convenience operations
  • 28. Would you like to know more? • The easy way – Orion User Manual: google for “Orion FIWARE manual” and use the first hit – Orion Catalogue page: google for “Orion FIWARE catalogue” and use the first hit • References – This presentation • http://www.slideshare.net/fermingalan/fiware-managing-context- information-at-large-scale – Orion Catalogue: • http://catalogue.fiware.org/enablers/publishsubscribe-context- broker-orion-context-broker – Orion support trhough StackOverflow • Ask your questions using the “fiware-orion” tag • Look for existing questions at http://stackoverflow.com/questions/tagged/fiware-orion 28
  • 29. Managing Context Information at large scale (Advanced Topics) (Reference Orion Context Broker version: 0.20.0) Contact twitter @marivibriz Contact email mariavirtudes.brizruiz@telefonica.com
  • 30. Advanced Features • Pagination • Compound attribute values • Geo-location • Metadata • Registrations & context providers • Multitenancy • Entity service paths Orion Context Broker 30
  • 31. • Pagination helps clients organize query and discovery requests with a large number of responses. • Three URI parameters: – limit • Number of elements per page (default: 20, max: 1000) – offset • Number of elements to skip (default: 0) – details • Returns total elements (default: "off") Pagination 31
  • 32. Pagination • Example, querying the first 100 entries: POST <orion_host>:1026/v1/queryContext?limit=100&details=on • The first 100 elements are returned, along with the following errorCode in the response: "errorCode": { "code": "200", "details": "Count: 322", "reasonPhrase": "OK" } • Now we now there are 322 entities, we can keep querying the broker for them: – POST <orion_host>:1026/v1/queryContext?offset=100&limit=100 – POST <orion_host>:1026/v1/queryContext?offset=200&limit=100 – POST <orion_host>:1026/v1/queryContext?offset=300&limit=100 32
  • 33. Compound Attribute Values • An attribute can have a structured value. Vectors and key-value maps are supported. • It maps directly to JSON's objects and arrays. 33
  • 34. Compound Attribute Values • Example: we have a car whose four wheels' pressure we want to represent as a compound attribute for a car entity. We would create the car entity like this: { "contextElements": [ { "type": "Car", "isPattern": "false", "id": "Car1", "attributes": [ { "name": "tirePressure", "type": "kPa", "value": { "frontRight": "120", "frontLeft": "110", "backRight": "115", "backLeft": "130" } } ] } ], "updateAction": "APPEND" } 34
  • 35. Metadata • Users may attach metadata to attributes • Reserved metadatas: ID, Location, creDate and modDate • Examples: 35 … "attributes": [ { "name": "temperature", "type": "float", "value": "26.5", "metadatas": [ { "name": "accuracy", "type": "float", "value": "0.9" } ] } ] … … "attributes": [ { "name": "temperature", "type": "float", "value": "26.5", "metadatas": [ { "name": "average", "type": "float", "value": "22.4" } ] } ] …
  • 36. Complete NGSI Model Attributes • Name • Type • Value Entity • EntityId • EntityType 1 n “has” Metadata • Name • Type • Value1 n “has” 36
  • 37. Geo-location • Entities can have an attribute that specifies its location – Using a "location" metadata • Example: create an entity called Madrid …and create a couple more towns: • Leganés • Alcobendas POST <cb_host>:1026/v1/updateContext { "contextElements": [ { "type": "City", "isPattern": "false", "id": "Madrid", "attributes": [ { "name": "position", "type": "coords", "value": "40.418889, -3.691944", "metadatas": [ { "name": "location", "type": "string", "value": "WSG84" } ] } ] } ], "updateAction": "APPEND" } 37
  • 39. Geo-location – Circle 39 POST <cb_host>:1026/v1/queryContext … { "entities": [ { "type": "City", "isPattern": "true", "id": ".*" } ], "restriction": { "scopes": [ { "type" : "FIWARE::Location", "value" : { "circle": { "centerLatitude": "40.418889", "centerLongitude": "-3.691944", "radius": "13500" } } } ] } }
  • 40. Geo-location – Inverse Circle 40 POST <cb_host>:1026/v1/queryContext … { "entities": [ { "type": "City", "isPattern": "true", "id": ".*" } ], "restriction": { "scopes": [ { "type" : "FIWARE::Location", "value" : { "circle": { "centerLatitude": "40.418889", "centerLongitude": "-3.691944", "radius": "13500", "inverted": "true" } } } ] } }
  • 41. Orion Context Broker - Operations Functions Operations NGSI9 • Register, • Search and • Subscribe for context sources • registerContext • discoverContextAvailability • subscribeContextAvailability • updateContextAvailabilitySubscription • unsubscribeContextAvailability NGSI10 • Query, • Update and • Subscribe to context elements • updateContext • queryContext • subscribeContext • updateContextSubscription • unsubscribeContextSubscription 41
  • 42. Would you like to know more? • The easy way – Orion User Manual: google for “Orion FIWARE manual” and use the first hit – Orion Catalogue page: google for “Orion FIWARE catalogue” and use the first hit • References – This presentation • http://www.slideshare.net/fermingalan/fiware-managing-context- information-at-large-scale – Orion Catalogue: • http://catalogue.fiware.org/enablers/publishsubscribe-context- broker-orion-context-broker – Orion support through StackOverflow • Ask your questions using the “fiware-orion” tag • Look for existing questions at http://stackoverflow.com/questions/tagged/fiware-orion 42
  • 45. More on Convenience Operations Subscriptions • POST /v1/contextSubscriptions • Creates a subscription • PUT /v1/contextSubscriptions/{subID} • Updates a subscription • DELETE /v1/contextSubscriptions/{subID} • Cancel a subscription 45
  • 46. More on Convenience Operations Entity Types • GET /v1/contextTypes • Retrieve a list of all entity types currently in Orion, including their corresponding attributes • GET /v1/contextTypes/{typeID} • Retrieve attributes associated to an entity type PRO TIP GET /v1/contextTypes?collapse=true Retrieves a list of all entity types without attribute info 46

Notes de l'éditeur

  1. Orion Context Broker is an implementation of a context information broker with persistent storage It implements OMA NGSI9/10 specification NGSI9 is about context information availability (i.e. sources of context information) management NGSI10 is about context information itself