11.521 |
Spatial
Database Management and Advanced Geographic Information
Systems
|
11.523 |
Fundamentals
of Spatial Database Management
|
Part I: Analyzing the 'Zoning Variance' data base
In Tuesday's Lab #4, we will map these zoning variances. Today, we will focus on (a) understanding and running basic queries of the zoning database tables, (b) pulling mapable data from MS-Access and Postgres into ArcGIS, and (c) using the ideas in the book chapter (about spelling 'errors' in the Boston parcel database) to accumulate and utilize knowledge about how to interpret ownership types among the owners of property seeking a zoning variance.
Often, the data that we wish to study cannot be linked to mappable objects in a straightforward (one-to-one) manner. For example, we may wish to study those zoning variances involving vacant land under city control that are proposed for use as housing. Figuring out which variances are controlled by the city is a database manipulation task in and of itself and understanding the neighborhoods proximate to the proposed site might require a side effort - using GIS - to tag each zoning variance with, say, the census tract that surrounds its location. We want to help you understand - and gain some hands-on experience - with relational and spatial database management techniques that can facilitate such multi-stage analyses. Moreover, we want to help you understand how the architecture of the city's information infrastructure can affect the types of analyses that are possible and the extent to which decentralized access to city data can be an effective empowerment tool.
Schema of ZONING table (and related lookup tables with codes for Decision, Use, NSA, and Neighbrhd) |
|
Schema of 1980 Boston Census data (grouped by
neighborhood statistical area, NSA) |
|
Annotated SQL queries of ZONING table |
|
Annotated SQL queries illustrating use of lookup tables to categorize ownership of properties seeking zoning variances |
|
Stages of evolution of the ZONING variance database |
The ZONING table and associated lookup tables are in our Postgres database and accessible to everyone in the class. In addition, the same tables are available as an MS-Access database in the class data locker: http://mit.edu/11.521/data/11.521_lab3.mdb.
Querying and mapping zoning variance data: (we will do this in next week's lab)
- Use database tools to prep data, then pull into ArcGIS
-- Pull tables from Postgres (or Access) into ArcGIS
-- Convert XY coordinates in a table to a pin map
-- Use Mass towns as a background - see matowns00.shp shapefile in class data locker
-- Spatial joins of zoning variance points with polygon layers (1990 census tracts, msa5_tr90.shp)
-- Use mass_water.shp to shade water bodies blue and K:\data\bosparcels05.shp for Boston parcels
-- Be aware that all layers are in Mass State Plane NAD83 meters except Boston parcels (Parcels05) which are in Mass State Plane NAD83 feet.
-- Google Earth mashups with KML output from ArcGIS- Preparing ZONING data for mapping
-- getting -X,Y (longitude/latitude) values from Postgres tables.
-- In ArcGIS, use Tools/Add-XY-data to convert lat/lon to points- Analyzing zoning variance patterns - join/query tables from Postgres, MS-Access, or ArcGIS sides (depending on size, famililarity, complexity)
- Google Earth mashup - coordinate system issues and KMZ files
Part II: Distributed Access to Parcel-Level City Databases (Using lookup tables to merge local data with large, 'read-only' official databases).
Most of today's lecture focuses on the Book Chapter reading for today - http://mit.edu/11.521/papers/techcity_7ferreira.pdf which is Chapter 7 of "High Technology and Low-Income Communities: Prospects for the Positive Use of Advanced Information Technology," edited by Donald A. Schön, Bish Sanyal, and William J. Mitchell, MIT Press, 1997
This chapter explains some of the complexities and technical strategies involved in trying to empower communities by providing local access to parcel-level city databases. We would like to facilitate distributed access to centrally maintained databases - while allowing some capacity on the part of end-users to make changes in the 'official' data. Our example uses parcel-level databases of land use and ownership - a very detailed data layer that has recently become much more standardized and accessible. To emphasize how it is often necessary to do extensive data processing before such data can be utilized effectively, we consider the problem of addressing the 'spelling errors' in owner names that complicate efforts to determine ownership patterns from typical parcel databases. For example, there are at least 17 different spellings of the Boston Redevelopment Authority in the 'owner' field of the official parcel database for Boston.
Much of the lecture explains how one can use local 'lookup' tables and SQL 'update' queries to correct the spelling errors (and construct other ownership groupings). After illustrating the techniques, we discus how these methods can provide a useful alternative to 'top-down' and 'bottom up' strategies for fixing the spelling errors. In particular, they provide a 'middle-out' alternative that allows decentralized accumulation of useful knowledge that can be readily linked to official datasets outside the user's control. Here are some of the queries that we will run in class and the powerpoint slides that outline the methods and ideas in the book chapter.
In Problem Set B, you will use similar methods to categorize the owners of the East Boston properties. A set of notes is available that uses the Boston zoning variance database to illustrate the ideas and relevant queries. It is available in the SQL Notes section of the class web page as this link: Grouping zoning applicants via 'lookup' tables. In addition, the Boston parcel database (for 1996) is available in the class data locker as a 67 MB file formatted for MS-Access: boston_parcels96.mdb.
Tips and Tricks working with East Boston parcel data
create view v_ebosvalue as select pid, 1.0*to_number(lotsize) as lotsize, 1.0*to_number(living_area) as living_area, 1.0*to_number(fy2005_land) as fy2005_land from bos05eb where lotsize > 0 and living_area > 0 and fy2005_land > 0;
Home | Syllabus
| Lectures | Labs
| CRON | 37-312
lab | MIT
Last Modified 21 February 2018 (jf)