About Apache OODT

Apache OODT is middleware for metadata.

Project Modules

This project has declared the following modules:

Name Description
OODT Core The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
Common Utilities Apache OODT Common Utilities Project
CAS Command Line Interface The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
Process Control System Input Data Package The Process Control System's data handling package. This package contains data structures and readers and writers to write an input file format similar to HDF, as represented in XML.
Catalog and Archive Service Generic Multi-valued Metadata Container A Multi-valued, generic Metadata container class. The class uses an internal Map of string keys pointing to vectors of strings. The data structure looks like the following: [std:string key]⇒std:vector of std:strings The multi-valued nature of the class is handled transparently by this Metadata container. Since all values are stored internally as string vectors, the difference between a scalar value and a non-scalar is handled by determining whether the list of values for a particular key is greater than 1.
CAS Protocol The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
CAS Protocol FTP Implementation The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
CAS Protocol HTTP Implementation The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
CAS Protocol IMAPS Implementation The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
CAS Protocol SFTP Implementation The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
Query Expression This component provides a way to express queries in a generic manner. Its centerpiece is a class called XMLQuery that uses boolean postfix expressions to capture the domain, range, and constraint of a query, regardless of the source of the query (SQL, keyword query, etc.). It can also encapsulate the results of a query. It's used by many other components as the standard way to pass a query and its results between servers, clients, nodes, and other components.
OODT Single Sign On Security Package The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
Catalog and Archive File Management Component The file management component of a Catalog and Archive Service. This component purposefully separates data stores and metadata stores as standard interfaces, and provides some out of the box backend implementations of them (including one based on the javax.sql.DataSource interface). This component provides everything that you need to catalog, archive and manage files, and directories, and their associated metadata.
OODT CAS Virtual Catalog and Integration Service. CAS Catalog is an effort to virtualize underlying catalogs for use in the CAS system. Heterogeneous catalog models are mapped to a common dictionary, and then integrated locally so that they may be queried across and ingested into.
Catalog and Archive Workflow Management Component The workflow management component of a Catalog and Archive Service. This component purposefully separates workflow repositories and workflow engines standard interfaces, and provides some out of the box backend implementations of them (including one based on the javax.sql.DataSource interface). This component provides everything that you need to execute workflows, and science processing pipelines.
Catalog and Archive Crawling Framework The Catalog and Archive Service Crawling Framework.
Catalog and Archive Resource Management Component The resource management component of a Catalog and Archive Service. This component provides job management, and management of the underlying software system hardware and resources, such as disk space, computational resources, and shared identity.
CAS Curation Web Services Services for ingesting files into the file manager and iteratively extracting metadata.
CAS Curation Interface A web application for managing policy for products and files and metadata that have been ingested via the CAS component.
CAS PGE Adaptor Framework Allows data processing jobs not written in conformance with the PCS PGE interface to be run within the PCS.
CAS Installer Maven Mojo The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
OODT :: Archetypes Ways to quickly get started with some of OODT's components
CAS Push-Pull-Framework The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
Product Service The Product Service provides access to data products. Products can be scientific datasets, images, documents, or anything with an electronic representation. The Product Service accepts standard query expressions (see the Query Expression component) and returns zero or more matching products. In addition, the product service can transform products from proprietary formats and into Internet standard formats or run other transformations, all without impacting local stores or operations.
Profile Service The Profile Service describes and locates resources using metadata descriptions. These descriptions, called profiles, tell of a resource's inception, composition, and location using a mix of Dublin Core and ISO-11179 metadata as well as URIs for locations. The Profile Service catalogs metadata descriptions and provides creating, updating, and querying capabilities.
OODT Web Grid The OODT grid services (product and profile services) use CORBA or RMI as their underlying network transport. However, limitations of CORBA and RMI make them inappropriate for large-scale deployments. For one, both are procedural mechanisms, providing a remote interface that resembles a method call. This makes streaming of data from a service impossible, because there are limitations to the sizes of data structures that can be passed over a remote method call. Instead, repeated calls must be made to retrieve each block of a product, making transfer speeds horribly slow compared to HTTP or FTP. (Block-based retrieval of profiles was never implemented, resulting in out of memory conditions for large profile results, which is another problem.) Second, both CORBA and RMI rely on a central name registry. The registry makes an object independent of its network location, enabling a client to call it by name (looking up its last known location in the registry). However, this requires that server objects be able to make outbound network calls to the registry (through any outbound firewall), and that the registry accept those registrations (through any inbound firewall). This required administrative action at institutions hosting server objects and at the institution hosting the registry. Often, these firewall exceptions would change without notice as system adminstrators changed at each location (apparently firewall exceptions are poorly documented everywhere). Further, in the two major deployments of OODT (PDS and EDRN), server objects have almost never moved, nullifying any benefit of the registry. This project, OODT Web Grid Services, avoids the prolems of CORBA and RMI by using HTTP as the transport mechanism for products and profiles. Further, it provides a password-protected mechanism to add new sets of product and profile query handlers, enabling seamless activation of additional capabilities.
XML-configured, DBMS-based Product and Profile Server An XML-configured DBMS-based Product and Profile meant to easily sit on top of Web-Grid and other Product and Profile server contexts for rapid deployment and integration.
Apache OODT Configurable OPeNDAP Profile Server A generic, configurable Apache OODT profile server implementation that easily connects to OPeNDAP data sources. Connections are configured via an XML configuration file, providing information on how to extract and translate datasets from OPeNDAP and THREDDS into OODT profiles.
OODT Wicket Web Components The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
CAS File Manager Browser Web App The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
CAS Product Server Web Application This project builds on top of the CAS file management component and exposes its underlying data delivery capabilities using the OODT ProductServer component. All-in-all, this project contributes an OODT LargeProductHandler component, that can be used to deliver and format a CAS product structure into an OODT XML Query Result Set.
CAS Workflow Manager Monitor Web App The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
Catalog and Archive File Management Browser The graphical front-end interface to the Catalog and Archive Service. This component provides the user of the CAS File Manager with a graphical environment in which they can view archived products' metadata, query for products with particular metadata, and export results of queries to the MS Excel(c) file format.
Catalog and Archive Workflow Management GUI Editor Apache OODT Workflow Editor GUI
Process Control System Core Package The Process Control System's core system framework. PCS is an agglomeration of CAS services and components needed to build a science data system.
Process Control System Operator Interface Webapp The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.
OODT Process Control System JAX-RS service layer A web application for exposing services form the underlying OODT Process Control System via the JAX-RS specification.