Hassan A. Karimi
North Carolina
Supercomputing Center
3021 Cornwallis
Road
Research Triangle
Park, NC 27709
Tel: (919) 248-9249;
Fax: (919) 248-1101
E-mail:
karimi@mcnc.org
During the past few years, interoperability in geographic information systems (GISs) has become the focus of several government and nonprofit private agencies as well as GIS vendors. Their main thrust is to develop interoperable methodologies and tools for use in GIS software packages. Interoperable GISs allow users to solve problems ranging from simple to complex without requiring time-consuming efforts to convert data and adjust tools. Due to problems in populating GIS databases (e.g., the specific requirements of geospatial data modeling in GISs, the diversity of geospatial data acquisition techniques, and the range of formats in which geospatial data may be stored), much effort is currently being spent on geospatial data interoperability. However, the position taken here is that a GIS is fully interoperable only if it also provides interoperability with respect to GIS application development and GIS processing. This paper discusses interoperable GISs that support these three components: interoperable GIS data, interoperable GIS applications, and interoperable GIS computing. It is suggested that issues related to these components be addressed by the conference and subsequent workshop.
The fully interoperable GISs proposed here will provide flexible, easy-to-use environments for integrating data and applications and will allow the choice of various computing resources to solve problems. Interoperable GISs benefit users by (1) eliminating data duplication; (2) reducing the effort required to manage and maintain data; (3) facilitating application development activities; (4) providing a flexible computing environment with access to computing resources ranging from desktop machines to high-performance computers (supercomputers); and (5) reducing costs associated with data acquisition, management, maintenance, and conversion, model development, and overall operations.
Specific features of these interoperable GISs include (1) geospatial data interoperability, (2) tight coupling of application modules with GIS functionalities, (3) an intelligent spatial query analyzer, (4) remote visualization, and (5) the use of heterogeneous computing and high-performance computing and communications (HPCC) resources.
COMPONENT 1: INTEROPERABLE GIS DATA. The data sources used in various GIS applications continue to increase. For example, environmental modeling requires the fusion of remotely sensed data, Global Positioning System (GPS) data, GIS data, and several other data types. Currently, users spend considerable time and effort preparing and converting data for GIS applications. The goal of the interoperable GIS data component is to automate the conversion of data from diverse sources to build databases for GISs. Interoperable GISs must automatically convert data from one source to another, from one GIS format to another, and from one database to another, all in a way that is transparent to the user. Interoperable GISs must support geospatial metadata and spatial data transfer standards (such as the National Spatial Data Infrastructure [NSDI] standard) to provide interoperability among data sources.
COMPONENT 2: INTEROPERABLE GIS APPLICATIONS. Current methods of developing applications with GISs are often not efficient or effective, especially for complex applications such as environmental modeling. The goal of the interoperable GIS applications component is to provide easy-to-use tools for integrating application modules with GIS functionalities. Depending on the strategy, this integration may be loosely coupled or tightly coupled. The loosely coupled approach relies on the transfer of data files between the GIS and application modules. The tightly coupled approach integrates the application modules and the GIS functionalities, by building either the application modules in the GIS or the GIS in the application modules. In general, the tightly coupled approach is more desirable as it facilitates the full integration of application modules with the analytical functions of the GIS. To allow tight coupling, interoperable GISs must be equipped with advanced GIS programming techniques and tools.
COMPONENT 3: INTEROPERABLE GIS COMPUTING. The goal of the interoperable GIS computing component is to allow users to choose GIS processing platforms in a heterogeneous computing environment. Current GIS software is designed for desktop (PCs or workstation) platforms, which imposes some limitations. For example, with GISs on PCs, storing and processing the gigabytes of data that many users often work with can be a problem. Another difficulty is that many GIS users have access to only one of these two types of computing platforms, while the solutions to their particular spatial problems may actually be best processed on the other platform. PC-based GIS users sometimes need more computing power than current PCs provide; workstation-based GIS users may require workstation solutions for only a small portion of their activities. In both cases, the computing resources are either over- or underutilized, so users are not provided with optimum solutions (in terms of time and cost). Interoperable GISs should facilitate problem-solving on computing platforms ranging from desktops to HPCC resources in a highly distributed environment.
The use of a highly distributed computing environment for GISs can be facilitated by utilizing high-performance computers (parallel machines). In one strategy for providing such a highly-distributed environment, GIS functions can be processed both on desktop machines and on parallel machines through the use of desktop GIS access to HPCC resources (client-server GISs). Because current GIS platforms are either PCs or workstations, spatial analysis functions in current GIS software are based on serial algorithms. The parallel versions of these spatial algorithms must be developed to take advantage of parallel processing in interoperable GISs. Because one of the objectives of interoperable GISs is to avoid platform dependency, the parallel algorithms developed should be able to run on most parallel computing environments with little modification.
The architecture
of the proposed interoperable GIS includes (1) a front-end GIS client,
(2) a remote GIS server, and (3) a high-performance GIS kernel. The front-end
GIS client will run on PCs, Macintoshes, and workstations. It will be used
for displaying maps and will have a graphical user interface (GUI) that
will interact with the remote GIS server to perform spatial analysis. The
remote GIS server, which will run on a UNIX-based workstation, will accept
and analyze spatial queries from desktop clients. Depending on the results
of the analysis, queries will be processed using either a local desktop
spatial analysis kernel or a high-performance GIS kernel running on HPCC
machines. The high-performance GIS kernel will accept requests from the
GIS server, execute appropriate spatial analysis routines, and return the
results synchronously. The high-performance GIS processing will be transparent
to the users.