Integration of 3D Geoscientific Visualisation Tools with help of a Geo-Database Kernel S. Shumilov, Dr. M. Breunig, Department of Computer Science.

Slides:



Advertisements
Similar presentations
Personalized Presentation in Web-Based Information Systems Institute of Informatics and Software Engineering Faculty of Informatics and Information Technologies.
Advertisements

Chapter 10: Designing Databases
ICS 434 Advanced Database Systems
COM vs. CORBA.
A component- and message-based architectural style for GUI software
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
Research initiative V 3 D 2 of the German Research Foundation (DFG) „Distributed Processing and Exchange of Digital Documents“ Ltd. Bib.-Direktor W. Stephan.
Introduction to Databases
Concepts of Database Management Seventh Edition
Broker Pattern Pattern-Oriented Software Architecture (POSA 1)
I.1 Distributed Systems Prof. Dr. Alexander Schill Dresden Technical University Computer Networks Dept.
WWW’04 – Towards Context-Aware Adaptable Web Services1 Towards Context-Aware Adaptable Web Services Markus Keidl Universität Passau Fakultät für Mathematik.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Chapter Object-Oriented Practices. Agenda Object-Oriented Concepts Terminology Object-Oriented Modeling Tips Object-Oriented Data Models and DBMSs.
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
File Systems and Databases
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Chapter 13 Physical Architecture Layer Design
12 Chapter 12 Client/Server Systems Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 17 Client-Server Processing, Parallel Database Processing,
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Object Based Operating Systems1 Learning Objectives Object Orientation and its benefits Controversy over object based operating systems Object based operating.
The University of Akron Dept of Business Technology Computer Information Systems Database Management Approaches 2440: 180 Database Concepts Instructor:
Chapter 4 Database Management Systems. Chapter 4Slide 2 What is a Database Management System (DBMS)?  Database An organized collection of related data.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
WP6: Grid Authorization Service Review meeting in Berlin, March 8 th 2004 Marcin Adamski Michał Chmielewski Sergiusz Fonrobert Jarek Nabrzyski Tomasz Nowocień.
The Design Discipline.
Quality Assurance for Component- Based Software Development Cai Xia (Mphil Term1) Supervisor: Prof. Michael R. Lyu 5 May, 2000.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Database Architecture Introduction to Databases. The Nature of Data Un-structured Semi-structured Structured.
COM vs. CORBA Computer Science at Azusa Pacific University September 19, 2015 Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department.
Transaction and Rule Support for Workflow Management - A Retrospective on the WIDE Architecture Paul Grefen CS Department & CTIT University of Twente.
第十四章 J2EE 入门 Introduction What is J2EE ?
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
Databases and Database Management Systems
1 of of 25 3 of 25 ORBs (Object Request Broker) – A distributed software bus for communication among middleware services and applications – To.
19/10/20151 Semantic WEB Scientific Data Integration Vladimir Serebryakov Computing Centre of the Russian Academy of Science Proposal: SkTech.RC/IT/Madnick.
INFRASTRUCTURE FOR GIS INTEROPERABLITY APPLICATION FACULTY OF INFORMATION AND COMMUNICATION TECHNOLOGY (FTMK) THE TECHNICAL UNIVERSITY OF MALAYSIA MELAKA.
NOVA Networked Object-based EnVironment for Analysis P. Nevski, A. Vaniachine, T. Wenaus NOVA is a project to develop distributed object oriented physics.
State Key Laboratory of Resources and Environmental Information System China Integration of Grid Service and Web Processing Service Gao Ang State Key Laboratory.
Distributed Object Frameworks DCE and CORBA. Distributed Computing Environment (DCE) Architecture proposed by OSF Goal: to standardize an open UNIX envt.
Presented By:- Sudipta Dhara Roll Table of Content Table of Content 1.Introduction 2.How it evolved 3.Need of Middleware 4.Middleware Basic 5.Categories.
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
S. Shumilov – Zürich Analytical Visualization Framework - a visual data processing and knowledge discovery system Ivan Denisovich, Serge Shumilov Department.
GEON2 and OpenEarth Framework (OEF) Bradley Wallet School of Geology and Geophysics, University of Oklahoma
From Digital Objects to Content across eInfrastructures Content and Storage Management in gCube Pasquale Pagano CNR –ISTI on behalf of Heiko Schuldt Dept.
NOVA A Networked Object-Based EnVironment for Analysis “Framework Components for Distributed Computing” Pavel Nevski, Sasha Vanyashin, Torre Wenaus US.
A user interface framework for Grid-based computational steering and visualization. Jason Wood*, Mark Riding and Ken Brodlie.
Object storage and object interoperability
25 April Unified Cryptologic Architecture: A Framework for a Service Based Architecture Unified Cryptologic Architecture: A Framework for a Service.
Lecture 21: Component-Based Software Engineering
Chapter 1 Database Access from Client Applications.
Distributed Data Servers and Web Interface in the Climate Data Portal Willa H. Zhu Joint Institute for the Study of Ocean and Atmosphere University of.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
Middleware Department of Computer Science Southern Illinois University Edwardsville Spring, 2016 Dr. Hiroshi Fujinoki Middleware/001.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 15 System Architecture III.
Grid Services for Digital Archive Tao-Sheng Chen Academia Sinica Computing Centre
Java Distributed Object System
Design and realization of Payload Operation and Application system of China’s Space Station Wang HongFei 首页.
CORBA Alegria Baquero.
Inventory of Distributed Computing Concepts and Web services
CORBA Alegria Baquero.
Inventory of Distributed Computing Concepts
Quality Assurance for Component-Based Software Development
Middleware and ORB CS 314 Operating Systems
OBJECT STORAGE AND INTEROPERABILITY
Middleware and ORB CS 314 Operating Systems
Presentation transcript:

Integration of 3D Geoscientific Visualisation Tools with help of a Geo-Database Kernel S. Shumilov, Dr. M. Breunig, Department of Computer Science III, University of Bonn, Germany http://www.geo.cs.uni-bonn.de/

Presentation Overview Motivation Case Study Approach Evaluation Summary

heterogeneous isolated tools The Problem tool 2 tool 3 tool 1 “closed” applications proprietary data exchange formats obscure data semantics no reuse due to poor documentation heterogeneous isolated tools

Requirements Heterogeneity Distribution technical level (DBMS, hardware, operating systems, …) logical level (data formats, standards, semantics, …) Distribution transparent network access to various information sources location independent cooperative work maintain advantages of decentralized data storage

Case Study Geological Geophysical 3D Model GOCAD IGMAS

? The Differences GOCAD IGMAS Bonn, SGI IRIX, C++, Geological Berlin, Sun Solaris, Fortran, Geophysical ?

Integration of Data Models GOCAD IGMAS Concurrent access to the common spatial data Geological Geophysical GeoStore - an integrated geological-geophysical extension of 3D kernel a geometric 3D kernel - GeoToolKit

GeoToolKit Object Model GeoToolKit Kernel Space(S) methods: insert(SO) remove(SO) retrieve(BB):S add_index(AM) SpatialObject(SO) methods: contains(SO):BOOL intersection(SO):SO distance(SO):REAL clone():SO AccessMethod(AM) methods: insert(SO) remove(SO) retrieve(BB):Set<SO> BoundingBox(BB) methods: contains(BB):BOOL intersection(BB):BB SpatialObject Class Hierarchy AccessMethod Class Hierarchy 0D 1D 2D 3D Point Segment Triangle Tetrahedron R*Tree OctTree To facilitate the development of 3D/4D geo-applications we have developed a component-based software called GeoToolKit. The idea is to provide for the application developer a set of geo-oriented software building blocks involving DBMS-based spatial data maintenance, special support for efficient spatial retrieval, communication, visualization and graphical interfaces, which can be assembled in a ready-to-use application even by geo-scientists not experienced in programming. GeoToolKit is not a closed GIS-in-a-box package - it is rather a library of C++ classes that allows the incorporation of spatial functionality within applications. Currently GeoToolKit includes classes for the representation of simple (point, segment, triangle, tetrahedron) and complex (curve, surface, solid) 3D spatial objects. Complex shapes are approximated and decomposed into a set of adjacent simple objects of the same dimension. Such representation turned out to be especially beneficial for the maintenance of non-regular shapes which are typical for the majority of geo-applications. GeoToolKit class hierarchy is complete: any 3D-spatial object can be modeled either directly by one of the built-in spatial classes or as a composition of these classes within a group. Geometric operations are closed: operation results can be used in further operations. Spatial objects are maintained in special container classes - spaces - which are capable of efficient retrieval of elements according to their location in space. To provide an efficient retrieval a space utilizes specialized spatial indexes. PolyLine TriangNet TetraNet User-Defined Access Methods inheritance 1:1 relationship Curve Surface Volume 1:n relationship Group Line Plane Box User-Defined Spatial Objects representational data type

GeoStore Object Model Geometric GeoToolKit Kernel getVolume() Surface ClosedSurf Volume getSurf() {2+,} { time = const } StratSurface Stratum {2+,} { property = const } PropSurface Domain Solid { block = const } attributes: time property block The integrated geological-geophysical data model is based upon GeoToolKit’s class hierarchy. This picture presents a part of the data model that inherited from two basic GeoToolKit’s classes: Surface and Volume. New geo-scientific classes define some additional thematic attributes (e.g. lithology, tectonics and density) and inherit the geometric functionality completely from GeoToolKit’s spatial classes. All geo-scientific classes can be subdivided into three sections: a) Volume based spatial complex: Solid, b) Volume based spatial compound objects: Stratum, Domain, Block, c) Surface based spatial compound objects: StratSurface, PropSurface, FaultSurface. Solid is a maximal volume that has constant thematic attributes. Solid’s objects are used as basic building blocks for compound objects. For example, groups of solids with the same lithology attributes build a Stratum. This solid representation is more preferable for geological modeling, because it allows an efficient derivation of stratigraphical values for arbitrary locations in space. In GOCAD a solid (referred to as Tsolid) can be modelled as a specialised tetrahedron container class, which is derived from a general simplicial complex class. Alternatively, a stratum can be modelled as a composition of bounding surfaces: faults and an upper and lower stratigraphic boundaries. IGMAS, on the contrary, exploits the bounding surface representation under assumption that bodies have no holes. FaultSurface Block (to the Stratum) GhostSurface Geological - Geophysical extension C++ class inheritance aggregation 1:1 relationship 1:n relationship function relation

Integration of Platforms GOCAD IGMAS Bonn, SGI IRIX, C++ Berlin, Sun Solaris, Fortran Remote multiplatform access CORBA GeoStore GeoToolKit Common spatial data

ObjectStore/CORBA Integration „proxy“ object Geo-Applications CORBA- Client GOCAD CORBA Adapter transient mediator GeoStore persistent object GeoToolKit

XDA - An Integration Framework CORBA XDA SODA eXtensible Database Adapter - a framework for ObjectStore/ CORBA integration Spatial Object Adapter - an extension of XDA for GeoStore/ GeoToolKit transient mediator GeoStore GeoToolKit persistent object

Functionality of eXtendable Database Adapter remote interaction Control of Binding Object reference generation Support for Up-Down Calls Client’s IDL interface Intelligent automatic Mediator’s Activation and Deactivation Transactions control Clustering of database objects ORB BOA XDA SODA MEDIATOR - transient CORBA object ObjectStore API A database schema evolution may be extremely time-consuming, therefore the CORBA-compilance should be achievable without changing where and how the data are stored. It could be achieved only if the mediators are transient and an original database do not have any additional communication counterparts. The price of this is a responsibility to control the life circle of mediators – their creation and deletion. Care should be taken also to avoid the creation of multiple mediators tied with the same database object. Since standard CORBA object adapter – Basic Object Adapter (BOA) does not provide these features, we developed our own an eXtensible Database Adapter (XDA) an object adapter for objects stored in a database. The XDA does not completely replace the BOA, but represents its extension. Unlike the BOA, the XDA control the life circle of mediators and deal with typical database features, e.g. locks and transactions. The XDA provides for a CORBA client an IDL interface for the native ObjectStore functionality allowing the client to control the management of persistent objects. The interface includes methods for manipulation with usual ObjectStore objects such as databases, segments, objects and transactions. ObjectStore persistent ObjectStore objects

Usage of transactions XDA_Adapter_var xda; XDA_Transaction_var tr1, tr2, tr3; ... // connect to the adapter and open a database op1 (); // default mode - implicit transaction op2 (); // management by the XDA // explicit transaction management by the client tr1 = xda->begin_transaction (XDA_Transaction::update); op3 (); op4 (); tr1->commit_destory(); // nested transaction tr2 = xda->begin_transaction(XDA_Transaction::update); op5 (); tr3 = xda->begin_transaction (XDA_Transaction::read_only); op6 (); op7 (); tr3->abort_destroy (); // abort of transaction op8 (); tr2->commit_destroy (); boundaries of open transactions ?

Advantages from CORBA/OODBMS integration Independence from concrete platform, programming environment and concrete database system makes the data accessible for arbitrary remote applications manage complex object relations in understandable manner Applications can manipulate with persistent objects directly in the database reduces network traffic of data keeps clients thin makes data concurrently available improves data consistency Arbitrary CORBA-compatible applications can concurrently access a common data. These applications can run on different hardware and software platforms and have different data models. Different geo-applications can store, retrieve and also exchange data with each other. For example, updated parts of geometries (inside a box) from IGMAS can be stored in the database and retrieved for further processing in GOCAD. Moreover CORBA allows to process spatial objects direct in the object-oriented database that reduces network data transfer and allows to keep clients relative thin. The objects can be accessed at any time concurrently by other remote applications, that work on different computing environments and probably have different data models. Application objects can be stored, retrieved and processed directly in the object-oriented database without transfer to the client side. This keeps data consistent during data exchange between different applications.

Evaluation Application Project Participants: Geological 3D Modelling A. Siehl, R. Seidemann Dept. of Geology, University of Bonn Gravity and Magnetic 3D Modelling H.-J. Götze, S. Schmidt Dept. of Geophysics, FU Berlin Dataset: Geotectonic Atlas of NW Germany (Kockel et al. 1996) Sponsor agenda: Deutsche Forschung Gemeinschaft (DFG) and BGR

Remote access to common spatial data model The Goal Geological 3D modeling and visualization tools Geophysical Remote access to common spatial data model GOCAD IGMAS GeoStore Construction of consistent geological 3D model during iterative process of geoscientific 3D modeling in different geological and geophysical tools

Developed 3D-GIS architecture CORBA clients IGMAS Platforms: SGI / Solaris / Windows NT IGMAS extension GOCAD C / Fortran interface Fortran/CORBA Library GOCAD extension C++ interface Object Request Broker (ORB) IDL interface SODA XDA GeoToolKit/GeoStore - was tacked as a start point Database for the development of the 3D/4D Geo-Database. Its object model was extended by the new types and a Wrapper around the Database was developed. Wrapper makes it accessible to the remote CORBA clients: GOCAD and IGMAS. Using the CORBA the clients receive access to the Database. The extensions to the clients provide a user interface for the database. Basically our work was focused on the development of the Wrapper on the server part. Since standard CORBA object adapter – Basic Object Adapter (BOA) does not provide these features, we developed our own an eXtensible Database Adapter (XDA) - an object adapter for objects stored in a database. Through corresponding transient mediators XDA makes original ObjectStore classes (e.g. os_database, os_transaction) accessible for a CORBA client. C++ interface GeoToolKit/ GeoStore CORBA servers Platform: Solaris ObjectStore

Geological 3D Model

GOCAD - CORBA export

3D Solid Model In GeoStore

R*Tree access method in GeoStore

IGMAS 3D gravity model W-E trending cross section of the IGMAS 3D gravity model, cutting through the study area with the geological 3D model included

CORBA - GOCAD import

Corrected Geological 3D model jm kru Weser su+sm ju Bückeburg Stadthagen Salt dome k 5 so + m 10km

Consistency Control in GeoStore

Results BGR 3D perspective view of the horizon “Buntsandstein” Kockel, F. et al., Geotektonischer Atlas von Nordwest-Deutschland und dem deutschen Nordsee-Sektor - Digital, Hannover, 1999. http://www.bgr.de/

Advantages of Integration Improves consistency of 3D Models Allows working on parts of large 3D models Extends the set of usable geo-scientific tools Provides openness and reusability of the data and methods

Developed Technologies GeoToolKit - a generic geometric 3D database kernel GeoStore - an integrated geological-geophysical extension eXtensible Database Adapter - a framework for ObjectStore/CORBA integration

Future Development A distributed interoperable infrastructure is achievable in our opinion, but needs to be completely dynamic and extensible Generic semantic models based on meta- information could improve flexibility of the system Intelligent access and mediation methods to distributed persistent storages can speed-up system’s performance

Communication Infrastructure VRML Distributed Geoscientific Tools and Applications Platform-independent Extensible Client-Integrator IGMAS GOCAD Communication Infrastructure GeoClient Bus GeoServer GeoStore Intelligent Bus Management, Metadata Services, Pool of Client’s Components GeoToolKit 3D/4D Database

Integration of Applications VRML Integrated Components IGMAS Dynamically Extensible Client GOCAD GeoClient Bus GeoServer Pool of Client’s Components

Integration of Data Sources GOCAD Geoscientific Tools and Applications GeoClient Bus Open Data Sources Adapter Mediators 3D/4D Database

3D-GIS Integration Architecture Geoscientific Tools and Applications ? IGMAS GOCAD GeoClient Bus Adapter Adapter GeoServer ? GeoStore New Database GeoToolKit 3D/4D Database

Contact information Department of Computer Science III, University of Bonn, Germany http://www.geo.cs.uni-bonn.de/ GeoToolKit http://www.geo.cs.uni-bonn.de/software/geotoolkit XDA http://www.cs.uni-bonn.de/~shumilov/research/oda Sergey Shumilov shumilov@cs.uni-bonn.de