© Salisbury University Freely available enterprise- class spatial database servers: experiences...
-
Upload
dinah-price -
Category
Documents
-
view
221 -
download
1
Transcript of © Salisbury University Freely available enterprise- class spatial database servers: experiences...
© Salisbury University
Freely available enterprise-class spatial database servers: experiences with Oracle 10g Express, SQLServer Express 2008 (CTP), and PostGIS
James Mooney, Brett Morgan, Kevin Ross, Adam Ruf, Ben
Sigrist, and Art Lembo
© Salisbury University
Introduction
• Purpose: chronicle experiences in using free offerings of spatial database management systems for GIS.– Installation, loading, analysis, and display
• Databases– Oracle Spatial Express– Microsoft SQLServer Express 2008 (CTP)– PostGRES/PostGIS
© Salisbury University
Background
• The traditional GIS marketplace is rapidly changing.– Google: One of the largest Internet-based content
providers introduces Google Earth and Google Maps, introducing geospatial information to the mass market.
– Microsoft: World’s largest software company introduces spatial database capabilities in their product offerings, and introduces Microsoft Virtual Earth to compete with Google maps. Spatial capability is now available to all Microsoft Office users.
– Open Source: A burgeoning market of freely developed geospatial software places sophisticated geospatial technology in the hands non-traditional users.
© Salisbury University
Background
• Results of a new geospatial information super-highway– Volume: more users are now aware of a geospatial
information super-highway.– Affordability: more users are now able to afford the tools
to drive on the geospatial information super-highway– Navigation: more users require assistance to utilize the
tools of the geospatial information super-highway
• What geospatial information super-highway capabilities are available to the general public at little or no cost, and what is the potential for using these tools?
© Salisbury University
Spatial databases
PostGIS
SQLServer Express
Oracle Express
© Salisbury University
Companies
• PostGIS– PostGIS is a spatial
extension to PostgreSQL, an advanced open source database
– Developed and maintained by Refractions Research
– Freely available, Enterprise grade, Active user community
– http://postgis.refractions.net/
• Microsoft– Microsoft: Redman, WA– Microsoft is a software
company that has widespread adoption in the marketplace
– 6 Editions of software from Compact Edition to Enterprise Edition.
– Prices range from $0 to $25,000/processor
– We tested the Express Edition– Latest version: SQL Server
2008
• Oracle
– Oracle Database 10g Express Edition
– Current Version 10.2.0.1.0 (Express Edition)
– 32-bit
– Company’s Purpose: • http://www.oracle.com/tec
hnology/products/database/xe/index.html
© Salisbury University
Supported Data TypesPOSTGIS• OpenGIS Consortium Standards
– WKT (Well Known Text)– WKB (Well Known Binary)– Both of these formats include
information about the type of the object as well as the coordinates which form the object
• Examples of object types– POINT (0 0)– LINESTRING (0 0,1 3,5 7)– POLYGON ((0 0,1 1,2 2,2 0,0 0),(0
5,5 1,6 1,0 5)– MULTIPOINT (0 0,1 3)– MULTILINESTRING ((0 0,1 1,1 2),(2
3,3 2,5 4))– MULTIPOLYGON(((0 0,4 0,4 4,0 4,0
0),(1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -2,-2 -2,-2 -1,-1 -1)))
– GEOMETRYCOLLECTION(POINT(2 3),LINESTRING((2 3,3 4)))
SQLSERVER• Proprietary data format
– Conforms to OGC standards– WKT (Well Known Text)– Geometry Data Type
• Represents data in an Euclidean (flat) coordinate system
– Geography Data Type• Represents data in an Ellipsoidal
(round-earth) coordinate system• Examples of object types
– Point– MultiPoint– LineString– MultiLineString– Polygon– MultiPolygon– GeometryCollection
ORACLE• OpenGIS Consortium Standards
– WKT (Well Known Text)
– WKB (Well Known binary)
– Oracle spatial
© Salisbury University
Known LimitationsSQLServer• Data type restrictions
– Each Geog instance must fit in a Hemisphere
– Instance from (OGC), (WKT),(WKB) object larger than a hemisphere throws an Argument exception
– Geog methods that require input from two Geog instances (intersect,union,differences,symdiff) return null if bigger than a single hemisphere
Oracle• Memory – Only 1gb RAM is
addressed, limiting the number of concurrent users.
• XE will only use one CPU. It can be run on a multi-CPU configuration, but will not scale up to use those other CPUs.
• Only one XE Database may be run on an individual computer.
• 4gb Disk Space limitation.
© Salisbury University
Architecture for testing• Hardware
– Standard PC with Microsoft XP– Shuttle PC P2 Prima 3500
– 64-bit, 3.0 GHZ.– 8 GB RAM– Quad-core
• Software– Spatial databases: Oracle, SQLServer, – PostGIS– Viewing: Manifold GIS, Quantum GIS– Loading: Manifold GIS, SPIT, SharpNet
• Data– Simple point, line, area– City of Ithaca parcels (5,000 area features)– Large fictitious grid (5 million area features)– TIGER data for Northeast US (4 million linear
features)
© Salisbury University
Installation
© Salisbury University
Installation• Each product has a Window’s based installation
process– Oracle had the simplest installation process– PostGIS and SQLServer had numerous difficulties within
the University network.– PostGIS and SQLServer worked fine on individual
computers
© Salisbury University
Loading Spatial Data
© Salisbury University
Simple line insertion with SQL
© Salisbury University
Line Segment
© Salisbury University
Oracle Data Loading
© Salisbury University
Data File
© Salisbury University
Ithparc2 Linked to Oracle
© Salisbury University
Query in SQLServer sqlcmd
© Salisbury University
The query in manifold along with the original parcel drawing and the one from the database.
© Salisbury University
© Salisbury University
Loading data with 3rd party products
© Salisbury University
Manifold’s database console was used to Connect to the new database.
© Salisbury University
© Salisbury University
- Exporting data using Manifold is fairly straightforward.
- Used Manifold to export BigBadData (5 million records) and the roads data (4 million records) into separate databases
- The BigBadData took about one hour and twenty minutes
- The roads data took about forty five minutes
SQLServer - Exporting data with Manifold
© Salisbury University
SharpGIS Shapefile uploader
• This tool was recently created by Morten Nielsen
• It can be obtained freely from http://www.sharpgis.net
• This tool was designed to easily upload ESRI Shapefiles into SQLServer 2008
© Salisbury University
This shows the County Data Opened in manifold
© Salisbury University
PostGIS with SPIT
© Salisbury University
Traditional and Spatial Queries
© Salisbury University
SQL Queries SQLServer
• SELECT * From dbo.Cnty_sf1_Drawing where P001001 > 100000
• SELECT SUM(P001001) as SUM
FROM dbo.Cnty_sf1_Drawing
• SELECT AVG(P001001) as AVG
FROM dbo.Cnty_sf1_Drawing
Oracle
• SELECT GEODESC FROM Cnty_sf1_drawing WHERE P001001 > 100000;
• SELECT SUM(P001001) AS SUM FROM Cnty_sf1_drawing;
• SELECT AVG(P001001) AS AVG FROM Cnty_sf1_drawing;
PostGIS
• SELECT * FROM "BigBadData” WHERE "Population" > 90000
• SELECT SUM("Population") AS Sum FROM "BigBadData"
• SELECT AVG("Population") AS Average FROM "BigBadData"
© Salisbury University
SQLServerSpatial Queries
BufferDECLARE @Wicomico geometry;
SET @Wicomico= (SELECT top 1 geom FROM dbo.Cnty_sf1 WHERE GEODESC= 'Wicomico County');
SET @Wicomico= @Wicomico.MakeValid();
SET @Wicomico= (SELECT @Wicomico.STBuffer(250).ToString());
Insert into bobo2(geom)
VALUES(@Wicomico);
© Salisbury University
SQLServerSpatial Queries
UNIONDECLARE @Parc1 geometry;
DECLARE @Parc2 geometry;
DECLARE @Result geometry;
SET @Parc1= (SELECT top 1 geom1 FROM dbo.Parcels WHERE gid= 27);
SET @Parc2= (SELECT top 1 geom1 FROM dbo.Parcels WHERE gid= 419);
SET @Parc1= @Parc1.MakeValid();
SET @Parc2= @Parc2.MakeValid();
SET @Result= (SELECT @Parc1.STUnion(@Parc2));
INSERT INTO Dist(geom)
VALUES (@Result);
© Salisbury University
Oracle Spatial Query: BufferSDO_BUFFER(Geometry, Distance in meters, Tolerance)
© Salisbury University
Oracle Spatial Query: Union
SDO_UNION(Geometry1, Geometry2, Tolerance)
© Salisbury University
PostGISSpatial Queries
BUFFERSELECT
ST_Buffer(geometry,.1)
FROM "BigBadData"
WHERE "Population" > 90000
© Salisbury University
PostGISSpatial Queries
UNION
SELECT ST_UNION((SELECT geometry FROM "Parcels" WHERE gid = 27),(SELECT geometry FROM "Parcels" WHERE gid = 419))
© Salisbury University
© Salisbury University
© Salisbury University
© Salisbury University
Discussion
Observations and expectations of first time users
© Salisbury University
PostGIS
• Positive– SQL syntax was the most straightforward– PGAdmin was very easy to use (little directions
necessary)– Useful GUI capabilities for management– Easy integration with Manifold and QGIS– Large and helpful user committee
• Negative– Installation in certain environments was difficult – Very large datasets locked up the server (possibly
due to our hardware configuration)
© Salisbury University
Oracle
• Positive– Very easy installation– Good documentation– Spatial SQL easy to write– Administration tool easy to use– Easy integration with Manifold
• Negative– Oracle Express limited character length in
enormous INSERT statements– Geometry queries required more thought, as
more parameters were required.– Use of control files was cumbersome
© Salisbury University
SQLServer Express 2008
• Must remember that this was a CTP, and part of the objective is to uncover inefficiencies. Therefore, this is not a criticism of SQLServer Express 2008.
• Positive– Good online help– SQL straightforward– Relatively fast processing– Good integration with Manifold and SharpGIS
• Negative– Installation was difficult (but remember, it was a CTP)– Spatial SQL more cumbersome than other products– Currently no management studio– Reverse format of X,Y coordinates made certain loading
difficult.
© Salisbury University
Future Activities
• GEOG 415 – Special topics class (Spring 2009) at Salisbury University in building enterprise spatial database management systems– Currently evaluating pilot projects for implementing an
enterprise-wide, low cost spatial database management system within a local Eastern Shore agency.
• EFRI- RESIN: Decision Support for Water Supplies and Critical Interdependent Infastructure – Central enterprise coordination of shared geospatial storage
(Cornell University, University of Delaware, University of Southern California, and Salisbury University) for a large National Science Foundation (NSF) proposal. Spatial database includes PostGRES/PostGIS with client access from ArcGIS, Manifold GIS, Quantum GIS, and Microsoft Office applications.
© Salisbury University
Conclusion• Many free versions of large-scale spatial databases exist
beyond what we investigated• Products were easy enough to use so that an evaluation of all
three was possible in a one semester course• Each software product had its strengths and weaknesses in
terms of – Installation– Data loading– Data analysis– Data integration with third party products
• Having a third party product to manage data loading, analysis and display is beneficial
• Cutting one’s teeth on the free versions of the data products are an ideal way to prepare a full migration to the full package
© Salisbury University
Workgroup ideas
• Manifold does not really operate in a true client/server implementation with spatial databases– Still too committed to caching all the data– What are the tradeoffs of this approach?
• Should Manifold become a true client to these spatial databases?
• Should Manifold create their own middle-ware tier?– What are the tradeoffs of this approach?