Who Needs Google Maps? (when you’ve got SQL Server)

Slides:



Advertisements
Similar presentations
BeKnown How-to: Company Profiles & Jobs App for Timeline.
Advertisements

Using data from Digimap in ArcGIS
©2011 Quest Software, Inc. All rights reserved.. Andrei Polevoi, Tatiana Golubovich Program Management Group ActiveRoles Add-on Manager Overview.
KEYS TO SUCCESS DATA PREPARATION AND ORGANIZATION
Members: Twinkle Agarwal Anjana Bhirde Ravi Madaiah David Hodgson Instructor: Dr. Perez Davila Mentor: Mr. Todd Guillory.
School of Geography FACULTY OF ENVIRONMENT Working with Tables 1.
CC SQL Utilities.
Geo GIS Practicuum Introduction to ArcGIS 8 Exercise 5 - ESRI Virtual Campus Chapters 1-2, ArcGIS Methods …
UK Spatial Data into SQL Server 2008/r2 + Reporting Services Daniel Gaze & Neal Atkinson The Co-operative Group
UK MAPPING WITH SSRS 2008 R2.
1 Transforming GIS: Changing the Way you Map the World Introducing MapInfo Professional v12.5 June 2014.
Virtual techdays INDIA │ September 2011 Numbers, Charts and Decisions with SSRS Nauzad Kapadia
Chapter 18 - Data sources and datasets 1 Outline How to create a data source How to use a data source How to use Query Builder to build a simple query.
Calendar Browser is a groupware used for booking all kinds of resources within an organization. Calendar Browser is installed on a file server and in a.
March 18, 2014 Paul Hilton Harley Parks All Partners Access Network (APAN) ArcGIS Web Part: Using Map information in SharePoint.
Hope Foley Perpetual Technologies SQL Saturday #51 - Nashville.
Welcome to EDINA Digimap Digimap is an EDINA service offering online access to a range of spatial data. It is authenticated using Athens and is available.
Welcome to EDINA Digimap Digimap is an EDINA service offering online access to a range of spatial data. It is authenticated using the UK Federation and.
Input Validation For Free Text Fields ADD Project Members: Hagar Offer & Ran Mor Academic Advisor: Dr Gera Weiss Technical Advisors: Raffi Lipkin & Nadav.
19 th Advanced Summer School in Regional Science An introduction to GIS using ArcGIS.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
Map Analysis with Networks Francisco Olivera, Ph.D., P.E. Department of Civil Engineering Texas A&M University Some of the figures included in this presentation.
Chapter 1 Getting Started With Dreamweaver. Explore the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
Carol Blackwood – Geo User Support Vivienne Mayo – User Support Digimap Roam webinar 12 th November 2014.
Esri International User Conference | San Diego, CA Demo Theater | Using Spatial Data in ArcGIS with Query Layers Brent Pierce Thursday, July 14 th.
Intro. To GIS Lecture 4 Data: data storage, creation & editing
Prepared by: Jennifer McKee With support from: in partnership with: Introduction to ArcPad NSF DUE
Finding Nearby Wireless Hotspots CSE 403 LCA Presentation Team Members: Chris Scoville Tessa MacDuff Matt Mohebbi Aiman Erbad Khalil El Haitami.
Object Oriented Databases by Adam Stevenson. Object Databases Became commercially popular in mid 1990’s Became commercially popular in mid 1990’s You.
Selecting and Displaying Features. Why do you need to select features? Why do you need to select features? Selection methods Selection methods Select.
Intranet and internet based software components. 2 Overview  What are intranet and internet based map applications?  System Requirements  Architecture.
Abuse Testing iCentral 2.8: What’s New?. What’s New in 2.8 Enhanced monitoring capability –Improved Dashboards using Microsoft Silverlight Plugin –PartTracker/Utilization.
Parcel Data Models for the Geodatabase
Troubleshooting SQL Server Enterprise Geodatabase Performance Issues
Electronic Field Study Administrative Training
Fundamentals of working with geographic data
Distance. Euclidean Distance Minimum distance from a source (Value NoData) Input grid must have at least one source cell with the rest of the grid.
Chokchai Junchey Microsoft Product Specialist Certified Technical Training Center.
GIS Tutorial 1 Lecture 4 Geodatabases. Outline  Data types  Geodatabases  Data table joins  Spatial joins  Field calculator  Calculate geometry.
Esri UC 2014 | Technical Workshop | Fundamentals of working with geographic data Miriam Schmidts.
Data Interoperability Basics Bruce Harold & Dale Lutz.
Microsoft Project 2010 ® Tutorial 6: Sharing Project Information with Other People & Applications.
Introduction to the Geodatabase. What is a Geodatabase? What are feature classes and feature datasets? What are domains Design a personal Geodatabase.
Shortest Path Navigation Application on GIS Supervisor: Dr. Damitha Karunaratne Thilani Imalka 2007/MCS/023.
Preparing and Deploying Data to ArcPad Juan Luera.
SQL access and working with ST_Geometry Functions
ArcGIS Online Best Practices from the Trenches
Live Demo Augmented reality – lets see some pictures flying…Augmented reality – lets see some pictures flying… Facebook -Facebook -
Data Structures & GeoDatabase. Introduction You have been using GDBs from nearly the start of the course Why? Because I think that most of the time you.
Application Summary  Web Application that allows its users to keep track of their exercises.  User has full control over what exercises are visible.
1 Chapter 20 – Data sources and datasets Outline How to create a data source How to use a data source How to use Query Builder to build a simple query.
1 Introduction To Geographical Data and TEISS Maps Angelique Luedeker, ITEP/TAMS Center.
March 18, 2014 Paul Hilton Harley Parks BAHSPUG Presentation ArcGIS Web Part: Using Map information in SharePoint.
ArcGIS Editor for OpenStreetMap: Contributing Data Christine White.
Index pgRouting on PostgreSQL Introduction Installation Template Creation and Use Topological Structure Core Features Public Transit Implementation (Application.
Address matching or Geocoding  Very common for:  E 911  Crime reports  Customer records  Tax/Parcel records  Marketing  Driving directions Most.
1 Introduction To Geographical Data and TEISS Maps Angelique Luedeker, ITEP/TAMS Center.
Lost No More: Driving Directions & Traffic Conditions For Your Cell Phone David Kasprzyk Karl Yerkes.
Digimap data in ArcGIS Guy McGarva EDINA Geo User Support Ian Holmes.
GROUP PresentsPresents. WEB CRAWLER A visualization of links in the World Wide Web Software Engineering C Semester Two Massey University - Palmerston.
Uploading Data Matthew Hanson  GeoNode made up of several components  Web Framework – Django  OGC Server – GeoServer  Database – PostGIS.
Introduction In modern age Geographic Information systems (GIS) has emerged as one of the powerful means to efficiently manage and integrate numerous types.
Introduction Most samples in Household Travel Surveys (HTS) complete via web Geocoding is an important element in HTS collection Online geocoding services.
Key Terms Attribute join Target table Join table Spatial join.
Fast Track to SPATIAL Reporting!
Fun with SQL Server Spatial Data
Understanding & Using Spatial Data Features in SQL Server
CUAHSI HIS Sharing hydrologic data
Electronic Field Study Advanced User Training
Building an online tool for spatial joins using open source software
Presentation transcript:

Who Needs Google Maps? (when you’ve got SQL Server) Alastair Aitchison

Route between locations Google Maps Snazzy Logo Search for Location Map Display Route between locations

Route between locations Bing Maps Snazzy Logo Search for Location Map Display Route between locations

Route between locations Yahoo Maps Snazzy Logo Route between locations Map Display Search for Location

Route between locations MapQuest Snazzy Logo Search for Location Route between locations Map Display

Requirements Checklist Snazzy Logo Pannable, Zoomable Map Display Search for a Location Calculate Route Between Destinations This will involve: Importing data from shapefiles, integrating with SQLCLR, using SSRS, passing spatial data to/from stored procedures, and more!

Requirement #1 : Snazzy Logo Take a brand name and add on “maps” Therefore…

Requirements Checklist Snazzy Logo a Pannable, Zoomable Map Display Search for a Location Calculate Route Between Destinations

Ordnance Survey Open Data Free, “lite” OS datasets Different products, e.g: VectorMap (features) Gazetteer (placenames) CodePoint Open (p’codes) Download or DVD ESRI Shapefile format

Loading Shapefiles to SQL Server SQL Server does not support shapefiles Use 3rd party tools Commercial: Safe FME, Manifold Free: OGR2OGR, Shape2SQL Check .prj file to determine geography/geometry and correct SRID

Shape2SQL Demo

Requirement #2 : Map Display What visualisation options does SQL Server provide? SSMS Spatial Results tab (SQL 2008/R2) SSRS Map Component (SQL 2008 R2 only) No new options in SQL Denali

SSMS Spatial Results Tab Demo

SSRS Map Component Demo

Requirement #2 : Map Display SSMS Spatial Results tab + Available after SELECTing geometry/geography data + Pannable, zoomable, labelled - Max 5,000 features - Only for use in SSMS - not embeddable / exportable SSRS Map Component (SQL 2008 R2) + Good for analysis – drilldown by clicking shapes etc. + Can be exported as static image Slow and static. Not “slippy” interface

A Silverlight Map Display App Silverlight provides UI and Graphics classes SqlServer.Types.dll not Silverlight compatible Use intermediary web service OS Eastings / Northings -> Screen (x,y)

SProc to Retrieve OS Tiles CREATE PROCEDURE [dbo].[GetSettlementDataForTile] @TileBounds geometry AS BEGIN DECLARE @TileHeight float = (@TileBounds.STPointN(3).STY - @TileBounds.STPointN(2).STY); DECLARE @Res float = @TileHeight / 256; SELECT geom27700.STIntersection(@TileBounds).Reduce(@Res) FROM Settlement_Area WITH(index(geom27700_sidx)) WHERE geom27700.STIntersects(@TileBounds) = 1 END

Silverlight Slippy Map Demo

Requirements Checklist Snazzy Logo a Pannable, Zoomable Map Display a Search for a Location Calculate Route Between Destinations

Geocoding (Location Searching) Not really a Spatial Operation Address text parsing / search SELECT * FROM OSLocator WHERE ROADNAME = @RoadName Fuzzy matching with full-text search RegEx matching for Postcode Supplied address is freetext user input so be cautious of SQL injection attacks etc.

Geocoding Demo

Requirements Checklist Snazzy Logo a Pannable, Zoomable Map Display a Search for a Location a Calculate Route Between Destinations

Routing Not sufficient to have a table of LineStrings Network topology – how are roads connected? Graph theory: Node (Point) Edge (LineString)

Brute Force Routing with T-SQL Recursive CTE Anchor member selects LineString edges that begin at chosen start node Recursive member joins from STEndPoint() of last edge to STStartPoint() of next edge Create geometry of route already travelled to avoid infinite loops Expand outwards until end node found

Smart Routing with SQLCLR A* algorithm Heuristics prioritise edges more likely to lie on least cost route to goal “Least cost” does not have to mean “shortest” Additional properties of each node: g: cost of route already travelled to reach this node h: estimated remaining cost from this node to goal f: g + h

A* Algorithm in Operation B C Start D Goal E

A* Algorithm in Operation B C 8.2 2.8 Start D Goal 3 7 2 10.2 E

A* Algorithm in Operation B C 8.2 2.8 Start D Goal X 2 10.2 E

A* Algorithm in Operation B C 1 8.5 2.8 Start D Goal X 2 10.2 E

A* Algorithm in Operation B C 1 8.5 2.8 Start D Goal X 2 10.2 Goal reached! Route cost: 12.2 E

Requirements Checklist Snazzy Logo a Pannable, Zoomable Map Display a Search for a Location a Calculate Route Between Destinations a Put it all together and what have you got?

SQLBitMaps in action…

Want More? : @alastaira #sqlbits8 : http://alastaira.wordpress.com MSDN Spatial Forum: http://social.msdn.microsoft.com/Forums/en-GB/sqlspatial/threads