Spatial Data Base Mangment The GIS Best
Spatial Data Base Mangment The GIS Best
1
Entity
Bangor
– Penobscot County,
Maine, United
States
– Centroid -
44.801N , -6778W
– Area 34.4 square
miles
– Elevation – 158 feet
– Population 31,473
2
What is a database?
A database is any organized collection of
data. Some examples common examples:
– a telephone book
– T.V. Guide
– airline reservation system
– motor vehicle registration records
– papers in your filing cabinet
– files on your computer hard drive.
Lecture 8 3
• What is a Database?- It is a collection of related facts
Filing Cabinet
Hard disk full of data
Diary
Library
4
Database Definitions
What is a database?
It’s an organized collection of data, it need not be a computer
based system.
5
What is the ultimate purpose of
a database management
system?
Is to transform
6
Features of a DBMS
Database Management Systems provide features
to maintain database:
– Data independence - It refers to the immunity of user
applications to make changes in the definition and
organization of data.
– Integrity and security - refers to maintaining and
assuring the accuracy and consistency of data over
its entire life-cycle
7
Features of a DBMS
Database Management Systems provide features
to maintain database:
– Transaction management - A transaction comprises
a unit of work performed within a DBMS against a
database, and treated in a coherent and reliable way
independent of other transactions. Transactions in a
database environment have two main purposes:
• To provide isolation from other transactions.
• To have an “all or nothing” effect.
8
Features of a DBMS
Database Management Systems provide features
to maintain database:
– Concurrency control - ensures that correct results for
concurrent operations are generated, while getting
those results as quickly as possible.
– Backup and recovery
– Provides a language for the creation and querying of
the database.
– A language for writing application programs
9
Selecting a Database
Management System
Database management systems (or DBMSs)
can be divided into two categories:
– Desktop databases are oriented toward single-user
applications and reside on standard personal
computers (hence the term desktop).
– Server databases contain mechanisms to ensure the
reliability and consistency of data and are geared
toward multi-user applications.
10
Relational Databases
• The relational database model is the most
dominant model in both the corporate and GIS
world, due to its flexibility, organization, and
functioning..
• It was defined by Edgar F. Codd (1970).
• It can accommodate a wide range of data types.
• It is not necessary to know beforehand the types
of processing that will be performed on the
database.
11
Relational Database Terminology
• Each table contains the data for a single entity.
• Each instance of an entity is a row/record/tuple in
the table. This is a specific instance of the entity.
• Columns contain attributes/fields that describe the
entity.
– Attributes in a column must be from the same domain
(text, integer, date).
– An attribute may have a range (e.g.; 0 ≤ integers ≤ 100)
– Column order has no significance.
• Tables are related through keys.
12
Attributes
• An entity is represented by a set of attributes, that is
descriptive properties possessed by all members of
an entity set.
Domain – the set of permitted values for each
attribute
• Attribute types:
– Simple and composite attributes.
– Single-valued and multi-valued attributes
• E.g. multivalued attribute: phone-numbers
– Derived attributes
• Can be computed from other attributes
• E.g. age, given date of birth
13
Relational Database Terminology
Entity
Record, row,
tuple
A specific
Attribute, column instance of the
entity
14
Keys
• A super key of an entity set is a set of one or
more attributes whose values uniquely
determine each entity.
• A candidate key of an entity set is a minimal
super key
– Customer-id is candidate key of customer
– account-number is candidate key of account
• Although several candidate keys may exist, one
of the candidate keys is selected to be the
primary key.
15
Super Key
ID
RollNumber
RegNo
17
Primary Key
ID
18
Keys
• A composite key/concatenated is a key
with more than one attribute.
http://ecomputernotes.com/images/Composite%20Key.jpg
19
Keys
• A foreign key is an attribute that is a key of
one or more relations other than the one in
which it appears.
20
Foreign Key
Primary Key Foreign Key
21
Keys
• Given the importance of keys, there are
usually some restrictions on them: e.g.,
null values are not allowed.
• Keys are also used to index a database.
– Too few keys may result in difficulty in
searching and sorting the database.
22
Physical Database Structure
The physical design of the database specifies
the physical configuration of the database on
the storage media.
– This includes detailed specification of data
elements, data types, indexing options and other
parameters residing in the DBMS data dictionary.
– It is the detailed design of a system that includes
modules & the database's hardware & software
specifications of the system.
https://en.wikipedia.org/wiki/Database_design
23
Logical Database Structure
• Several logical data structures are used to
express the relationships between
individual data elements or records in a
database.
• Common logical data structures are
hierarchical, network, and relational, with
relational being predominant.
24
Conceptual Structure
• The conceptual structure is often
represented as a schema.
• A schema describes the database
structure in a shorthand notation.
• One example is the entity-relationship
(ER) diagram.
25
Entity Relationship Diagram
Rectangles represent entity sets.
ENTITY Diamonds represent relationship
sets.
Lines link attributes to entity sets and
entity sets to relationship sets.
RELATIONSHIP Ellipses represent attributes
27
Entity Relationship Model
• The result is a diagram of all of the entities, their
attributes, and the relationships between entities
– Each entity becomes a table.
• Student table
• Course table
– Each relationship (usually) becomes a table.
• Enrolls, which allows you to join information from both tables.
28
Types of Relationships between
Entities
• 1:1 – one faculty member is assigned to one
office.
• 1:M (M:1) – one faculty member teaches
many courses.
• M:N – many students take many courses.
• All of these relationships can exist between
attribute tables.
29
Table Join
30
Table Joins
• Table joins depend on the data not the
attribute name.
• There are many different types of table
joins.
• Tables can be joined regardless of the
relationship EXCEPT:
– When joining to the feature attribute table in a
GIS, the relationship must be 1:1 or M:1
– Other relationships must use the relate.
Lecture 8 31
One-to-One Join
Employee-id Job Employee-id name
1 Digislave 1 Tom
2 Useless Supervisor 2 John
After join
1 Digislave Tom
1 Qa Quaternary Alluvium
2 Qa Quaternary Alluvium
3 Pa Permian Abo
4 Qe Quaternary Eolian
33
Lecture 8
Relate in a GIS
https://courses.washington.edu/gis250/lessons/tables/images_av3/
relate_table1.gif
Lecture 8 34
Relational Algebra
• Codd’s specification of a relational
database relied on relational algebra.
• Relational algebra takes tables/relations
as inputs and returns tables as outputs.
• The algebra combines or splits tables by
rows or by columns to generate either a
subset of tables or an expanded tables.
Lecture 8 35
Fundamental Building Blocks
Tables comprise the fundamental building blocks of any
database.
Lecture 8 36
Relational Algebra
• Five basic operators
– select:
– project:
– union:
– difference: –
– Cartesian product: x
• The operators take one or two
relations as inputs and produce a new
relation as a result.
Lecture 8 37
Relational Algebra
• Derived Relational operators
– Intersection
– Divide (not used very often)
– Join
• These can be expressed using
different combinations of the
fundamental operators.
Lecture 8 38
Select Operation – Example
Relation r A B C D
1 7
5 7
12 3
23 10
A=B ^ D > 5 (r)
A B C D
Select from relation r
where A=B AND D>5 1 7
23 10
Lecture 8 39
Database Queries
• Queries may be made of one table or
several tables at the same time.
• In many systems querying is facilitated by
icons, or menus, or queries by example
(QBE – a graphical query language ).
Lecture 8 40
Structured Query Language
(SQL)
• DDL – Data Definition Language; used to
create and manage the database.
• DDM – Data Manipulation Language; used
to query the database.
Lecture 8 41
SQL
• SQL: widely used non-procedural language
– E.g. find the name of the customer with customer-id 192-83-
7465
select customer.customer-name
from customer
where customer.customer-id = ‘192-83-
7465’
• Application programs generally access databases
through one of
– Language extensions to allow embedded SQL
– Application program interface (e.g. ODBC/JDBC) which
allow SQL queries to be sent to a database
Lecture 8 42
Attribute Queries
Lecture 8 43
Lecture 8 44
Lecture 8 45
The ArcGIS Attribute Query
Interface
State’s Table is Open
Lecture 8 46
Lecture 8 47
Table is Open
Options
Related tables
Select by attributes
Switch selection
Clear selection
Zoom to selected
Delete Selected
Lecture 8 48
No Table is Open
Selection-
>Select by
Attributes from
the Menu Bar
Lecture 8 49
A Spatial Query in SQL
Lecture 8 50
Spatial Selection
Lecture 8 51
Spatial Data
• Spatial data has a structure that does not
necessarily fit with tabular structure.
• To construct a spatial object requires
several table joins.
• Spatial indexing is very different from the
type of indexing used in a relational
database.
Lecture 8 52
Spatial Types – OGC Simple Features
SpatialReferenceSystem Composed
Geometry
Type
Relationship
Line LinearRing
MultiPolygon MultiLineString
Lecture 8 53
Standard GIS Data Model
Linked
spatial
and
attribute
(tabular)
data.
Lecture 8 54
File-based Data Models
Geographic coordinates and attributes
are stored in separate but linked files
Arc
Info
• Coverages • Shapefiles
– Developed for – Developed for
workstation Arc/Info ArcView ~ 1993
~ 1980
– Simpler structure in
– Complex structure,
proprietary format public domain
– Attributes in Info – Attributes in dBase
tables (.dbf) tables
Lecture 8 55
Storing Data
Coverages Shapefiles
Maine
Maine
Counties
Counties.shp
Counties.shx
Counties.dbf
MCD
MCD.shp
MCDshx
MCD.dbf
Info
Lecture 8 56
Coverages and Shapefiles
– Coverages are stored partially in their own folder and
partially in the common INFO folder.
– Shapefiles are stored in three to five files (with
extensions .shp, .shx, .dbf, .sbx and .sbn).
– Coverages store common boundaries between
polygons only once, to avoid redundancy.
– Shapefiles store all the geometry of each polygon
regardless of redundancy.
– Coverage features are single lines or single polygons.
– Shapefiles allow features to have multiple,
disconnected, intersecting and overlapping components.
Lecture 8 57
Geodatabase Model
• Stores geographic coordinates as one attribute
(shape) in a relational database table
• Uses MS Access for “Personal Geodatabase”
(single user)
• Uses a file system for a “File Geodatabse”
(FGDB).
• Uses Oracle, Sybase, Ingress or other commercial
relational databases for “Enterprise
Geodatabases” (many simultaneous users)
Lecture 8 58
• There are some differences in queries between
shapefiles and geodatabases
– "STATE_NAME" LIKE 'Miss%' * in a geodatabase
– "OWNER_NAME" LIKE '_atherine smith' ?
– UPPER("LAST_NAME") = 'JONES'
– UCASE ("LAST_NAME") = 'JONES' geodatabase
– "POP2000" IS NULL
– "POP2000" IS NOT NULL
Lecture 8 59
The ArcGIS Geodatabase
Key Personal
ArcSDE File Geodatabase
Characteristics Geodatabase
Lecture 8 60
Elements of a Geodatabase
Geometric Network
Feature Dataset
Relationship Class
Feature Class
Annotation Class
Object Class
Lecture 8 61
Elements of a Geodatabase
Lecture 8 62
Objects and Object Classes
Lecture 8 63
Object view Relational view
O bjec t R ow
Lecture 8 64
Features
• Spatial object
• Location
• Attribute of type Geometry
• Spatial relationships
• Instance of a feature class
Lecture 8 65
Feature Classes
Lecture 8 66
Feature Datasets
• Container
• Same spatial reference
• Analogous to a coverage
Lecture 8 67
Assignment
• Read Chapter 8
• Problems: 1, 2, 4, 5, 9, 10, 11, 12, 15
Lecture 8 68