Presentation on theme: "Agenda Today Quiz with two questions Spatial concepts and data models"— Presentation transcript:
1Agenda Today Quiz with two questions Spatial concepts and data models Next class’s topic
2QuizSorting is a popular method to access “traditional data” rapidly. Why is it difficult to sort spatial data? (exercise 8)E-commerce retailers reach customers allover the world via the Internet from a single facility. Some of them claim that geography and locations are irrelevant in the Internet age. What is your opinion on this issue. Justify your answer.
3Chapter 2: Spatial Concepts and Data Models. 2. 1 Introduction. 2 Chapter 2: Spatial Concepts and Data Models Introduction 2.2 Models of Spatial Information 2.3 Three-Step Database Design 2.4 Extending ER with Spatial Concepts 2.5 Summary
4SDBMS is valuable to many important applications ReviewSDBMS is valuable to many important applicationsSDBMS is a software moduleworks with an underlying DBMSprovides spatial ADTs callable from a query languageprovides methods for efficient processing of spatial queriesComponents of SDBMS includespatial data model, spatial data types and operatorsspatial query language, processing and optimizationspatial data miningSDBMS is used to store, query and share spatial data for GIS as well as other applications
5Learning Objectives Learning Objectives (LO) LO1: Understand concept of data modelsWhat is a data model?Why use data models?LO2 : Understand the models of spatial informationLO3: Understand the 3-step design of databasesLO4: Learn about the trends in spatial data modelsMapping Sections to learning objectivesLOLOLO , 2.4
6What is a Data Model? What is a model? (Dictionary meaning) A set of plans (blueprint drawing) for a buildingA miniature representation of a system to analyze properties of interestWhat is Data Model?Specify structure or schema of a data setDocument description of dataFacilitates early analysis of some propertiese.g., querying ability, redundancy, consistency, storage space requirements, etc.Examples:GIS organize spatial set as a set of layersDatabases organize dataset as a collection of tables
7Why Data Models? Data models facilitate Early analysis of properties, e.g. storage cost, querying ability, ...Reuse of shared data among multiple applicationsExchange of data across organizationConversion of data to new software / environmentExample- Y2K crisis for year 2000Many computer software systems were developed without well-defined data models in 1960s and 1970s. These systems used a variety of data models for representing time and date. Some of the representations used two digits to represent years. In late 1990s, people worried that the 2 digit representation of year may lead to errorneous behavior.For example, age of a person born in 1960 (represented as 60) in year 2000 (represented as 00) may appear negative and may be flagged as illegal data item. A large amount of effort and resources (hundreds of Billions of dollars) was spent in revising the software.Proper use of data model may have significantly reduced the costs. If time and date were modeled as abstract data types in a software, only a small portion of the software implementing the date ADT had to be reviewed and revised.
8Types of Data Models Two Types of data models Generic data models Developed for business data processingSupport simple abstract data types (ADTs), e.g. numbers, strings, dateNot convenient for spatial ADTs, e.g., polygonsRecall a polygon becomes dozens of rows in 3 tables (Fig. 1.4, pp. 8)Need to extend with spatial concepts, e.g., ADTsApplication Domain specific, e.g. spatial modelsSet of concepts developed in Geographic Info. ScienceCommon spatial ADTs across different GIS applicationsPlan of StudyFirst study concepts in spatial modelsThen study generic modelFinally put the two together
9Mapping “census_table” into a Relational Database Fig 1.4
10Learning Objectives Learning Objectives (LO) LO1: Understand concept of data modelsLO2 : Understand the models of spatial informationField based modelObject based modelLO3: Understand the 3-step design of databasesLO4: Learn about the trends in spatial data modelsMapping Sections to learning objectivesLOLOLO , 2.4
112.1 Models of Spatial Information Two common modelsField basedObject basedExample: Forest standsFig. 2.1(a) forest stand map(b) Object view has 3 polygons(c ) Field view has a function
122.1.1 Field based Model Three main concepts: Spatial Framework is a partitioning of spacee.g., Grid imposed by Latitude and LongitudeField Functions:f: Spatial Framework Attribute DomainField OperationsExamples, addition(+) and composition(o).
13Types of Field Operations Local: value of the new field at a given location in the spatial frame-work depends only on the value of the input field at that location(e.g., Thresholding)Focal:value of the resulting field at a given location depends on the values that the input field assumes in a small neighborhood of the location(e.g., Gradient)Zonal:Zonal operations are naturally associated with aggregate operators or the integration function. An operation that calculates the average height of the trees for each species is a zonal operation.Exercise: Classify following operations on elevation field(I) Identify peaks (points higher than its neighbors)(II) Identify mountain ranges (elevation over 2000 feet)(III) Determine average elevation of a set of river basins
142.1.2 Object Model Object model concepts Example from a roadmap Objects: distinct identifiable things relevant to an applicationObjects have attributes and operationsAttribute: a simple (e.g. numeric, string) property of an objectOperations: function maps object attributes to other objectsExample from a roadmapObjects: roads, landmarks, ...Attributes of road objects:spatial: location, e.g. polygon boundary of land-parcelnon-spatial: name (e.g. Route 66), type (e.g. interstate, residential street), number of lanes, speed limit, …Operations on road objects: determine center line, determine length, determine intersection with other roads, ...
15Classifying Spatial objects Spatial objets are spatial attributes of general objectsSpatial objects are of many typesSimple0- dimensional (points), 1 dimensional (curves), 2 dimensional (surfaces)Example given at the bottom of this slideCollectionsPolygon collection (e.g. boundary of Japan or Hawaii), …See more complete list in Figure 2.2Spatial Object TypesExample ObjectDimensionPointCityCurveRiver1SurfaceCountry2
16Spatial Object Types in OGIS Data Model Fig 2.2: Each rectangle shows a distinct spatial object type
17Classifying Operations on spatial objects in Object Model Classifying operations (Tables 2.1, 2.2, pp )Set based: 2-dimensional spatial objects (e.g. polygons) are sets of pointsa set operation (e.g. intersection) of 2 polygons produce another polygonTopological operations: Boundary of USA touches boundary of CanadaDirectional: New York city is to east of ChicagoMetric: Chicago is about 700 miles from New York city.Q? Identify classes of spatial operations not listed in this slide.Set theory basedUnion, Intersection, Containment,ToplogicalTouches, Disjoint, Overlap, etc.DirectionalEast,North-West, etc.MetricDistance
18Topological Relationships invariant under elastic deformation (without tear, merge).Two countries which touch each other in a planar paper map will continue to do so in spherical globe maps.Topology is the study of topological relationshipsExample queries with topological operationsWhat is the topological relationship between two objects A and B ?Find all objects which have a given topological relationship to object A ?
19Topological Concepts Interior, boundary, exterior Green is A interior Let A be an object in a “Universe” U.Green is A interiorRed is boundary of ABlue –(Green + Red) isA exteriorUAQuestion: Define Interior, boundary, exterior on curves and points.
20Nine-Intersection Model of Topological Relationships Many toplogical Relationship between A and B can bespecified using 9 intersection modelExamples on next slideNine intersectionsintersections between interior, boundary, exterior of A, BA and B are spatial objects in a two dimensional plane.Can be arranged as a 3 by 3 matrixMatrix element take a value of 0 (false) or 1 (true).Q? Determine the number of many distinct 3 by 3 boolean matrices .
21Specifying topological operation in 9-Intersection Model Fig 2.3: 9 intersection matrices for a few topological operationsQuestion: Can this model specify topological operation between a polygonand a curve?
22Using Object Model of Spatial Data OGIS standard set of spatial data types and operationsSimilar to the object model in computer softwareEasily used with many computer software systemsProgramming languages like Java, C++, Visual basicExample use in a Java program is in section 2.1.6Post-relational databases, e.g. OODBMS, ORDBMSExample usage in chapter 3 through 6
23Due and next classTerry and Lei: paper analysis narratives and slides due 24 hours before presentation next weekPrepare on a open book quiz with 2 questions based on today’s topicRead chapter 2.1 if you have notNext class: chapter 2.2, 2.3, 2.4 of the bookNote: Sep 21, Two paragraphs describing the possible questions. Submit an electronic copy and link it to your project website
24Agenda Today Quiz with two questions Spatial database design Trend in spatial data base modelNext class
25QuizThe nine intersection model as shown in Figure2.3 page 30 produces 8 valid topological relationships between two surfaces. However from Figure2.3 we can see, four intersection model (interior and boundary) already distinguish these 8 relationships. Consider the topological relationship between two lines. Show two topological relationships which can be distinguished by nine intersection model but can not be distinguished by four intersection model.Classify the following operations into local, focal, and zonal: (a) slope (b) snow-covered park (c) site selection for a new facility (d) average population (e) total population
26Learning Objectives Learning Objectives (LO) LO1: Understand concept of data modelsLO2 : Understand the models of spatial informationLO3: Understand the 3-step design of databasesConceptual - ER modelLogical - Relational modelPhysicalTranslation from Conceptual to LogicalLO4: Learn about the trends in spatial data modelsMapping chapter sections to learning objectivesLOLOLO , 2.4
272.2 Three-Step Database Design Database applications are modeled using a three-step design processConceptual-data types,relationships and constraints(ER model)Logical-mapping to a Relational model and associated query language(Relational Algebra)Physical-file structures, indexing,ScopeWe discuss conceptual and logical data models in section 2.3Physical model is discussed in chapter 4
28Example Application Domain Database design is for a specific application domainOften a requirements document is availableDesigners discuss requirements with end-users as neededWe will use a simple spatial application domainto illustrate concepts in conceptual and logical data modelsto illustrate translation of conceptual DM to logical DMSpatial application domainA state-park consists of forests.A forest is a collection of forest-stands of different speciesState-Park is accessed by roads and has a managerState-Park has facilitiesRiver runs through state-park and supplies water to the facilities
292.2.1 Conceptual DM: The ER Model 3 basic conceptsEntities have an independent conceptual or physical existence.Examples: Forest, Road, Manager, ...Entities are characterized by AttributesExample: Forest has attributes of name, elevation, etc.An Entity interacts with another Entity through relationships.Road allow access to Forest interiors.This relationship may be name “Accesses”Comparison with Object model of spatial informationEntities are collections of attributes like objectsHowever ER model does not permit general user defined operationsRelationships are not directly supported in Object modelbut may be simulated via operations
30Relationship TypesRelationships can be categorized bycardinality constraintsother properties, e.g. number of participating entitiesBinary relationship: two entities participateTypes of Cardinality constraints for binary relationshipsOne-One: An instance of an entity relates to a unique instance of other entity.Many-One: Many instances of an entity relate to an instance of an other.Many-Many: Many instances of one entity relate to multiple instances of another.Exercise: Identify type of cardinality constraint for following:Many facilities belong to a forest. Each facility belong to one forest.A manager manages 1 forest. Each forest has 1 manager.A river supplies water to many facilities. A facility gets water from many rivers.
31ER Diagrams Graphical Notation ER Diagrams are graphic representation of ER modelsSeveral different graphic notation are usedWe use a simple notation summarized belowExample ER Diagram for Forest exampl in next slideQ? Compare and contrast “Attributes” and “Multi-valued attributes”.ConceptSymbolEntitiesAttributesMulti-valued AttributesRelationshipsCardinality of Relationship1:1, M:1, M:N
32ER Diagram for “State-Park” Fig 2.4Exercise:List the entities, attributes, relationships in this ER diagramIdentify cardinality constraint for each relationship.How many roads “Accesses” a “Forest_stand”? (one or many)
332.2.2 Logical Data Model: The Relational Model Relational model is based on set theoryMain conceptsDomain: a set of values for a simple attributeRelation: cross-product of a set of domainsRepresents a table, i.e. homogeneous collection of rows (tuples)The set of columns (i.e. attributes) are same for each rowComparison to concepts in conceptual data modelRelations are similar to but not identical to entitiesDomains are similar to attributesTranslation rules establishing exact correspondence are discussed in 2.2.3
34Relational Schema Schema of a Relation Relational schema of a database Enumerates columns, identifies primary key and foreign keys.Primary Key :one or more attributes uniquely identify each row within a tableForeign keysR’s attributes which form primary key of another relation SValue of a foreign key in any tuple of R match values in some row of SRelational schema of a databasecollection of schemas of all relations in the databaseExample: Figure 2.5 (next slide)Ablue print summary drawing of the database table structuresAllows analysis of storage costs, data redundancy, querying capabilitiesSome databases were designed as relational schema in 1980sNowadays, databases are designed as E R models and relational schema is generated via CASE tools
35Relational Schema Example Exercise:Identify relations withprimary keysforeign keysother attributesCompare with ER diagramFigure 2.4, pp. 37Fig 2.5
36Relational Schema for “Point”, “Line”, “Polygon” and “Elevation” Relational model restricts attribute domainssimple atomic values, e.g. a numberDisallows complex values (e.g. polygons) for columnsComplex values need to be decomposed into simpler domainsA polygon may be decomposed into edges and vertices (Fig. 2.5)Fig 2.5
37More on Relational Model Integrity ConstraintsKey: Every relation has a primary key.Entity Integrity: Value of primary key in a row is never undefinedReferential Integrity: Value of an attribute of a Foreign Key must appear as a value in the primary key of another relationship or must be null.Normal Forms (NF) for Relational schemaReduce data redundancy and facilitate querying1st NF: Each column in a relation contains an atomic value.2nd and 3rd NF: Values of non-key attributes are fully determined by the values of the primary key, only the primary key, and nothing but the primary key.Other normal forms exists but are seldom usedTranslating a well-designed ER model yields a relational schema in 3rd NFsatisfying definition of 1st, 2nd and 3rd normal forms
382.2.3 Mapping ER to Relational Highlights of translation rules (section 2.2.3)Entity becomes RelationAttributes become columns in the relationMulti-valued attributes become a new relationincludes foreign key to link to relation for the entityRelationships (1:1, 1:N) become foreign keysM:N Relationships become a relationcontaining foreign keys or relations from participating entitiesExample and ExerciseCompare Fig. 2.4 and Fig. 2.5Identify the relational schema components forentity Facility, its attributes and its relationshipsNote an empty relation box in Fig Fill in its schema.
39Learning Objectives Learning Objectives (LO) LO1: Understand concept of data modelsLO2 : Understand the models of spatial informationLO3: Understand the 3-step design of databasesLO4: Learn about the trends in spatial data modelsPictograms in conceptual modelsUML class diagramsMapping Sections to learning objectivesLOLOLO , 2.4
402.3 Extending ER with Spatial Concepts MotivationER Model is based on discrete sets with no implicit relationshipsSpatial data comes from a continuous set with implicit relationshipsAny pair of spatial entities has relationships like distance, direction, …Explicitly drawing all spatial relationshipclutters ER diagramgenerates additional tables in relational schemaMisses implicit constraints in spatial relationships (e.g. partition)PictogramsLabel spatial entities along with their spatial data typesAllows inference of spatial relationships and constraintsReduces clutter in ER diagram and relational schemaExample: Fig. 2.7 (next slide) is simpler than Fig. 2.4
42Specifying Pictograms Grammar based approachRewrite rulelike English syntax diagramsClasses of pictogramsEntity pictogramsbasic: point, line, polygoncollection of basic...Relationship pictogramspartition, network
44Entity Pictograms: Derived and Alternate Shapes Derived shape example is city center point from boundary polygonAlternate shape example: A road is represented as a polygon for constructionor as a line for navigation
452.4 Conceptual Data Modeling with UML MotivationER Model does not allow user defined operationsObject oriented software development uses UMLUML stands for Unified Modeling LanguageIt is a standard consisting of several diagramsclass diagrams are most relevant for data modelingUML class diagrams conceptsAttributes are simple or composite propertiesMethods represent operations, functions and proceduresClass is a collection of attributes and methodsRelationship relate classesExample UML class diagram: Figure 2.8
46UML Class Diagram with Pictograms: Example Exercise: Identify classes, attributes, methods, relationships in Fig. 2.8.Compare Fig. 2.8 with corresponding ER diagram in Fig. 2.7.Fig 2.8
47Comparing UML Class Diagrams to ER Diagrams Concepts in UML class diagram vs. those in ER diagramsClass without methods is an EntityAttributes are common in both modelsUML does not have key attributes and integrity constraintsERD does not have methodsRelationships properties are richer in ERDsEntities in ER diagram relate to datasets, but UML class diagramcan contain classes which have little to do with data
482.5 SummarySpatial Information modeling can be classed into Field based and Object basedField based for modeling smoothly varying entities, like rainfallObject based for modeling discrete entities, like road, city, landmark
49Summary A data model is a high level description of the data it can help in early analysis of storage cost, data qualityThere are two popular models of spatial informationField based and Object basedDatabase are designed in 3-stepsConceptual, Logical and PhysicalPictograms can simplify Conceptual data models
50Next Week: Reading List Spatial database overview and model papersR.H. Guting, An Introduction to Spatial Database Systems, The VLDB Journal, vol. 3, no. 4, pp , 1994 [SCM1], presenter: Terry Griffin, Discussion leader:Brian HarringtonAlexander Zipf, Sven Kruger, TGML: Extending GML by Temporal Constructs - A Proposal for a Spatiotemporal Framework in XML, Proceedings of the ninth ACM international symposium on Advances in geographic information systems, 2001 [SCM2] presenter: Lei Shi, Discussion leader: Brian Harrington