Download Spatial database systems - Технички факултет

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Entity–attribute–value model wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Concurrency control wikipedia , lookup

Database wikipedia , lookup

Functional Database Model wikipedia , lookup

Relational model wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
Spatial database systems
Вонр. проф. д-р Александар Маркоски
Технички факултет – Битола
2008 год.
Enviromatics 2008 - Spatial database systems
1
Introduction
• Spatial database systems represent an attempt to provide
suitable data management tools to developers and users in
application areas that deal with spatial data.
• The data management requirements of spatial applications
differ substantially from those of business applications.
These applications tend to have simply structured data
records. There are only a small number of relationships
between data items. Relational database systems meet this
requirement very well.
• In opposite of that, spatial databases contain
multidimensional data with explicit knowledge on data
objects, their extent, and their position in space. The objects
are usually represented in some vector-based format. Their
relative position may be given explicit or implicit.
Enviromatics 2008 - Spatial database systems
2
Introduction (2)
• Spatial data objects have a complex structure. A spatial data
object may be composed of a single point or several
polygons distributed across space. Spatial data objects are
dynamic structures. Insertions and deletions are interleaved
with updates.
• Data structures have to support this dynamic behaviour
without deteriorating over time. Spatial databases tend to be
large. Geographic maps occupy a high number of memory
places.
• There is no standard algebra defined on spatial data. This
means in particular that there is no standardised set of base
operators. This set depends on the given application
domain.
Enviromatics 2008 - Spatial database systems
3
Spatial data types
• Traditional database systems do not provide any spatial data types. In
addition to the classical data types integer, real, character, string they
offer sometimes non-standard types of data such as date and time. An
object in a spatial database is defined by several non-spatial attributes
and one attribute of some spatial data type. This spatial attribute
describes the spatial extent (geometry, shape) of the object.
• Spatial data management suffers from an impedance mismatch between
its theoretical requirements for infinite accuracy and the limited accuracy
provided by computers. The fact that computers can not represent real
numbers with arbitrary accuracy leads to the implicit implementation of a
grid-based data model.
• A realm is a finite set of points and lines over a discrete grid that fulfils
certain conditions. Each realm point has to be a grid point. Each realm
line has to be the direct connection between two realm points. Realm
lines are not allowed to intersect.
Enviromatics 2008 - Spatial database systems
4
Spatial operators
•
Operators are grouped into different classes, depending on
their input-output behaviour. At least one of the operators
has to be of a spatial data type. The input behaviour refers
to a unary, binary or n-ary operator and the type of its
operand. The output behaviour refers to the type of result.
1. Unary operators with a Boolean result.
2. Unary operators with a scalar result. These operators map
a spatial object into a real or an integer number.
3. Unary operators with a spatial result. The most important
operators are the similarity operators that map a spatial
object into a similar object by translation, rotation or
scaling. Similarity operators are a subset of the class of
topological transformations where the dimension of the
input object is always retained.
Enviromatics 2008 - Spatial database systems
5
Spatial operators (2)
4. Other unary operators map a d-dimensional spatial object
into an object of lower or higher dimension. The boundary
operator maps a d dimensional spatial object into a (d-1)dimensional object. In opposite of that, an interior operator
maps a d-dimensional object into a (d+1)- dimensional
object.
5. Binary operators with a Boolean result. These operators
are known as spatial predicates or spatial relationships.
They use two spatial objects as input and produce a
Boolean as output. They will be classified by topological
relationships, direct relationships and metric relationships.
Enviromatics 2008 - Spatial database systems
6
Cont…
• Topological relationships are invariant with respect to
topological transformations (translation, rotation, scaling).
Examples are intersects, contains, adjacents. These
operators are known as spatial predicates or spatial
relationships. They use two spatial objects as input and
produce a Boolean as output. They will be classified by
topological relationships, direct relationships and metric
relationships or is-enclosed-by.
• Direct relationships refer to the current location of spatial
objects. They are sensitive to rotations. Examples:
Northwest of, above, under, near to.
• Metric relationships are sensitive to topological
transformations. Example: Distance < 100 m.
Enviromatics 2008 - Spatial database systems
7
Spatial operators (3)
6. Binary operators with a scalar result. Example: Distance
operator.
7. Binary operators with a spatial result. These types of
operators cover set operators and search operators.
8. The class of set operators comprises the unification,
difference and intersection of two spatial objects.
9. The class of search operators concerns spatial search in a
large area of spatial objects.
Enviromatics 2008 - Spatial database systems
8
Computer implementation of spatial
operators
•
•
An efficient computation of spatial operators requires special
implementations of spatial data types. Sometimes it is useful to
represent the same spatial object in more than one way in order
to express a broad variety of spatial operators.
Examples:
1. A polygon may be represented by a vertex list containing all
the polygon’s vertices (e. g. coordinates of triangle). The
vertex list supports similarity operators.
2. A scaling corresponds to a scalar multiplication (B = r⋅C).
3. A rotation corresponds to a matrix multiplication.
Enviromatics 2008 - Spatial database systems
9
Computer implementation of spatial
operators (2)
Also, a spatial query language has to be used.
1. Standard SQL (structured query language) is used for
querying and retrieval of non-spatial data.
2. Certain extensions to SQL are used for querying and
retrieval of spatial data.
3. Graphical aspects are handled by a special graphical
presentation language GPL.
4. Interaction of spatial SQL and GPL offers a wide variety of
choices for the graphical rendering of a query result.
Enviromatics 2008 - Spatial database systems
10
Computer implementation of spatial
operators (3)
• Problems of computer implementation come out by the fact
that this representation of spatial data is not unique. No
DBMS covers all needs. In order to appeal to a broad range
of users, DBMS have to be designed independently of any
application.
• With abstract data types the system needs to offer only a
small number of basic data types and operators directly. A
user may perceive only those basic data types plus the
abstract data types that have been declared specifically for
a given application.
• This approach simplifies the use of a database system for
inexperienced users and helps to reduce training time.
Enviromatics 2008 - Spatial database systems
11
Questions?
Enviromatics 2008 - Spatial database systems
12