58
How to Spatially Enable Your IBM Informix Database Chris Bosch

How to Spatially Enable Your IBM Informix Database

Embed Size (px)

Citation preview

Page 1: How to Spatially Enable Your IBM Informix Database

How to Spatially Enable Your IBM Informix Database

Chris Bosch

Page 2: How to Spatially Enable Your IBM Informix Database

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

3

Introduction: spatial data models Fundamental GIS data models

Raster

Vector

RealWorld

Page 4: How to Spatially Enable Your IBM Informix Database

4

Introduction: spatial data models Collections of Thematic Layers

Page 5: How to Spatially Enable Your IBM Informix Database

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

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

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

8

Introduction: spatial processes Input Manipulation Management Query Analysis Visualization

Page 9: How to Spatially Enable Your IBM Informix Database

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

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

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

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

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

14

Geometry Concepts

Page 15: How to Spatially Enable Your IBM Informix Database

15

Geometry Concepts

Page 16: How to Spatially Enable Your IBM Informix Database

16

Geometry Concepts OpenGIS Consortium (OGC) Geometry Object Model

Page 17: How to Spatially Enable Your IBM Informix Database

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

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

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

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

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

22

Geometry Concepts Geometry types

Point LineString Polygon MultiPoint MultiLineString MultiPolygon

Page 23: How to Spatially Enable Your IBM Informix Database

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

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

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

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

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

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

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

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

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

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

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

34

Geometry Concepts Equals

Page 35: How to Spatially Enable Your IBM Informix Database

35

Geometry Concepts Disjoint

Page 36: How to Spatially Enable Your IBM Informix Database

36

Geometry Concepts Intersects

Page 37: How to Spatially Enable Your IBM Informix Database

37

Geometry Concepts Touches

Page 38: How to Spatially Enable Your IBM Informix Database

38

Geometry Concepts Crosses

Page 39: How to Spatially Enable Your IBM Informix Database

39

Geometry Concepts Within

Page 40: How to Spatially Enable Your IBM Informix Database

40

Geometry Concepts Contains

Page 41: How to Spatially Enable Your IBM Informix Database

41

Geometry Concepts Overlaps

Page 42: How to Spatially Enable Your IBM Informix Database

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

43

Geometry Concepts Intersection

Page 44: How to Spatially Enable Your IBM Informix Database

44

Geometry Concepts Difference

Page 45: How to Spatially Enable Your IBM Informix Database

45

Geometry Concepts Union

Page 46: How to Spatially Enable Your IBM Informix Database

46

Geometry Concepts SymDifference

Page 47: How to Spatially Enable Your IBM Informix Database

47

Geometry Concepts Buffer

Page 48: How to Spatially Enable Your IBM Informix Database

48

Geometry Concepts ConvexHull

Page 49: How to Spatially Enable Your IBM Informix Database

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

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

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

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

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

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

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

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

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

How to Spatially Enable Your IBM Informix Database

Chris Bosch