Introduction to Spatial Database System Presented by Xiaozhi Yu.

30
Introduction to Spatial Database System Presented by Xiaozhi Yu

Transcript of Introduction to Spatial Database System Presented by Xiaozhi Yu.

Page 1: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Introduction to Spatial Database System

Presented by Xiaozhi Yu

Page 2: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Outline

What is spatial database system? What need to be presented? Organizing the underlying space. Spatial data types. Spatial relationships. Integrating geometry into DBMS data model. Spatial indexing. Spatial join. System architecture.

Page 3: Introduction to Spatial Database System Presented by Xiaozhi Yu.

What is spatial database system?

Spatial database is a database system It offers spatial data types in its data model

and query language It supports spatial data types in its

implementation , providing at least spatial indexing and efficient algorithms for spatial join

Page 4: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Modeling: What need to be presented?

Single object Points, Lines and Regions

Page 5: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Modeling: What need to be presented?

Spatially related collections of objects Partitions-----a set of regions Networks-----points and lines

Page 6: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Modeling: Organizing the Underlying Space-Discrete Geometric Bases Simplex and simplicial complex:

Simplex :For each dimension d, a d-simplex is a minimal object in that dimension. Any d-simplex is composed of (d+1) simplicies of dimension d-1.

Simplicial complex: A finite set of simplices such that the intersection of any two simplices in the set is a face (simplex of d-1 dimension)

Page 7: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Modeling: Organizing the Underlying Space-Discrete Geometric Bases Realm: Conceptually represents the complete

underlying geometry of one particular application space. A realm is a finite set of points and lines over discrete grid.

Page 8: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Modeling: Spatial data typesExample : Rose algebra Three data types

Points ---a set of R-points lines ----a set of disjointed R-blocks regions ---- a set of edge disjoint R-faces

Values are realm based, composed from elements from realm.

Kind : type sets EXT = {lines, regions} GEO= {points, line, regions} =A kind for all partitions

Page 9: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Four classes of operations in ROSE

Page 10: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Four classes of operations in ROSE

Page 11: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial Relationships

Several classes of relationships: Topological relationships

Adjacent, Disjoint, Inside, etc. Direction relationships

Above, below, north-of, southwest-of, etc. Metric relationships

Distance < 100 , etc.

Page 12: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Relationships of simple regions

Page 13: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Integrating geometry into DBMS data model

DBMS data model is extended by SDTs at the level of atomic data types.

The central idea for integrating geometric modeling into DBMS data model is to present “spatial objects ” by objects with at least one attribute of spatial data type.

Page 14: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Querying---fundamental operators

Spatial selection Exp : cities select[center inside Bavaris]

Spatial join Exp : cities rivers join[dist (center, route) < 50]

Spatial function application Exp :

Other set operators Overlay , fusion, Voronoi

Page 15: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial indexing

Two ways: Dedicated external spatial data structures are added

to the system, offering for spatial attributes. Like B-tree does for standard attributes.

Spatial objects are mapped into a one-dimensional space so that they can be stored within a standard one-dimensional index such as a B-tree.

Page 16: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial indexing : approximations

Spatial keys are much simpler geometric objects than the SDT value itself.

Page 17: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial indexing : grid approximation

An example : grid approximation. Space is divided into cells by grid and SDT value is represented by a set of cells that it intersect.

Page 18: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial indexing : grid approximation

Any shape(a set of cells) can be represented by a set of bit strings called z-elements.

For a spatial object, use its corresponding set of z-elements as a set of spatial keys.

Page 19: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial index structures for points

Grid file : partition data space by irregular grid into cells.

Scales : split line position, one scale per dimension.

Directory: entries are pointers to buckets.

Page 20: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial index structures for rectangles

There are three approaches: Approach 1 Transformation : a rectangle represented

by four points can be regarded as one point in four dimensions.

Page 21: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial index structures for rectangles

There are three approaches: Approach 2 Overlapping regions:

Page 22: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Spatial index structures for rectangles

There are three approaches: Approach 3 Clipping:

Page 23: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Supporting spatial join

Central ideas for computing spatial join are the filter and refine strategy and use of spatial index structures.

Strategies classification criteria: Grid approximation/bounding box None/one/both operands are represented in a spatial

index structure.

Page 24: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Supporting spatial join : Grid approximation/bounding box

Grid approximation: A parallel scan of the two sets of z-elements

corresponding to the two sets of spatial objects is performed, similar to a merge join for a “<=” predicate.

When using the bounding box : For each object , the bounding box of its SDT

attribute is used as a search argument. The problem is to determine for two sets of rectangles R,S, all pairs (r, s) , r intersects s.

Page 25: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Supporting spatial join

None indexes Algorithms such as bb_join, an external divided-and

conquer algorithm, similar to external merge join. Use seeded tree to build an index for one operand on

the fly.

One index Index join or repeated search join can be used. Inner operand is represented in an index. Scan the

outer operand set and for each object, the bounding box of its SDT attribute is used as a search argument on the index.

Page 26: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Supporting spatial join

Both operand have indexes Perform synchronized traversal of the two index

structure so that pairs of cells of their respective partitions covering the same part of space are encountered together.

Page 27: Introduction to Spatial Database System Presented by Xiaozhi Yu.

System architecture

Layered architecture: spatial functionality is built on top of a given DBMS.

Page 28: Introduction to Spatial Database System Presented by Xiaozhi Yu.

System architecture

Dual architecture:

Page 29: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Integrated spatial DBMS architecture- using an extensible DBMS

Page 30: Introduction to Spatial Database System Presented by Xiaozhi Yu.

Thank You