GeoEvent Extension für Entwickler - esri.de/media/esri-germany-group/common/files/gi... · Kafka....

Post on 01-May-2018

225 views 2 download

Transcript of GeoEvent Extension für Entwickler - esri.de/media/esri-germany-group/common/files/gi... · Kafka....

GeoEvent Extension für Entwickler

20. Mai 2015

GeoEvent Extension für Entwickler

Christine BrunnerEsri Deutschland GmbH, Kranzberg

2

#geodev

3

Desktop Web Device

Server Online-Inhalte und Services

EinfachIntegriertOffen

In der Cloud … . . . und lokal

Mapping, Analysen und Verwaltung geographischer InformationenDie ArcGIS Plattform

4

Web Native GIS

5

GIS Daten

Geo Daten stellen in der Regel einen Zustand dar: “Vergangenheit”, “Gegenwart” oder “Zukunft”.

6

Raum-Zeitliche DatenVeränderlich

Wachstumsänderung

• Bevölkerung• Agrarflächen• Verteilung• Nutzflächen• Wahlergebnisse

DynamischRäumliche Bewegung

• Flugzeuge• UAV• Fahrzeuge• Tiere• Wirbelstürme

DiskretIrgend etwas passiert

irgendwo

• Kriminalität• Blitzeinschläge• Unfälle

StationärRäumlich nicht

veränderbar

• Wetter Stationen• Verkehrs Sensorik• Luft Qualität• Windräder• Smart Meter• Pegelstände

7

Raum-Zeitliche Daten

Darstellung geographischer Datenzu einem bestimmten Zeitpunkt.

1

1

1

A

AA

33

3

Gruppierung nach Zeit Gruppierung nach Attributen

Darstellung von Tracks

AM

PM

8

Ein kurzer Überblick

9

Real-Time GISIntegration und Verteilung von Streaming Daten

GeoEvent Extension

10.3

Stream Service

Stream Layer

Desktop Web Device

Server Online-Inhalte und Services

integriert real-time streaming Daten in ArcGIS

kontinuierliche Prozessierung undEcht-Zeit Analyse

Versenden von Updates und Statusmeldungen zu den Usern, die sie benötigen - wo sie die Informationen benötigen

10

Funktionsweise Output

GeoEvent Extention

Input

Prozessierung und Analyse

11

Poll an ArcGIS Server for FeaturesHTTP

Empfang von EchtzeitdatenIntegration von Echtzeit-Daten in ArcGIS durch einen Input Connector

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

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, GeoJSON, or JSON Files

Out

of t

he B

ox REST

.csv

WS

WS

HTTP

You can createyour own

connectors.

Esri

Gal

lery

ActiveMQ

CAP

Instagram

Exploitation Support Data

Cursor-on-Target

RabbitMQ

NMEA 0183

MQTT

Sierra Wireless (RAP)

KML

Kafka *

Trimble (TAIP)

Twitter

Part

ner G

alle

ry

CompassLDE

enviroCar

GNIP

FAA (ASDI)

exactEarth AIS

Zonar

Valarm

Networkfleet

OSIsoft ***

*

*

12

Empfang von EchtzeitdatenInput Connector = Transporter + Adaptor

GeoEvent Extension

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

WebSocket JSON

Connectors Transport Adapter

HTTP GeoJSON

Feature Service

Transports

File

HTTP

HTTP+BasicAuth

HTTP+OAuth

TCP

UDP

WebSocket

Receive JSON on a WebSocket

Receive GeoJSON on a REST endpoint

WS

REST

Feature-JSON

Adapters

GeoJSON

JSON

RSS

Text

XML

Esri

Gal

lery ActiveMQ

IRC

Kafka

MQTT*

RabbitMQ

Twitter

CAP

Cursor-on-Target

GeoMessage

Instagram

NMEA

Sierra Wireless (RAP)

Trimble (TAIP)

Twitter

VMF

Esri

Gal

lery

13

Input Connector

Transport: WIE kommen die Daten ins System

Adapter: Um WELCHE Daten handelt es sich

TCP Transport Text Adapter

Input (Receive text from a TCP Socket)

StartStop

Byte [ ]GeoEvent

GeoEvent Services

14

GeoEvent Definition

Zuweisung der GeoEvents

15

Senden von Echtzeitdaten

Einfache Bereitstellung von

Nachrichten

Alarmmeldungen

Status Updates

You can createyour own

connectors.

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

Out

of t

he B

ox

Add 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

16

Senden von Echtzeitdaten Output Connector = Adapter + Transport

GeoEvent Extension

GeoEvent Extension

Inpu

ts

Out

puts

GeoEvent Services

Message Formatter SMTP

Connectors TransportAdapter

Feature-JSON Stream Service

Send an Email

Send Features to a Stream Service

Feature Service

Transports

File

HTTP

HTTP+BasicAuth

HTTP+OAuth

SMS

SMTP

Stream Service

TCP

UDP

WebSocket

XMPP

Cache

Adapters

Feature-JSON

GeoJSON

JSON

Message Formatter

RSS

Text

WebSocket

Cursor-on-Target

Esri

Gal

lery

CESIUM

Part

ner

*

ActiveMQ

Hadoop

IRC

Kafka

MongoDB

MQTT

*

RabbitMQ

TCP-Squirt

Twitter

Esri

Gal

lery

17

Echtzeit Analysen

Mit Hilfe von ProzessorenYou can create

your ownprocessors.

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

ox

Add 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

18

Erweiterungsmöglichkeiten

19

Erweiterungsmöglichkeiten der GeoEvent Extension

Eigene Connectoren und Processoren können mit dem GeoEventSoftware Development Kit (SDK) erstellt werden

Your processors

Yourconnectors

Your connectors

GeoEvent Processor

Inpu

ts

Out

puts

GeoEvent Services

20

Software Development Kit (SDK)

api: JavaDoc

repository: Lokales Maven Repository

samples: Beispiel Prozessoren und Connectoren

GeoEvent Developer Guide

21

Demo: Reverse Geocoding Processor

23

Die REST API

24

REST API

Informationen abfragen

Dienste administrieren

http://<Rechnername>:6180/geoevent/rest/

https://<Rechnername>:6143/geoevent/admin

25

Demo: Concert Telling Tweets

26

Stream Service

27

Feature Services vs. Stream Services

Feature layers pull from feature services

Periodische Abfragen der Anwendung nach Updates

Daten befinden sich in einer Enterprise geodatabase (EGDB)

Stream layers subscribe to stream services

Anwendung meldet sich an um Daten sofort zu erhalten

Keine Verzögerung und hoher Durchsatz

GeoEvent Extension

ArcGIS Server

YourApplications

Map ServicesFeature Services

feature layers

Update a FeatureAdd a Feature

EGDB

Polling(Pull)

Stream ServicesSend Features to a Stream Service

28

Stream Layer

Anmeldung beim Stream Services

Sofort Daten erhalten und anzeigen

Konfigurierbare Symbologie

Direkter Datenzugriff

Filterung nach

Bereichen

Attirbutwerte

Stream Service verwendet Web Socket

Web Socket Protokoll muss im Netzwerk unterstützt werden

Browser muss Web Socket unterstützen

10 +6 + 6 +

14 +

29

Einsatzmöglichkeiten Stream Layer

Im ArcGIS API for JavaScript enthalten

Web Map in ArcGIS Online oder Portal for ArcGIS

Web Map teilen

Web App Template

Web App Builder

Eigene Anwendung mit dem ArcGIS API for JavaScript

Erweiterung der ArcGIS Runtime SDKs

Operations Dashboard for ArcGIS

ArcGIS Pro30

Demo: Stream Layer

https://developers.arcgis.com/javascript/jsapi/streamlayer-amd.html

31

Community

32

GitHub

https://esri.github.io/#GeoEvent

https://github.com/EsriDE

34

GeoNet

https://geonet.esri.com/community/gis/enterprise-gis/geoevent

https://geonet.esri.com/groups/real-time-gis/activity

https://geonet.esri.com/groups/geodev-germany

35

Meetups: meetup.com/GeoDev-Meet-Up-Group-Deutschland/

36

DevSummit Europe: esri.com/events/devsummit-europe

37

Esri Deutschland GmbHRingstraße 7 85402 Kranzberg

Telefon +49 89 207 005 1200gistalk@esri.deesri.de/gistalk

Danke!

38