Select to view content in your preferred language

Need guidance with regards to Stream Layer Output --

563
1
Jump to solution
09-13-2023 07:05 AM
JeffSilberberg
Frequent Contributor

So I am building my first Stream Layer output in a Velocity Analtic.  

I Go to Add Node, Outputs, Stream Layer --

  I have two options for "Stream Layer Configuration"  

  • Also, publish a feature layer that keeps the latest observation for each Track ID
  • Select a related feature layer to provide geometry when the stream layer is drawn in a map

They do not seem to be mutually exclusive. But with the second one checked I go to a "Select existing Feature Layer" dialog.  Given this is a new object with a new schema, I am guessing I need the first option not the second.  But what exactly does that do for me, and what if I don't select either of these options? 

There is a lot to configure downstream in terms of Classifications, Symbology, and Popups.  So I am looking for some input on the base way to proceed with the least added effort upstream. 

TIA -- 

 

 

0 Kudos
1 Solution

Accepted Solutions
PeterNasuti
Esri Contributor

@JeffSilberberg Thanks for the question. These options are not mutually exclusive.

  • Publish a feature layer that keeps the latest observation for each Track ID
    • In addition to the stream layer, Velocity also publishes a feature layer. For each unique value of the user-defined Track ID field, Velocity will keep the most recent observation.
    • This is helpful for a map/application of "where is my moving entity right now?"
  • Select a related feature layer to provide geometry when the stream layer is drawn in a map
    • This is common for "stationary sensor" scenarios where location/geometry is fixed, but attribute values continue to change. 
    • It would be excessive to repeatedly send geometry data through with every sensor observation.
    • So, a user would configure a feature layer that has entity locations. There would be a join field that matches values from the feed join field.
    • You select your related feature layer in the feed interface then choose your join fields to match up the values.
    • Esri web clients like the map viewers and more are smart enough to look at the stream layer definition, also load the data from the related feature layer, and render the features as attributes and geometry when the Velocity feed is just processing the attribute data updates.

Related documentation: https://doc.arcgis.com/en/iot/disseminate-and-notify/stream-layer.htm

View solution in original post

1 Reply
PeterNasuti
Esri Contributor

@JeffSilberberg Thanks for the question. These options are not mutually exclusive.

  • Publish a feature layer that keeps the latest observation for each Track ID
    • In addition to the stream layer, Velocity also publishes a feature layer. For each unique value of the user-defined Track ID field, Velocity will keep the most recent observation.
    • This is helpful for a map/application of "where is my moving entity right now?"
  • Select a related feature layer to provide geometry when the stream layer is drawn in a map
    • This is common for "stationary sensor" scenarios where location/geometry is fixed, but attribute values continue to change. 
    • It would be excessive to repeatedly send geometry data through with every sensor observation.
    • So, a user would configure a feature layer that has entity locations. There would be a join field that matches values from the feed join field.
    • You select your related feature layer in the feed interface then choose your join fields to match up the values.
    • Esri web clients like the map viewers and more are smart enough to look at the stream layer definition, also load the data from the related feature layer, and render the features as attributes and geometry when the Velocity feed is just processing the attribute data updates.

Related documentation: https://doc.arcgis.com/en/iot/disseminate-and-notify/stream-layer.htm