Spatial Database Systems

J Mwaura

Lecture 2: Database Principles and Architecture

Spatial Database Systems

J Mwaura

Basic Concepts of Spatial DBMS

  • Problem space - the realm of the complex problem
  • Data model - the constructs, operations, and constraints framing the DBMS
  • Database schema - data description language
  • Database engine - software implementation of the schema
  • Database - instantiations of data
  • User interface - software through which people work
  • Middleware - a layer of software between two others (DBMS) engine and applications)
  • Development tools and Application programs - task focused software

Basic Concepts of Spatial DBMS

new

Classification of Database Systems

Data models - Relational, object-oriented systems, object-relational systems

Primary database functions - Data storage; transaction systems; decision support system

Nature of data - Spatial information systems; non-spatial information system

Objectives of information -Custodial systems and data warehouse; project-oriented systems

Hardware platforms and system configurations - Distributed systems; Desktop Systems

Classification of Database Systems

Approaches to Data Processing

File-based approach

  • Data are stored separately in physical files
  • Applications read the files directly

Data-based approach

  • one (or more) physical files contain logical separators like tables
  • Application reads a schema, and fetches data

File-based Approach

Data-based Approach

Factors for modern database systems

The desire to overcome the limitations of conventional file processing applications

To take advantage of advances in computer technology

The changing concept of using data - database stores not only data, but also a description of the characteristics of the data and database integrity rules

Hardware and Software Architecture

Centralized and Distributed Database Architecture

Client-server computing

Database Software

Web-based Database Architecture

Centralized Database Architecture -1970's

Processing was performed on a single computer with primary memory (random access memory - RAM) and secondary memory (disk)

Access was via dumb terminal, that is terminal has no onboard memory

All input/output were performed on single host computer

Centralized Database Architecture

Distributed Database Architecture -1980-90's

Nodes - computer, operating system and database system software

Network cards - support protocols for data exchange

Communication Protocol - Transmission Control Protocol/Internet Protocol (TCP/IP)

Data Processor/Manager - Data engine for storing and retrieving data

Transaction Processor - Controls database transactions

Distributed transparency features; distribution, performance, transaction and heterogeneity

Distributed Database Architecture

Client-Server Computing - 2000's

Software runs on several client computers together with one or more servers

Client - software used for interaction with database

Application server - applications programs are stored and executed

Database server - programs for storage and retrieval of data

Client-server computing for databases

Client-Server Options

Client-Server functions are split between clients and servers

  • Two tier client-server architecture(a - d)
  • Three tier client-server architecture (e)
  • Thin client / Fat server architecture (a & b)
  • Fat clients / Thin server architecture (c & d)

Database Software - modules in database system

Database engine - operating system

SQL/NoSQL - database analysis routines

Network Middleware - client-side applications

Compiled database application interfaces - dynamic data analysis

Software modules of databases

Architecture of a typical Web-based database

Web-based Database Architecture

Data flow as numbers indicated in previous slide

  1. client submits TCP/IP packet request
  2. using hypertext markup language (HTML) embedded in hypertext transfer protocol (HTTP) which is interpreted on Web server
  3. a script page submitted to a server-side extension, also called web-to-database middleware
  4. processes database queries using Common Gateway Interface (CGI) or API protocols
  5. queries are interpreted by database server engine
  6. then dynamically generates (wrapped back up) an HTML-formatted page that includes the data retrieved from database
  7. return to Web Server for HTTP wrapping which
  8. forwards the HTTP/HTML packet wrapped in TCP/IP protocol with data
  9. to the client that can interpret all the packaging and present the data

End of Lecture 2

Spatial Databases

That's it!

Queries about this Lesson, please send them to: jmwaura@jkuat.ac.ke

*References*

  • Database Systems: Design, Implementation, and Project Management, Springer. Albert K W Yeung & G. Brent Hall
  • Database Systems: Design, Implementation, and Management, 12th ed. Carlos Coronel & Steven Morris
  • Database Modeling and Design; Logical Design, 5th ed. Taby Teorey et.al
  • Fundamentals of database systems, 6th ed. Ramez Elmasri & Shamkant B. Navathe
Courtesy of