210 likes | 335 Views
INDIA │ 18-20 august 2010. virtual techdays. Developing with SQL Server Spatial & Deep Dive into Spatial Indexing. Pinal Dave │ Mentor, Solid Quality Mentors │ SQLAuthority.com. INDIA │ 18-20 august 2010. virtual techdays. Yes No May Be I Don’t know!. Question to You!.
E N D
INDIA │ 18-20 august2010 virtual techdays Developing with SQL Server Spatial & Deep Dive into Spatial Indexing Pinal Dave│ Mentor, Solid Quality Mentors│SQLAuthority.com
INDIA │ 18-20 august2010 virtual techdays • Yes • No • May Be • I Don’t know! Question to You! Is the Earth Flat?
INDIA │ 18-20 august2010 virtual techdays The Earth is Flat…
INDIA │ 18-20 august2010 virtual techdays The Earth is Flat…
INDIA │ 18-20 august2010 virtual techdays The Earth is Flat…
INDIA │ 18-20 august2010 virtual techdays …but the Earth is Sphere (almost)!
INDIA │ 18-20 august2010 virtual techdays • Introduction to Spatial Database • One line definition • Planer vs Geographic • Understanding Spatial Indexing • Planer vsGeographic • Index Internals • Query Hinting • Index Maintenance • Performance Troubleshooting Agenda Session Objectives And Key Takeaways
INDIA │ 18-20 august2010 virtual techdays • SQL Server MVP • Mentor – Solid Quality Mentors India • Founder – SQLAuthority.com • Regional Mentor – Professional Association for SQL Server (PASS) Asia, Pacific & Middle East • User Group Lead – Ahmedabad SQL Server UG, Gandhinagar SQL Server UG • Author, Trainer, Speaker, Consultant • MCT, MCTS, MCP, MCDBA, MCAD • pdave@solidq.com, pinal@sqlauthority.com • http://twitter.com/pinaldave Agenda Session Objectives And Key Takeaways
INDIA │ 18-20 august2010 virtual techdays • spa·tial [spey-shuhl] –adjective 1.of or pertaining to space. 2.existing or occurring in space. 3.having extension in space. • Database that models space, objects in space, or a combination of both and provide capabilities to store and manipulate spatial data What is Spatial? One Line Definition
INDIA │ 18-20 august2010 virtual techdays • GEOMETRY data type • Infinite X and Y SQL Server 2008 Systems Story Geographic Systems Planar Systems • GEOGRAPHY data type • Latitude -90 to +90 • Longitude 0 to 360
INDIA │ 18-20 august2010 virtual techdays DEMO: Various Datatypes DEMO: World Map
INDIA │ 18-20 august2010 virtual techdays • Requires bounding box • Only one grid SQL Server 2008 Indexing Story Geographic Index Planar Index • No bounding box • Two top-level projection grids
INDIA │ 18-20 august2010 virtual techdays • 4 levels • Customizable grid granularity • Three Grid Densities Per Level - Low, Medium, High • Customizable max number of cells per object SQL Server 2008 Indexing Story Multi-Level Grid
INDIA │ 18-20 august2010 virtual techdays MAIN SLIDE TITLE Sub Slide Title /4/2/3/1 / (“cell 0”)
INDIA │ 18-20 august2010 virtual techdays Tessellation Process
INDIA │ 18-20 august2010 virtual techdays • Create index example GEOMETRY: CREATE SPATIAL INDEX sixd ON spatial_table(geom_column) WITH ( BOUNDING_BOX = (0, 0, 500, 500), GRIDS = (LOW, LOW, MEDIUM, HIGH), CELLS_PER_OBJECT = 20) • Create index example GEOGRAPHY: CREATE SPATIAL INDEX sixd ON spatial_table(geogr_column) WITH ( GRIDS = (LOW, LOW, MEDIUM, HIGH), CELLS_PER_OBJECT = 20) • Use ALTER and DROP INDEX for maintenance. Index Creation and Maintenance
INDIA │ 18-20 august2010 virtual techdays DEMO: Geometry Index DEMO: Index Analysis
INDIA │ 18-20 august2010 virtual techdays • FROM T WITH (INDEX (<Spatial_idxname>)) • Spatial index is treated the same way a non-clustered index is • the order of the hint is reflected in the order of the indexes in the plan • multiple index hints are concatenated • no duplicates are allowed • The following restrictions exist: • The spatial index must be either first in the first index hint or last in the last index hint for a given table. • Only one spatial index can be specified in any index hint for a given table. Index Hints
INDIA │ 18-20 august2010 virtual techdays • Make sure you are running SQL Server 2008 SP1 • Check query plan for use of index • Make sure it is a supported operation • Hint the index (and/or a different join type) • Do not use a spatial index when there is a highly selective non-spatial predicate Checklist for Performance
INDIA │ 18-20 august2010 virtual techdays • Michael Rys • http://sqlblog.com/blogs/michael_rys/ • Pinal Dave • http://blog.sqlauthority.com RESOURCES
THANKS│18-20 august2010 virtual techdays pdave@solidq.com│ http://blog.sqlauthority.com