34
Patrick Hammons Haoliang Yu Esri Koop: Using Third Party Data Sources in ArcGIS

Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Patrick Hammons

Haoliang Yu

Esri Koop: Using Third Party Data

Sources in ArcGIS

Page 2: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Agenda

• What is Koop?

• Request lifecycle and plugins

• Koop CLI

• Demo: building Koop app and provider

Page 3: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

What is Koop?

A web server for on-the-fly transformation of geospatial

data

• Apache licensed: all components freely reusable

• Node.js/Express.js

• Components published with NPM package manager

• Plugin architecture

• Supports GeoServices spec: the ArcGIS Feature

Server API

Page 4: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Why the name ‘Koop’?

FBI Special Agent Dale Cooper

Page 5: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop-Server

Koop-ProviderPlugins

Conceptual Overview

Koop-OutputPlugins

AWS S3

Pro

SceneViewer

EarthOnline

JavaScriptAPI

Clients

Page 6: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

When to use Koop

• You want to use data in ArcGIS clients

• Data format is tied to existing business application

• Data is controlled by a third party

• No existing SDE support

• Data delivery in multiple formats

Page 7: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop-Server

Koop-Providers

Demo

Online

ArcGIS

Koop-Outputs

AWS S3

Page 8: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop Demo

Page 9: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Anatomy of a Koop request

/craigslist/seattle/apartments/FeatureServer/0/query

/craigslist/:host/:id/FeatureServer/:layer/:method

Provider fragment Output fragment

Page 10: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop request lifecycle

ProviderOutput

Koop Server

Client Remote

API

GeoJSONAPI

dataEsri

JSON

Page 11: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Cache plugin

ProviderOutput

CacheKoop Server

Client Remote

API

Page 12: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Cache plugin

ProviderOutput

CacheKoop Server

Client Remote

API

Page 13: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Authorization Plugin

ProviderOutput Auth

Plugi

n

Koop Server

Client Remote

API

Page 14: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop CLI

A command line dev tool for Koop (Haoliang Yu)

• Generate boilerplate for Koop projects

• App and all plugin types

• Install plugins and automate plugin registration

• Create dev server (app/plugin)

• Watch mode

• Debug mode

https://github.com/koopjs/koop-cli

Page 15: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Commands

Page 16: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Try it out

• Build a Koop app

• Build a Koop provider

Page 17: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build an app

Page 18: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider

1. Construct remote URL and make request to API

2. Translate result to GeoJSON and decorate with metadata

3. Fire callback with the GeoJSON

4. Handle any errors

Page 19: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider - research

Example: connecting to the Socrata API

host id filters

response formatThink about Koop’s URL: /provider/:host/:id/FeatureServer/:layer/:method

Page 20: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider - boilerplate

Use koop-cli to generate provider boilerplate

Page 21: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – the getData method

Page 22: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – construct remote URL

Page 23: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – make remote request

Page 24: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – translate to GeoJSON

Page 25: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – translate to GeoJSON

Page 26: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – translate to GeoJSON

Page 27: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – add metadata

Page 28: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – add metadata

https://koopjs.github.io/docs/usage/provider#setting-provider-metadata-in-

getdata

Page 29: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Build a provider – fire callback

Page 30: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop Road Map

• Provider

• AWS Athena, AGOL, AWS S3 Select++, Elasticsearch++

• Custome data transformation

• Data catalog

• Output

• Vector Tiles++, WMS++, WFS++

• More, better docsContribute!

Page 31: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Koop Resources

• Github: https://github.com/koopjs

• Documentation - https://koopjs.github.io

• Koop CLI

• Demo code

• @koopjs/provider-socrata

• koop-app-example

Page 32: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Questions?

Patrick Hammons

[email protected]

Haoliang Yu

[email protected]

Page 33: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Print Your Certificate of Attendance

Print Stations Located in 150 Concourse Lobby

Tuesday12:30 pm – 6:30 pm

Expo

Hall B

5:15 pm – 6:30 pm

Expo Social

Hall B

Wednesday10:45 am – 5:15 pm

Expo

Hall B

6:30 pm – 9:30 pm

Networking Reception

Smithsonian National Museum

of Natural History

Page 34: Esri Koop: Using Third Party Data Sources in ArcGIS€¦ · Esri Koop: Using Third Party Data Sources in ArcGIS Author: Esri Subject: 2020 Federal GIS Conference Presentation Keywords:

Download the Esri

Events app and find your event

Select the session

you attended

Scroll down to

“Survey”

Log in to access the

survey

Complete the survey

and select “Submit”

Please Share Your Feedback in the App