Application of ORDBMS to Spatial DBMS Kedar Gawande Position Paper ITK 478 Fall 2006 Date: 10/ 02/ 2006 Current trends in the Database systems With the success and the penetration of object oriented methodologies, traditional database management systems have undergone a major upgradation in the form of object relational database systems. The classic set of 4 data management systems can be summarized in the table 1. Table 1: Categories of DBMSs File Systems Simple data without queries RDBMSs Simple data with queries OODBMSs ORDBMSs Complex data without Complex data with queries queries [1] Several major software companies including IBM, Informix, Microsoft, Oracle, and Sybase have released object-relational versions of their products.[1] These companies have developed a combination of the object oriented technologies and the traditional relational database systems to create a new and improved object relational database technology also known as ORDBMS. So much so, “Oracle holds an 80-90% share of the geospatial database management market within medium-sized and large organizations.”[4] Evolving Application domains in need of advanced databases: There is an increasing scope and complexity of the new age applications geographical information systems, multimedia objects, image processing, spatial, 3-D, and temporal data. More and more applications today deal with data related to space like geometric, spatial, geographic and location based applications. [2] For example, the data than spans over 2 dimensions and have spatial dependencies and operations performed upon them can be classified as spatial data. This paper focuses on the spatial requirements of these advanced applications and how they can be met by implementing them in spatial databases by coupling with object relational DBMS. Spatial Databases as a solution to these advanced domains: A spatial database system is a database system which offers spatial data types (SDTs) 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. The data structures and operations needed for such a system need to go beyond traditional data structures and operations.[2] A spatial database system resides on top of a relational/ object relational DBMS and provides an interface for applications like GIS, Multimedia Information Systems, CAD & CAM. Instead of operating on objects on a geographic scale, CAD/CAM systems work on a smaller scale such as for an automobile engine or printed circuit boards.The differences among these three systems are only in the scale of the data, not its complexity. These applications all store, retrieve, update, or query some collection of features that have both non spatial and spatial attributes. “There are three types of spatial data: (1) GIS (mapping) data, (2) computer-aided drafting and design (CADD) data, and (3) computer-aided mapping (CAM) data. In order to work with all of these spatial data, an object relational database must be able to deal with the following: Geometrical data elements, such as points, lines, polygons, arcs, and morecomplex elements created by combining these simpler elements. Spatial relationships (such as connection and overlap) and operations (such as determining the intersection of two objects or the distance between them).” [5] Examples of Spatial Data types A spatial data type is based on coordinate geometry and has a vector based geometric representation. The semantics of the geometry are determined by its type, which may be one of point, line string, or polygon as depicted in table below. Spatial Object Types Example Object Dimension Point City 0 Curve River 1 Surface Country 2 Polygon County / State 2 [6] A city could be depicted as a point but at a more granular level, a city could well be a surface having a number of data points within itself. How object relational databases fit into the requirements of spatial databases Object relational databases trump over their relational ancestors in the freedom to create one’s own data types & specifying the behavior for those data types. Similarly, for spatial data types, the nature of information that they carry cannot be depicted using primitive data types like integer, float or strings. With an ORDBMS DDL, spatial data types can be created precisely the way they exist in the real world. The behavior with these data types can also be specified. The Querying that ORDBMSs provide also enable customized interactions and processing with the information. Additional geometry types: arcs, circles, compound polygons, compound line strings, and optimized rectangles are supported. Additionally, the following are some of the benefits to using the new object-relational model All the benefits of object oriented methodologies. Indexing & Querying is enhanced. Geometries are modeled in a single row, single column. Query optimization enhances performance. Although the relational model of the Spatial option supports three geometric primitive types like 2-D Point and Clusters, 2-D Line Strings, 2-D N-Point Polygons, implementing them in the relational schema is tedious. The object-relational model makes this easy & adds the following types to those previously listed like 2-D Arc Line Strings, Arc Polygons, Compound Polygons, Compound Line Strings, Circles, Optimized Rectangles [7] How relational databases lack fulfilling these needs: Above mentioned data types cannot be realized or even if they can be, it is extremely tedious to formulate those data types using primitive data types. For example, a polygon may be decomposed into edges and vertices For those not supported, object relational schema is the only solution. [6] Relational database systems support DB replication and distributed support but when Oracle introduces replication and distributed support for objects in a future release of Oracle Spatial, no benefits to using the relational model would persist. Conclusion: Advanced applications like GIS, CAD, CAM deal with information that cannot be modeled using primitive data types and operations on them are increasingly more complex. A database management system modeling such systems should be equipped to handle such complex information and perform such operations. A traditional relational DBMS fails to satisfy these requirements imposed by such systems. An object relational model has the necessary features to satisfy these requirements of spatial database systems described above. References: [1] Devarakonda , Ramakanth S., “Object-Relational Database Systems - The Road Ahead”, http://www.acm.org/crossroads/xrds7-3/ordbms.html Date Accessed: 10/ 01/ 2006 [2] Güting Ralf Hartmut, “Special Issue on Spatial Database Systems of the VLDB Journal”, (Vol. 3, No. 4, October 1994) [3] Medeiros, Claudia Bauzer Pires, Fatima, “Databases for GIS”, SIGMOD RECORD, Vol. 23, No. 1, March 1994 [4] IDC, Oracle 10g: Spatial Capabilities for Enterprise Solutions, Sonnen and Morris, Feb. 2005 [5] “Object Relational Databases” Oracle Spatial by Rita Massey, The CADD/GIS Technology Center for Facilities, Infrastructure, and Environment https://tsc.wes.army.mil/news/bulletins/Fall2001/oracle.htm Date Accessed: 10/ 01/ 2006 [6] “Slides for Spatial Databases: A Tour”, Chapter 1, Shekhar, S & Chawla, S, Prentice Hall, 2003 http://www.spatial.cs.umn.edu/Book/slides/ Date Accessed: 10/ 01/ 2006 [7] Oracle8i Spatial User's Guide and Reference, Release 8.1.5 http://download-east.oracle.com/docs/html/A67295_01/sdo_scri.htm#617080