Building The Spatial Enterprise
for Denver Public Schools
Matthew Baker
Department of Planning and Analysis
...Or:
How I learned to stop
worrying and love
SQL Spatial.
DPS Overview
● Fastest Growing District in USA
● 84,424 Students
– Largest district in CO
● 120 Languages
● 172 Schools
DPS Student Ethnicity
DPS Student Performance
Overview Planning & Analysis
● DPS Administration Building (900 Grant)
– 1870 Lincoln (Summer 2014)
● Demographic Analysis...
Spatial Data and Client Applications
Infinite Campus (IC)
Students
Teachers
Principals
Superintendent
Administration
Planning
&
Analysis
All DPS database tables
Spatial Data Primary
● School Points
● Boundaries
● Address Points
● Student Households (addresses)
● Planning and Forecas...
Address Point File
● Currently ~280,000 geocoded address points
● Central Database: Infinite Campus (IC)
– Origin and sour...
Spatial Data Other
City & County of Denver
● Parcels
● Neighborhoods
● Street Centerlines
● Election Precincts
● Police Di...
Clients DPS Enterprise
● IC - School Matrix
● School by Grade for each address point
● DPS Business Intelligence (BI)
● DP...
DPS School Locator
● Enter Address
● Get:
– Boundary Schools
● Elem
● Mid
● High
– Transportation Info
● ArcGIS Server
● G...
Building the Spatial Enterprise
Design Tasks Initial
● Identify and interview users and stakeholders
● Design GIS database
– ArcGIS 9.3.1 to 10.1
● Dev / ...
Workflow Challenges
IC
SQL Data Pull
What's broken?
● Links to Data
– Enterprise to GIS
– SQL to Map
● ArcGIS
– Access and create spatial data, no link to Ente...
Solution SQL Server Spatial
Improvements
● SQL Server “workspace”
– MS SQL Server 2012
– Analysts build and use spatial functions
– Create and modify ...
Enabling SQL Spatial with FME
● FME Workbench
– From SDE to SQL Spatial Native format
– Create spatial index
– Create Uniq...
Creating Spatial Data with FME
● Assemble query in SQL
● Join Spatial data (shape field)
– Using AddressID
– Must also use...
FME Workbench Example
● ~280,000 points x3 feature classes
● Reproject while loading
● Create SQL Spatial Index
Other Benefits ETL with FME
● Promoting SDE Tables
– Dev to QA
– QA to Prod
● Simple tool for DBA to run
● Enter User/Pass...
SQL Spatial Example
● Need:
– Grade 9 students
– Projected School Assignment for 2015
– Within Specific Boundary
● Pulls f...
SELECT
count( [Student_Number]) as StudentCount
FROM [GISWork].[dpsdata].[ProjectedStudents]
join
[GISWork].dpsdata.[Addre...
SQL Spatial Example
● Assign special needs transition-grade students
to feeder or closest center program
– Give top 3 clos...
SELECT BT.[StudentID]
,BT.[LastName]
,BT.[FirstName]
,BT.[CurrentGrade]
,BT.[CurrentSchoolNum]
,BT.[CurrentSchoolName]
,BT...
SQL Spatial Functions
● MSSQL Spatial
– STIntersects
– STContains
– STDistance
– STCentroid
Tools Used
● SQL Server 2012
– Native Spatial Data / Geometry
● ArcGIS 10.1
– ArcGIS Server 10.2
● FME Workbench
● PGModel...
Thank you!
Matthew Baker
Department of Planning and Analysis
matthew_baker@dpsk12.org
@MapBaker
Building the Spatial Enterprise of Denver Public Schools
Building the Spatial Enterprise of Denver Public Schools
Upcoming SlideShare
Loading in …5
×

Building the Spatial Enterprise of Denver Public Schools

1,003 views

Published on

Presented by Matthew Baker, Denver Public Schools

See more FME World Tour 2014 presentations at www.safe.com/recap2014

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,003
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Building the Spatial Enterprise of Denver Public Schools

  1. 1. Building The Spatial Enterprise for Denver Public Schools Matthew Baker Department of Planning and Analysis
  2. 2. ...Or: How I learned to stop worrying and love SQL Spatial.
  3. 3. DPS Overview ● Fastest Growing District in USA ● 84,424 Students – Largest district in CO ● 120 Languages ● 172 Schools
  4. 4. DPS Student Ethnicity
  5. 5. DPS Student Performance
  6. 6. Overview Planning & Analysis ● DPS Administration Building (900 Grant) – 1870 Lincoln (Summer 2014) ● Demographic Analysis and Projections – Student demand and performance ● Capacity and Resource Planning – Strategic Regional Analysis (SRA)
  7. 7. Spatial Data and Client Applications
  8. 8. Infinite Campus (IC) Students Teachers Principals Superintendent Administration Planning & Analysis All DPS database tables
  9. 9. Spatial Data Primary ● School Points ● Boundaries ● Address Points ● Student Households (addresses) ● Planning and Forecast Regions ● October Count (Student count on Oct. 1)
  10. 10. Address Point File ● Currently ~280,000 geocoded address points ● Central Database: Infinite Campus (IC) – Origin and source of truth for student data ● Weekly sync to IC addresses and GIS addresses – IC doesn't (yet) store spatial data!
  11. 11. Spatial Data Other City & County of Denver ● Parcels ● Neighborhoods ● Street Centerlines ● Election Precincts ● Police Districts ● Historic Landmark Districts ● Zoning ● Land Use ● Council Districts Census ● Block Groups ● Blocks ● Tracts ● Birth data
  12. 12. Clients DPS Enterprise ● IC - School Matrix ● School by Grade for each address point ● DPS Business Intelligence (BI) ● DPS Transportation Department ● Operational Data Store (ODS) ● Colorado Department of Education – CDE Pipeline
  13. 13. DPS School Locator ● Enter Address ● Get: – Boundary Schools ● Elem ● Mid ● High – Transportation Info ● ArcGIS Server ● Google Maps API http://maps.dpsk12.org/
  14. 14. Building the Spatial Enterprise
  15. 15. Design Tasks Initial ● Identify and interview users and stakeholders ● Design GIS database – ArcGIS 9.3.1 to 10.1 ● Dev / QA database design ● Implement production ● Applications – Re-build ArcGIS Server – Re-build web applications (school locator, etc.)
  16. 16. Workflow Challenges IC SQL Data Pull
  17. 17. What's broken? ● Links to Data – Enterprise to GIS – SQL to Map ● ArcGIS – Access and create spatial data, no link to Enterprise ● SQL Server – Access tabular data – Enables enterprise-wide analysis – No access to spatial data
  18. 18. Solution SQL Server Spatial
  19. 19. Improvements ● SQL Server “workspace” – MS SQL Server 2012 – Analysts build and use spatial functions – Create and modify database views ● Use in Excel ● Use in ArcMap ● ETL Automation – To / From SDE – Analysis to DPS Enterprise, etc.
  20. 20. Enabling SQL Spatial with FME ● FME Workbench – From SDE to SQL Spatial Native format – Create spatial index – Create Unique Object ID ● “Take What We Need” – Some fields for GIS – Some for SQL Analysis
  21. 21. Creating Spatial Data with FME ● Assemble query in SQL ● Join Spatial data (shape field) – Using AddressID – Must also use OBJECTID for use in ArcMap ● Pull data from SQL to ArcSDE for use in GIS
  22. 22. FME Workbench Example ● ~280,000 points x3 feature classes ● Reproject while loading ● Create SQL Spatial Index
  23. 23. Other Benefits ETL with FME ● Promoting SDE Tables – Dev to QA – QA to Prod ● Simple tool for DBA to run ● Enter User/Pass ● ETL runs transparently
  24. 24. SQL Spatial Example ● Need: – Grade 9 students – Projected School Assignment for 2015 – Within Specific Boundary ● Pulls from: – Projected Students – Address Master
  25. 25. SELECT count( [Student_Number]) as StudentCount FROM [GISWork].[dpsdata].[ProjectedStudents] join [GISWork].dpsdata.[Address_Master] on (ProjectedStudents.addressID = Address_Master.AddressID) join GISWork.dpsdata.SchoolBoundaries_All on (Address_Master.shape.STIntersects(SchoolBoundaries_All.shape) = 1) where ProjectedGrade = '9' and SchoolBoundaries_All.HIGH_NUM = '464' group by ProjectedSchool order by StudentCount desc
  26. 26. SQL Spatial Example ● Assign special needs transition-grade students to feeder or closest center program – Give top 3 closest schools by program – Distance to each school
  27. 27. SELECT BT.[StudentID] ,BT.[LastName] ,BT.[FirstName] ,BT.[CurrentGrade] ,BT.[CurrentSchoolNum] ,BT.[CurrentSchoolName] ,BT.[ProjResSch] ,BT.[ProjectedEdLevel] ,BT.[CenterProgram] ,BT.[CenterProgramGroup] ,BT.[shape] ,ROW_NUMBER() OVER(PARTITION BY BT.[StudentID] ORDER BY ROUND((SC.Shape.STDistance(BT.Shape)/5280),2) ,CASE WHEN BT.[CenterProgramGroup] in ('AN','MI') and BT.[CurrentSchoolNum] = '447' THEN '466' WHEN BT.[CenterProgramGroup] in ('AUT', 'MI-Severe') and BT.[CurrentSchoolNum] = '419' THEN '469' ELSE SC.[CenterSchNum] END as [ProjFeederCenterSchNum] ,CASE WHEN BT.[CenterProgramGroup] in ('AN','MI') and BT.[CurrentSchoolNum] = '447' THEN 'DCIS/NCAS' WHEN BT.[CenterProgramGroup] in ('AUT', 'MI-Severe') and BT.[CurrentSchoolNum] = '419' THEN 'MLK' ELSE SC.[CenterSchName] END as [ProjFeederCenterSchName] --,CASE WHEN BT.[CenterProgramGroup] in ('AN','MI') and BT.[CurrentSchoolNum] = '447' THEN ,ROUND((SC.Shape.STDistance(BT.Shape)/5280),2) as [DistancetoFeeder] FROM (SELECT ST.[StudentID] ,ST.[LastName] ,ST.[FirstName] ,ST.[Grade] as [CurrentGrade] ,ST.[SchoolNum] as [CurrentSchoolNum] ,ST.[SchoolName] as [CurrentSchoolName] ,CASE WHEN ST.[grade] = '5th' THEN ST.[SCHOOL_6] WHEN ST.[Grade] = '8th' THEN ST.[SCHOOL_9] WHE [resschnum] END as [ProjResSch] --,ST.[ResSchNum] --,ST.[ResSchName] ,CASE WHEN ST.[grade] = '2nd' THEN 'ElemInt' WHEN ST.[grade] = 'Pre-K' THEN 'ElemPri' ELSE ST.[ --,ST.[DOB] --,ST.[Disability] ,ST.[CenterProgram]
  28. 28. SQL Spatial Functions ● MSSQL Spatial – STIntersects – STContains – STDistance – STCentroid
  29. 29. Tools Used ● SQL Server 2012 – Native Spatial Data / Geometry ● ArcGIS 10.1 – ArcGIS Server 10.2 ● FME Workbench ● PGModeler –
  30. 30. Thank you! Matthew Baker Department of Planning and Analysis matthew_baker@dpsk12.org @MapBaker

×