资源预览内容
第1页 / 共35页
第2页 / 共35页
第3页 / 共35页
第4页 / 共35页
第5页 / 共35页
第6页 / 共35页
第7页 / 共35页
第8页 / 共35页
第9页 / 共35页
第10页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Concurrent Web Map Cache Server:A “Web 2.0 Meets SOA” Case StudyZao Liu, Marlon Pierce, Sunghoon Ko, Geoffrey FoxCommunity Grids LaboratoryIndiana University&Neil DevadasanPolis CenterIndiana University Purdue University Indianapolis,GIS Map Servers as a Web 2.0 Case Study,There are several different products for creating on-line maps and allowing interaction with Geographical Information System (GIS) data bases.ESRI, Autodesk, Open Geospatial ConsortiumThese 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.,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 GoogleParcels/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.,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 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,Building a Cache Server,Reverse engineering Map Server requests.,Federating GIS Servers Around Indiana,Indiana has 92 countiesApproximately 15 have public GIS map servers.ExamplesESRI ArcIMS and ArcMap Server Marion, Vanderburgh, Hancock, Kosciusco, Huntington, TippecanoeAutodesk MapGuide Hamilton, Hendricks, Monroe, WayneWTH Mapserver Web Mapping Application (OGC Minnesota Map Server)Fulton, Cass, Daviess, City of HuntingburgAlso there are state-wide GIS serversOrthophotography from Indiana UniversityIndiana Geological SurveyThese are not normally interoperable.,Map Requests for ArcIMS and ArcMap,Map image requests for ESRI ArcIMS and ArcMap are based on ArcXML,ESRI sends SOAP-like XML over HTTP. Note the generated image is left on the server. Client has to retrieve it in a separate step. Server cleans up images every 10 minutes or so (a configurable parameter).,Map Requests for other type of Servers,Map requests for other type of servers are using HTTP GET method. Trick is to figure out the correct format for the name/value pairs.Requesting format of MapGuide and WMS is almost the sameMap image is directly returned in the HTTP response (GIF, JPG, etc),Request for AutoDesk MapGuide Serverhttp:/litemap.co.hamilton.in.us:8080/liteview/servlet/MapGuideLiteView?VERSION=1.1.1&REQUEST=Gemap&LAYERS=COUNTY_PLAN.MWFparcels&SRS=EPSG:4326&BBOX=86.0009765625,40.06125658140474,85.99960327148438,40.062307630891&WIDTH=256&HEIGHT=256&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&WMTVER=1.1.1&STYLES=,Request for WTH Web Map Serverhttp:/thinkopengis.wthengineering.com/cgibin/mapserv.exe?map=cass0805.map&VERSION=1.1.1&REQUEST=GetMap&LAYERS=parcels,roads,highways&SRS=EPSG:4326&BBOX=86.4596523336861,40.6980435683496,86.3180175693406,40.7924667445799&WIDTH=600&HEIGHT=400&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=FALSE&WMTVER=1.1.1,.,County Boundaries,To take advantage of highly accurate local data for use statewide, a variety of technical issues must be overcome such as: Projecting the information to a single coordinate systemStandardizing symbolsRetrieving individual Layers,Caching for Performance,County Server,Cache Server,Performance is constrained by the performance of the individual servers.,Obviously this is not suitable for AJAX style applications. We need to pre-fetch and store as tiles.,Building a Tiling Server,Reverse engineering Googles map server.,Tiling Strategy,Google Maps works by delivering map tiles that fill a bounding box.Google Map API 2.0 lets you point at your own tile server.We use this to serve up our own map data together with Google maps.To do this, all tiles should be saved as the same bounding box as Google map tiles.Tiles must have same size, projection, and coordinate values as underlying Google base maps.Each tile uses tile ID and zoom level as its name (ie, tile36.48.10), so no database is needed to find the tile.Our tile naming convention based on Googles lat/lon to transverse Mercator projection.tileX.Y.Zoom, but must first convert lat and lon to rectangular coordinates.Naming convention discussed on next slide. See http:/mapki.com/wiki/Lat/Lon_To_TileUsing zoom level as the first-level directory and layer as the second-level directory to store tiles.,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号