concurrent web map cache server a vision for indianamap

25
1 - 1 Concurrent Web Map Cache Server A Vision for IndianaMap Zao Liu, Marlon Pierce, Geoffrey Fox Community Grids Laboratory Indiana University Neil Devadasan The Polis Center IUPUI October 28 2006

Upload: tatiana-stanley

Post on 31-Dec-2015

22 views

Category:

Documents


0 download

DESCRIPTION

Concurrent Web Map Cache Server A Vision for IndianaMap. Zao Liu, Marlon Pierce, Geoffrey Fox Community Grids Laboratory Indiana University Neil Devadasan The Polis Center IUPUI October 28 2006. Where are we today?. - PowerPoint PPT Presentation

TRANSCRIPT

1 - 1

Concurrent Web Map Cache Server A Vision for IndianaMap

Zao Liu, Marlon Pierce, Geoffrey Fox

Community Grids Laboratory

Indiana University

Neil Devadasan

The Polis Center

IUPUI

October 28 2006

1 - 2

Where are we today? There are several different products for creating on-

line maps and allowing interaction with Geographical Information System (GIS) data bases.• ESRI, Autodesk, Open Geospatial Consortium

• These follow a classic user driven request/response style model.

Google Maps (released in 2005).• Highly interactive AJAX style clients replaced stodgy user-

driven request/response.

• See http://www.collab-ogce.org/GGF15 Workshop for more information.

• More importantly, any one could use the JavaScript API to make really sophisticated applications.

1 - 3

Where are we today? The current IndianaMap

http://129.79.145.5/arcims/igic/viewer.htm uses data collected by the Indiana Geological Survey (IGS)

IGS periodically collects the best available State and Federal data and authors the data on a central web server

The web service includes the 2005 Statewide Orthophotography, INDOT and TIGER roads, USGS 10 foot contours, and Census boundaries

1 - 4

Federating GIS Servers Around Indiana Indiana has 92 counties

• Many counties have public GIS map servers.

Examples• ESRI ArcIMS and ArcMap Server

Marion, Vanderburgh, Hancock, Kosciusco, Huntington, Tippecanoe

• Autodesk MapGuide Hamilton, Hendricks, Wayne

• WTH Mapserver™ Web Mapping Application (OGC Minnesota Map Server)

Fulton, Cass, Daviess, City of Huntingburg

Also there are state-wide GIS servers• Orthophotography from Indiana University• Indiana Geological Survey

These are not normally interoperable.

1 - 5

IndianaMap vs local county data

10 foot contours (1990) 1 foot contours (2004) Local roads INDOT (2003) Local roads (2006) No parcels Parcels (2006) No point addresses Point addresses (2006) Jurisdictional boundaries (2001) Jurisdictional boundaries

(2006)

1 - 6

Building a Hybrid System Google Maps provide a highly interactive user interface and

capabilities (geolocations, directions) But GIS services have much more detailed local information.

• Indiana has orthophotography with much higher zoom levels than Google maps.

http://www.indiana.edu/~gisdata/05orthos.html

• Local county servers have many interesting map layers not in Google

Parcels/property lines, school district lines

• And these tie into feature services with interesting data like pinpoint addresses, tax assessments, etc.

So obviously it makes sense to adopt the Google approach but enhance it with local data.

• Ultimately we hope to ties this into representations of scientific data generated on the Grid.

1 - 7

.

The Polis Center’s Distributed Web GIS Middleware Research Strategy

To take advantage of this highly accurate local data for use statewide, a variety of technical issues must be overcome such as:

•Projecting the information to a single coordinate system

•Standardizing symbology

•Retrieving individual Layers

1 - 8

Caching for PerformanceCounty Server

Cache Server

Performance is constrained by the performance of the individual servers.We need to pre-fetch and store as tiles.

1 - 9

Browser +Google Map API

Cass County Map Server(OGC Web

Map Server)

Hamilton County Map

Server(AutoDesk)

Marion County Map

Server(ESRI ArcIMS)

Browser client fetches image tiles for the bounding box using Google Map API.

Cache Server

Tile Server

Adapter

Adapter

Adapter

Cache Server requests map tiles at all zoom levels with all layers. These are converted to uniform projection, indexed, and stored. Overlapping images are combined.

Must provide adapters for each Map Server type . The tile server fulfills

Google map calls with cached tiles at the requested bounding box that fill the bounding box.

Google Maps Server

1 - 10

Two Phase Approach: Caching and Tiling Federation through caching:

• WMS and WFS resources are queried and results are stored on the cache servers.

• WMS images are stored as tiles. These can be assembled into new images on demand (c. f.

Google Maps). Projections and styling can be reconciled. We can store multiple layers this way.

• We build adapters that can work with ESRI and OGC products; tailor to specific counties.

Tiling:• Client programs obtain images directly from our tile server.

That is, don’t go back to the original WMS for every request.

• The tile server can re-cache and tile on demand if tile sections are missing.

1 - 11

Converting bounding box to Google tile values

Google uses an x,y coordinate system combined with a zoom value to specify the tiles to retrieve from the server. These coordinates are calculated using an algorithm which can be found in GoogleMapki. See: http://www.codeproject.com/useritems/googlemap.asp

Steps for fetching image tiles from county map servers that match Google map tiles.Steps for fetching image tiles from county map servers that match Google map tiles.

Example Tile: http://mt0.google.com/mt?n=404&v=w2.37&x=0&y=0&zoom=16.

1 - 12

Naming Tiles Example

A (-88.2, 42.4)

B(-84.6, 37.1)Bounding box of Indiana at zoom level 10

Tile 1 (36,47)

Tile 2 (36,48)

Tile 3 (36,49)

Tile 4 (37,47)

Tile 5 (37,48)

Tile 6 (37,49)

1 - 13

Combine Google map with county parcel data

Map servers typically contain base maps and optional layers.

• Parcel boundaries, roads, and township boundaries are layers.

We cache each layer separately.Layers and base maps are combined dynamically using Java Advanced Image libraries.

1 - 14

Matching Projections: EPSG4326 to Mercator County map over-layer from IGS is in EPSG4326 projection. Must

convert to Mercator to match Google.

1 - 15

Combine tiles at County Boundaries

Marion County

Hancock County

County boundary tiles need to be combined to one tile by use Java Advanced Image Library

1 - 16

Next Steps University-private sector partnership

• Seek University and private sector funding to implement statewide system for Indiana

Develop Full Implementation System• Finalize requirements

• Formalize programming interface using Web Service standards (WSDL and SOAP)

• Develop functionality

• Investigate scalability and performance issues

1 - 17

Next Research Initiatives Use to represent outputs of scientific applications.

• Contour plots, vector maps, and other types of layers for displaying results of geophysical applications.

• Dynamic (“real time” layers) to display streaming data from instruments and applications.

Find a way to keep current with county servers, especially when the county server change layer id.• Recent Monroe County example

The tiling services should support multiple server styles

Improve collaborative clients

1 - 18

Demonstration

1 - 19

My House

1 - 20

My House Again

1 - 21

Query Attribute Data (live from Marion County Server)

1 - 22

CASS County WTH Mapserver™ (OGC Minnesota Map Server)

1 - 23

Collaborative site

1 - 24

More Information [email protected] [email protected] [email protected]

See demo:• http://156.56.104.164/demo/indianaViewer.html

Collaborative version:• http://156.56.104.164/samples/CollabmapUpdate/indianaVi

ewer.html

• Need a) Flash, and b) a friend to also try.

• Buggy still, so you have to login at the same time.

1 - 25

Questions