arcgis geoevent extension for server - an introduction · partner. cesium * activemq. esri gallery....

32
ArcGIS GeoEvent Extension for Server: An Introduction Thomas Paschke [email protected] Greg Tieman [email protected]

Upload: others

Post on 24-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

ArcGIS GeoEvent Extension for Server:An Introduction

Thomas [email protected]

Greg [email protected]

Page 2: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Real-time in a web appGeoEvent Game

Interactive Demo

links.esri.com/geg

Page 3: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

What is Real-Time GIS?

Page 4: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

GIS DataWhat has happened, what is happening, what will happen

The ‘current’ snapshot is outdated almost as soon as it’s created…

Credit: iStockphoto/chris_lemmens

Page 5: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

FeaturesChallenge #1

ApplicationsNetwork Sensor

Warehouse Item

110°

Storm

Wind

Temperature

Earthquake

Wild Fire

Police Person

Ambulance

Police Car

Each event represents the latest state of the sensor…

Real-Time GIS DataContinuous stream of events flowing from a data feed

Page 6: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Features

Challenge #2

Continuous Analysis

InsideBoundary

VesselAlert

Applications

Real-Time AnalyticsWhat fishing vessels are inside designated ‘no fishing’ zones?

Page 7: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Challenge #3

Continuous Analysis

Features

OutsideBoundary

Child

Applications

Real-Time Notifications and AlertingTell a parent when their child leaves school property

Page 8: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Real-Time GISIntegration and exploitation of streaming data

• Integrates real-time streaming data into ArcGIS

• Performs continuous processing and real-time analytics

• Sends updates and alerts to those who need it where they need it

ArcGIS Server

GeoEvent Extension

DesktopWeb Device

Page 9: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Working with Real-Time Data

Page 10: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Working with Real-Time DataMaking features come alive• Connect an output to your feature• Import the schema of your feature as a GeoEvent Definition• Configure an input to receive real-time data• Author and publish a GeoEvent Service• Visualize your real-time feature

GeoEvent Extension

Out

puts

Inpu

ts

GeoEvent Services

ArcGIS Server

Operations Dashboard for ArcGIS

operation views

web maps

ArcGIS Online /Portal for ArcGIS

feature services

GeoEvent Definitions

Page 11: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Worker SafetyMaking Features Come Alive

Demo

Page 12: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

How do I get my real-time data into ArcGIS?Easily integrate real-time streaming data into ArcGIS using an Input Connector

You can createyour own

connectors.

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

Poll an ArcGIS Server for Features

Poll an external website for GeoJSON, JSON, or XML

Receive Features, GeoJSON, JSON, or XML on a REST endpoint

Receive RSS

Receive GeoJSON or JSON on a WebSocket

Receive Text from a TCP or UDP Socket

Subscribe to an external WebSocket for GeoJSON or JSON

Watch a Folder for New CSV or JSON Files

Out

of t

he B

ox REST

.csv

WS

WS

HTTP

Esri

Gal

lery

ActiveMQ

CAP

GeoMessage

Exploitation Support Data

Cursor-on-Target

RabbitMQ

NMEA 0183

Kafka

Sierra Wireless (RAP)

Instagram

KML

*

*

Trimble (TAIP)

Twitter

Part

ner G

alle

ry

CompassLDE

enviroCar

GNIP

FAA (ASDI)

exactEarth AIS

Zonar

Valarm

Networkfleet

OSIsoft ***

*

*

• Use an existing connector

Page 13: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Sending Real-Time DataEasily disseminate notifications, alerts, and updates using an Output Connector

You can createyour own

connectors.

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

Out

of t

he B

oxAdd or Update a feature

Publish Text to a UDP Socket

Send a Text Message

Send an Email

Push Text to an external TCP Socket

Push GeoJSON or JSON to an external WebSocket

Push GeoJSON or JSON to an external Website

Send an Instant Message

Send Features to a Stream Service

Write to a CSV, GeoJSON, or JSON File .csv

WS

im

HTTP

CESIUM

Part

ner

*

ActiveMQ

Esri

Gal

lery

Cursor-on-Target

Hadoop

Kafka

MongoDB

MQTT

*

RabbitMQ

Twitter

Page 14: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Applying Real-Time Analytics

Page 15: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Applying real-time analyticsGeoEvent Services• A GeoEvent Service defines the flow of GeoEvents,

- The Filtering and Processing steps to perform- what input(s) to apply them to- and what output(s) to send the results to

Page 16: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Applying real-time analyticsGeoEvent Filtering• A Filter eliminates GeoEvents based on an expression.

=

=

=

=

Page 17: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Attribute, Spatial, and Combined ExpressionsGeoEvent Filtering

Demo

Page 18: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Applying real-time analyticsGeoEvent Processing

You can createyour own

processors.

• You can perform continuous analytics on GeoEvents as they are received using a processor.

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

Buffer Creator

Convex Hull Creator

Difference Creator

Envelope Creator

Field Calculator

Field Enricher

Field Mapper

GeoTagger

Incident Detector

Intersector

Projector

Simplifier

Symmetric Difference

Track Gap Detector

Field Reducer Union Creator

Out

of t

he B

oxAdd XYZ

Esri

Gal

lery

Bearing

Ellipse

Event Volume Control

Extent Enricher

Field Grouper

GeoNames Lookup

Range Fan

Reverse Geocoder

Service Area Creator

Symbol Lookup

Track Idle Detector

Unit Converter

Visibility

Motion Calculator Query Report

Page 19: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Incident DetectionGeoEvent Processing

Demo

Page 20: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Additional Real-Time Spatial AnalyticsSpatial filtering

intersects disjointtouches containscrosses equalsoverlaps within

• Spatial operators:inside outsideenter exit

New at 10.3

Page 21: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Additional Real-Time Spatial AnalyticsExample – Impending weather notifications

Page 22: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Additional Real-Time Spatial AnalyticsGeoFence scope

• All GeoFences• Any GeoFence

• Specify a GeoFence scope: Any or All

Page 23: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Additional Real-Time Spatial AnalyticsExample – Territory adherence alerting

Page 24: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Additional Real-Time Spatial AnalyticsExample – Convoy separation alerting

Page 25: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Real-Time in Web Maps

Page 26: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Two patterns

GeoEvent Extension

ArcGIS Server

YourApplications

Stream Layer

Map ServicesFeature Services

Feature Layer

feature layers

Update a FeatureAdd a Feature

EGDB

Polling(Pull)

Stream Services

Getting Real-Time data into Web Apps

• Feature layers pull from feature services- Web apps poll to get periodic updates- Must be backed by an enterprise geodatabase (EGDB)

• Stream layers subscribe to stream services - Web apps subscribe to immediately receive data- Low latency and high throughput

Send Features to a Stream Service

Page 27: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Real-Time GIS

ArcGIS Server

GeoEvent Extension

DesktopWeb Device

Stream Service

Stream Layer

Stream Layer support coming later!

Page 28: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

GeoEvent Extension: An IntroductionSummary

• ArcGIS is a dynamic platform that enables continuous analytics and real-time visualization for better understanding of our world.

• The ArcGIS GeoEvent Extension for Server allows you to:- know what is happening, as it happens- react and make smarter decisions faster- be notified when events of interest occur

Page 29: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Other GeoEvent Extension (GEx) Sessions• GEx: An Introduction

- Tue 1:00-2:00pm, Pasadena/Sierra/Ventura

• GEx: Building Real-Time Web Applications- Tue 2:30-3:30pm, Mesquite B- Fri 8:30-9:30am, Smoketree A - E

• GEx: Creating Connectors with the SDK- Tue 4:00-5:00pm, Mesquite B

• GEx: Creating Processors with the SDK- Tue 5:30-6:30pm, Mesquite B

• GEx: Best Practices- Wed 2:30-3:30pm, Catalina/Madera

• GEx: Use Cases for Applying Real-Time Analytics- Thu 10:30-11:30am, Mojave Learning Center- Fri 1:00-2:00pm, Mesquite GH

• GEx: Working with Community Connectors- Thu 5:30-6:30pm, Demo Theater 2 - Oasis 1

• The Road Ahead: ArcGIS for Server and Portal for ArcGIS- Fri 8:30-9:30am, Primrose C/D

Page 30: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Where to learn more?Resources• To learn more, visit the ‘Get Started’ area of the GeoEvent Extension product page:

- http://links.esri.com/geoevent- Introduction- Notifications- Stream Services- RSS, HTTP, Files- REST Admin API- Clustering

• Ask questions on the GeoEvent Forum:- https:// links.esri.com/geoevent-forum

Page 31: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Thank you!

Please fill out thesession survey at:

www.esri.com/RateMyDevSummitSession

Page 32: ArcGIS GeoEvent Extension for Server - An Introduction · Partner. CESIUM * ActiveMQ. Esri Gallery. Cursor -on Target. Hadoop. Kafka. MongoDB. MQTT * RabbitMQ. Twitter. Applying real-time

Questions / Feedback?

http://links.esri.com/geoeventhttps://links.esri.com/geoevent-forum

To learn more: