How to Spatially Enable Your IBM Informix Database Chris Bosch.

58
How to Spatially Enable Your IBM Informix Database Chris Bosch

Transcript of How to Spatially Enable Your IBM Informix Database Chris Bosch.

Page 1: How to Spatially Enable Your IBM Informix Database Chris Bosch.

How to Spatially Enable Your IBM Informix Database

Chris Bosch

Page 2: How to Spatially Enable Your IBM Informix Database Chris Bosch.

2

Agenda Introduction

spatial data models spatial standards spatial products spatial processes

Geometry concepts Spatially enabling your database Moving forward

Page 3: How to Spatially Enable Your IBM Informix Database Chris Bosch.

3

Introduction: spatial data models Fundamental GIS data models

Raster

Vector

RealWorld

Page 4: How to Spatially Enable Your IBM Informix Database Chris Bosch.

4

Introduction: spatial data models Collections of Thematic Layers

Page 5: How to Spatially Enable Your IBM Informix Database Chris Bosch.

5

Introduction: spatial standards Open GIS Consortium (OGC)

OpenGIS Simple Features Specification for SQL, Revision 1.1– SQL92 implementations (SFS NG)

• using numeric SQL types for geometry storage and ODBC access.• using binary SQL types for geometry storage and ODBC access.

– SQL92 with Geometry Types implementations (SFS TF)• supporting both textual and binary ODBC access to geometry.

SQL/MM (Multi-Media)

Page 6: How to Spatially Enable Your IBM Informix Database Chris Bosch.

6

Introduction: spatial products OGC SFS conforming products

OGC Spec

Organization Product Type Contact Date

SFS TF 1.1

International Business Machines Corporation IBM DB2 Spatial Extender 7.1 Client Adler, David 6/13/2001

SFS TF 1.1

Informix Software, Inc. Spatial DataBlade Module 8.1 Client Stevens, Michael 6/25/2001

SFS TF 1.1

ESRI ArcSDE for Informix 8.1 Client Danko, David 6/21/2001

SFS TF 1.1

ESRI ArcSDE for DB2 8.1 Client Danko, David 6/21/2001

SFS TF 1.1

ESRI Spatial Database Engine for DB2 Datajoiner 3.0.2

Client Danko, David 12/23/1999

SFS TF 1.1

ESRI Spatial Database Engine for Informix 3.0.2

Client Danko, David 12/23/1999

SFS NG 1.1

Oracle Corporation Oracle8i Spatial Client Lopez, Xavier 10/24/2000

SFS NG 1.1

Oracle Corporation Oracle8i Spatial 8.1.6 Client Lopez, Xavier 5/17/1999

SFS NG 1.1

Oracle Corporation Oracle8i Spatial 8.1.5 Client Lopez, Xavier 5/12/1999

SFS NG 1.1

Oracle Corporation Oracle8 Spatial Cartridge 8.0.5 Client Lopez, Xavier 4/14/1999

SFS NG 1.1

ESRI Spatial Database Engine for Oracle 3.0.2 Client Danko, David 12/23/1999

SFS NG 1.1

Oracle Corporation Oracle Spatial, release 9i (9.0.1) Server Lopez, Xavier 9/30/2002

SFS NG 1.1

Oracle Corporation Oracle Spatial, 9i Release 2 (9.2.0) Server Lopez, Xavier 9/30/2002

Page 7: How to Spatially Enable Your IBM Informix Database Chris Bosch.

7

Introduction: spatial products IBM

DB2 Spatial Extender IDS Spatial DataBlade module IDS Geodetic DataBlade module

Partner products for IBM Informix Dynamic Server MapInfo SpatialWare module MapInfo Geocoding module BCS Grid And more …

Page 8: How to Spatially Enable Your IBM Informix Database Chris Bosch.

8

Introduction: spatial processes Input Manipulation Management Query Analysis Visualization

Page 9: How to Spatially Enable Your IBM Informix Database Chris Bosch.

9

Agenda Introduction Geometry concepts

Coordinate Systems OGC Geometry Object Model Basic Methods on Geometries Methods for testing Spatial Relations Methods that support Spatial Analysis

Spatially enabling your database Moving forward

Page 10: How to Spatially Enable Your IBM Informix Database Chris Bosch.

10

Multiple Coordinate systems exist Geographic (GEOGCS)

– longitude/latitude Projected (PROJCS)

– X,Y Geocentric (GEOCCS)

– X,Y,Z

Defined by several objects DATUM SPHEROID PRIMEM UNIT

Geometry Concepts

Page 11: How to Spatially Enable Your IBM Informix Database Chris Bosch.

11

What is coordinate data? Sets of values describing a particular location on a grid. Longitude/Latitude X,Y Z

– Altitude or Depth value M

– Measures

0,0

10 y

20 x

Geometry Concepts

Page 12: How to Spatially Enable Your IBM Informix Database Chris Bosch.

12

Projections Transform locations of features on the Earth’s surface to a two dimensional

surface.– Mathematical– Preserving Shape– Preserving Accuracy

• area• distance• location

Geometry Concepts

Page 13: How to Spatially Enable Your IBM Informix Database Chris Bosch.

13

Geometry Concepts Conic

A portion of the Earth's surface is projected onto a cone. The cone is then flattened

Mercator The Earth's sphere is flattened out.

In this projections the further away from the equator a point is, the larger it seems

Page 14: How to Spatially Enable Your IBM Informix Database Chris Bosch.

14

Geometry Concepts

Page 15: How to Spatially Enable Your IBM Informix Database Chris Bosch.

15

Geometry Concepts

Page 16: How to Spatially Enable Your IBM Informix Database Chris Bosch.

16

Geometry Concepts OpenGIS Consortium (OGC) Geometry Object Model

Page 17: How to Spatially Enable Your IBM Informix Database Chris Bosch.

17

Geometry Concepts Basic Methods on Geometries

Dimension ( ):Integer GeometryType ( ):String SRID ( ):Integer Envelope( ):Geometry IsEmpty( ):Integer IsSimple( ):Integer Boundary( ):Geometry AsText( ):String AsBinary( ):Binary

Page 18: How to Spatially Enable Your IBM Informix Database Chris Bosch.

18

Geometry Concepts Dimension

used to classify shapes three values can be used

– 0 (has neither length nor area)• points, multipoints

– 1 (has length)• linestrings, multilinestrings

– 2 (has area)• polygons, multipolygons

Page 19: How to Spatially Enable Your IBM Informix Database Chris Bosch.

19

Geometry Concepts IsSimple

Some subclasses may be simple or non-simple, while others are always simple

multipoints, linestrings, multilinestrings are non-simple if their interiors intersect

Non-simple Simple Non-simple Simple

Page 20: How to Spatially Enable Your IBM Informix Database Chris Bosch.

20

Geometry Concepts IsEmpty

A geometry is empty if it does not have any points– An empty set

An empty geometry has an instantiable type An empty geometry has an SRID

– The set is empty but has the same SRID as the column being queried.

Page 21: How to Spatially Enable Your IBM Informix Database Chris Bosch.

21

Geometry Concepts SRID (Spatial Reference ID)

Each ordinate of a geometry is stored within a 32-bit integer The x offset, y offset and system units determine the limits (“box”) of the

coordinate reference system Spatial functions require that geometries have the same SRID

– Geometries stored in a spatial column must all have the same SRID

Page 22: How to Spatially Enable Your IBM Informix Database Chris Bosch.

22

Geometry Concepts Geometry types

Point LineString Polygon MultiPoint MultiLineString MultiPolygon

Page 23: How to Spatially Enable Your IBM Informix Database Chris Bosch.

23

Geometry Concepts Point

Represent distinct locations – wells, landmarks, elevations...

Dimension of 0 Single XY coordinate Always simple Null boundary

– all “interior”

interior

Page 24: How to Spatially Enable Your IBM Informix Database Chris Bosch.

24

Geometry Concepts LineString

Represent linear feature – rivers, roads, power lines...

Dimension of 1– linestrings have length

String of coordinates defining a linear interpolated path Simple if it does not intersect its interior

simple non-simple

Page 25: How to Spatially Enable Your IBM Informix Database Chris Bosch.

25

Geometry Concepts LineString continued …

Boundary is the endpoints Boundary is null if the linestring is closed LineString is a ring if the linestring is closed and simple

boundary

interior

Page 26: How to Spatially Enable Your IBM Informix Database Chris Bosch.

26

Geometry Concepts Polygon

A surface stored as a sequence of points that define an exterior ring and possibly one or more interior rings

The rings cannot overlap Rings can intersect at a tangent Always simple

interior boundary

Page 27: How to Spatially Enable Your IBM Informix Database Chris Bosch.

27

Geometry Concepts Polygon continued …

The rings are the boundary Polygons have area and length (perimeter) Define water bodies, parcels of land...

Polygon with a hole. Outer coordinates are expressed counter-clockwise, inner coordinates clockwise.

Page 28: How to Spatially Enable Your IBM Informix Database Chris Bosch.

28

Geometry Concepts MultiPoint

A collection of points Dimension of 0 Simple or non-simple Boundary is NULL Define broadcast patterns...

Page 29: How to Spatially Enable Your IBM Informix Database Chris Bosch.

29

Geometry Concepts MultiLineString

A collection of linestrings Dimension of 1 Has length Simple and non-simple Simple if endpoints of all elements intersect

Simple Non-Simple Simple

Page 30: How to Spatially Enable Your IBM Informix Database Chris Bosch.

30

Geometry Concepts MultiLineString continued …

Boundary is the endpoints of all elements combined Boundary is null if all endpoints intersect other endpoints, in which case the

MultiLineString is closed Define networks

Page 31: How to Spatially Enable Your IBM Informix Database Chris Bosch.

31

Geometry Concepts MultiPolygon

A collection of polygons Dimension of 2 Has area and perimeter Boundary is defined by the set of interior and exterior rings that form its

elements

Page 32: How to Spatially Enable Your IBM Informix Database Chris Bosch.

32

Geometry Concepts MultiPolygon continued …

Always simple Rings cannot overlap Rings can intersect at a single tangent point

Page 33: How to Spatially Enable Your IBM Informix Database Chris Bosch.

33

Geometry Concepts Methods for testing Spatial Relations between Geometries

Equals(anotherGeometry:Geometry):Integer Disjoint(anotherGeometry:Geometry):Integer Intersects(anotherGeometry:Geometry):Integer Touches(anotherGeometry:Geometry):Integer Crosses(anotherGeometry:Geometry):Integer Within(anotherGeometry:Geometry):Integer Contains(anotherGeometry:Geometry):Integer Overlaps(anotherGeometry:Geometry):Integer Relate(anotherGeometry:Geometry, intersectionPatternMatrix:String):Integer

Page 34: How to Spatially Enable Your IBM Informix Database Chris Bosch.

34

Geometry Concepts Equals

Page 35: How to Spatially Enable Your IBM Informix Database Chris Bosch.

35

Geometry Concepts Disjoint

Page 36: How to Spatially Enable Your IBM Informix Database Chris Bosch.

36

Geometry Concepts Intersects

Page 37: How to Spatially Enable Your IBM Informix Database Chris Bosch.

37

Geometry Concepts Touches

Page 38: How to Spatially Enable Your IBM Informix Database Chris Bosch.

38

Geometry Concepts Crosses

Page 39: How to Spatially Enable Your IBM Informix Database Chris Bosch.

39

Geometry Concepts Within

Page 40: How to Spatially Enable Your IBM Informix Database Chris Bosch.

40

Geometry Concepts Contains

Page 41: How to Spatially Enable Your IBM Informix Database Chris Bosch.

41

Geometry Concepts Overlaps

Page 42: How to Spatially Enable Your IBM Informix Database Chris Bosch.

42

Geometry Concepts Methods that support Spatial Analysis

Intersection(anotherGeometry:Geometry):Geometry Union(anotherGeometry:Geometry):Geometry Difference(anotherGeometry:Geometry):Geometry SymDifference(anotherGeometry:Geometry):Geometry Buffer(distance:Double):Geometry ConvexHull( ):Geometry Distance(anotherGeometry:Geometry):Double

Page 43: How to Spatially Enable Your IBM Informix Database Chris Bosch.

43

Geometry Concepts Intersection

Page 44: How to Spatially Enable Your IBM Informix Database Chris Bosch.

44

Geometry Concepts Difference

Page 45: How to Spatially Enable Your IBM Informix Database Chris Bosch.

45

Geometry Concepts Union

Page 46: How to Spatially Enable Your IBM Informix Database Chris Bosch.

46

Geometry Concepts SymDifference

Page 47: How to Spatially Enable Your IBM Informix Database Chris Bosch.

47

Geometry Concepts Buffer

Page 48: How to Spatially Enable Your IBM Informix Database Chris Bosch.

48

Geometry Concepts ConvexHull

Page 49: How to Spatially Enable Your IBM Informix Database Chris Bosch.

49

Agenda Introduction Geometry concepts Spatially enabling your database

Product version requirements Installation and configuration Adding spatial types and functions to your database Adding spatial data to your database

Moving forward

Page 50: How to Spatially Enable Your IBM Informix Database Chris Bosch.

50

Agenda Introduction Geometry concepts Spatially enabling your database Moving forward

Enroll in customer training courses Become certified Participate in user community Make use of on-line resources Engage IBM technical support Provide feedback

Page 51: How to Spatially Enable Your IBM Informix Database Chris Bosch.

51

Moving Forward Enroll in customer training courses

IBM Informix Dynamic Server– FN-848: Managing and Optimizing IBM Informix Dynamic Server

Databaseshttp://www.ibm.com/software/data/informix/education/courses/848.html

– FN-910: Data Migration and Reorganizationhttp://www.ibm.com/software/data/informix/education/courses/910.html

– L1-846: IBM Informix Dynamic Server Administrationhttp://www.ibm.com/software/data/informix/education/courses/846.html

– L2-403: IBM Informix Dynamic Server Performance Tuninghttp://www.ibm.com/software/data/informix/education/courses/403.html

– L2-748: IBM Informix Dynamic Server Backup and Restorehttp://www.ibm.com/software/data/informix/education/courses/748.html

Page 52: How to Spatially Enable Your IBM Informix Database Chris Bosch.

52

Moving Forward Enroll in customer training courses

IBM DB2– CF030 - DB2 Family Fundamentals (also available via CD-ROM)– CF120 - DB2 SQL Workshop (also available via CD-ROM)– CF131 - DB2 Advanced SQL Workshop (also available via CD-ROM)– CT28C - DB2 UDB for Experienced Relational DBAs (CD-ROM)– DW230 - Managing Geographic Data with DB2 Spatial Extender– http://www-3.ibm.com/services/learning/spotlight/db2/all.html

ESRI– Creating and Managing Geodatabases (for ArcEditor 8 and ArcInfo 8)– Introduction to ArcSDE using ArcInfo– ArcSDE Administration for DB2– http://www.esri.com/training/training.html

Page 53: How to Spatially Enable Your IBM Informix Database Chris Bosch.

53

Moving Forward Become certified

IBM Certified Solutions Expert - DB2 UDB V7.1 Database Administration for UNIX, Linux, Windows and OS/2

– Test 512 (or 718): DB2 UDB V7.1 Family Fundamentalshttp://www-1.ibm.com/certify/tests/obj512.shtml

– Test 513 (or 719): DB2 UDB V7.1 for UNIX, Linux, Windows and OS/2 Database Administrationhttp://www-1.ibm.com/certify/tests/obj513.shtml

Page 54: How to Spatially Enable Your IBM Informix Database Chris Bosch.

54

Moving Forward Become certified

IBM Certified Solutions Expert - Informix Dynamic Server V9 System Administrator

– Test 660-112: Managing and Optimizing Informix Dynamic Server Databaseshttp://www-1.ibm.com/certify/tests/obj660-112.shtml

– Test 660-612: System Administration for IBM Informix Dynamic Server Version 9 http://www-1.ibm.com/certify/tests/obj660-612.shtml

Page 55: How to Spatially Enable Your IBM Informix Database Chris Bosch.

55

Moving Forward Participate in user community

International Informix Users Group– http://www.iiug.org/

International DB2 Users Group– http://www.idug.org/

ESRI International User Conference– http://www.esri.com/events/uc/index.html

Page 56: How to Spatially Enable Your IBM Informix Database Chris Bosch.

56

Moving Forward Make use of on-line resources

Open GIS Consortium– http://opengis.org/

IBM DB2 Spatial Extender– http://www-4.ibm.com/software/data/spatial/

IBM Informix Spatial DataBlade module– http://www-4.ibm.com/software/data/informix/blades/spatial/

IBM Geodetic DataBlade module– http://www-4.ibm.com/software/data/informix/blades/geodetic/

ESRI– http://www.esri.com/ ; http://arconline.esri.com/

IBM developerWorks : DB2 Developer Domain : Informix Developer Zone– http://www7b.software.ibm.com/dmdd/zones/informix/ids_spatial.html

Newsgroups– news://news.software.ibm.com/ibm.software.db2.udb.spatial

Page 57: How to Spatially Enable Your IBM Informix Database Chris Bosch.

57

Moving Forward Engage IBM Informix technical support

The IBM Software Support Guide begins here– http://techsupport.services.ibm.com/guides/handbook.html

Information specific to support of IBM Informix products– http://www-3.ibm.com/software/data/informix/support/

Information specific to support of IBM Informix Dynamic Server– http://www-3.ibm.com/software/data/informix/ids/support/

Information specific to support of IBM DB2– http://www-3.ibm.com/software/data/support/

Information specific to support of IBM DB2 Spatial Extender– http://www-3.ibm.com/software/data/spatial/support.html

Provide feedback

Page 58: How to Spatially Enable Your IBM Informix Database Chris Bosch.

How to Spatially Enable Your IBM Informix Database

Chris Bosch