Release Description 2.2.0
This release of the PDS4 System represents Build 2c and is intended as an operational release of the system components to date. The following sections can be found in this document:
Reference Documents
This section details the controlling and applicable documents referenced for this release. The controlling documents are as follows:
- Planetary Data System (PDS) Level 1, 2 and 3 Requirements, March 26, 2010.
- Planetary Data System (PDS) 2010 Project Plan, February 2010.
- Planetary Data System (PDS) 2010 System Architecture Specification, Version 1.2, May 25, 2011.
- Planetary Data System (PDS) 2010 Operations Concept, February 2010.
- Planetary Data System (PDS) General System Software Requirements Document (SRD), Version 1.0, June 11, 2011.
- Planetary Data System (PDS) Harvest Tool Software Requirements and Design Document (SRD/SDD), Version 1.0, June 12, 2011.
- Planetary Data System (PDS) Preparation Tools Software Requirements and Design Document (SRD/SDD), Version 0.1, October 6, 2010.
- Planetary Data System (PDS) Registry Service Software Requirements and Design Document (SRD/SDD), Version 1.0, June 12, 2011.
- Planetary Data System (PDS) Report Service Software Requirements and Design Document (SRD/SDD), Version 1.0, June 12, 2011.
- Planetary Data System (PDS) Search Service Software Requirements and Design Document (SRD/SDD), Version 0.4, June 12, 2011.
- Planetary Data System (PDS) Search Protocol, Version 0.2, May 23, 2012.
- Planetary Data System (PDS) Security Service Software Requirements and Design Document (SRD/SDD), Version 1.0, June 11, 2011.
The applicable documents are as follows:
- NASA Planetary Data System (PDS) 2010 System Build I Test Plan
Capabilities
This section details the new, modified and corrected capabilities that comprise this release. They are summarized here for a system-level view. A more detailed list of capabilities can be found in the change logs for each component.
New Capabilities
The following capabilities are new for this release:
- Validate Tool added support for validation via Schematron.
- Harvest Tool added support for checksum comparison.
- Registry Service added a number of new API methods for managing registered products.
- Registry User Interface added support for updating the status and deleting packages and their associated products.
Modified Capabilities
The following capabilities have been modified for this release:
- Validate Tool was modified to include the latest XML Schema and Schematron files (v08) generated from the data model.
- Harvest Tool, Catalog Tool and Search Service were modified to keep pace with changes occurring in the PDS4 data model.
- Harvest Tool was modified to support supplying an offset for the access URL specification, supplying a package name and description and updated the report summary based on user feedback.
- Registry Service was modified to provide better error handling for the various end points.
- Search Service was modified to utilize the PDS Search Protocol end point by default.
Corrected Capabilities
The following capabilities were corrected in this release:
- Validate Tool was modified to correct an issue processing collection inventory tables.
- Harvest Tool was modified to correct an issue handling multiple DATA_SET_ID values in a PDS3 label, an issue handling metadata extraction where the desired metadata attribute is found multiple times and an issue processing collection inventory tables.
- Registry User Interface was modified to correct an issue supporting ctrl-c/ctrl-v keys for popup windows and an issue sorting events.
Liens
This section details the liens against the capabilities that have yet to be implemented or are partially implemented. They are summarized here for a system-level view. A more detailed list of liens can be found in the release notes for each component.
- Upgrade the Data Search interface to remove the dependence on the PDS3 catalog database.
- Need to review use cases for the Catalog Tool and update the software accordingly.
System Requirements
This section details the system requirements for installing and operating the software. Specific system requirements for each component in this release can be found in their respective Installation documents.
Java Runtime Environment
The custom software contained in this release was developed using Java and will run on any platform with a supported Java Runtime Environment (JRE). The software was specifically developed under Java version 1.6 and has only been tested with this version. The following commands test the local Java installation in a UNIX-based environment:
% which java /usr/bin/java % java -version java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03-384-10M3425) Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-384, mixed mode)
The first command above checks whether the java executable is in the environment's path and the second command reports the version. If Java is not installed or the version is not at least 1.6, Java will need to be downloaded and installed in the current environment. Consult the local system administrator for installation of this software. For the do-it-yourself crowd, the Java software can be downloaded from the Oracle Java Download page. The software package of choice is the Java Standard Edition (SE) 6, either the JDK or the JRE package. The JDK package is not necessary to run the software but could be useful if development and compilation of Java software will also occur in the current environment.
Java Application Server
The other main system requirement pertains to providing a Java application server for hosting certain components (Registry Service and Registry User Interface). The suggested application server for this release is Apache Tomcat with a minimal version of 6.0.20 through version 7.0.X. Consult the local system administrator for installation of this software. For the do-it-yourself crowd, the Apache Tomcat software can be downloaded from the Apache Tomcat page. Choose the version to download (6.0 or 7.0) from the menu on the left. Details on downloading, installing and configuring an Apache Tomcat server can be found in the Tomcat Deployment document.
Installation/Operation
This section details the installation and operation of the software in this release. This release is intended for deployment in the Engineering Node operations environment with certain components deployed in the environments of participating Nodes. Details regarding the release for each of these components, including installation of the packages and operation of the associated software, can be found in the documentation for each component. This release is comprised of the following components:
- Ingest
- Catalog Tool - 1.3.0
- Harvest Tool - 1.2.0
- Preparation Tools
- Core Library - 1.1.0
- Design Tool - 0.4.0
- Generate Tool - 0.4.0
- Validate Tool - 1.1.0
- Registry
- Registry Service - 1.2.0
- Registry User Interface - 1.2.0
- Report Service - 1.2.0
- Search Service
- Search Core - 0.3.0
- Search Service - 0.3.0
- Security Service - 1.2.0
Not all of the above components are required for a given installation of the software for this release. The following sections detail typical deployment scenarios for the Engineering Node and the Discipline Nodes, respectively.
Engineering Node Environment
This section details deployment to the Engineering Node operations environment. The following diagram details the deployment of the major components of this release and gives a very high-level view of the interfaces between the components and system resources:
Click the image for a larger version.
The following diagram depicts the EN system flow, starting with central catalog migration, data product registration and finishing up with search index generation:
Click the image for a larger version.
The components depicted above serve as the operational deployment of this release for the Engineering Node. The main purpose of this deployment is to begin side-by-side operations with the existing system and the Engineering Node.
- Catalog Tool
The Catalog Tool provides the means for registering PDS3 catalog files with the Registry Service. This tool provides functionality for comparing, validating and ingesting a catalog submission.
- Harvest Tool
The Harvest Tool provides the means for registering products with the Registry Service. This tool reads a PDS4 product label, extracts specified metadata and registers the product with the registry. This tool allows the user to register a batch of products and generates a summary report.
- Registry Service
The Registry Service provides functionality for tracking, auditing, locating and maintaining artifacts within the system. For this release, the registry is populated with the PDS4 context products migrated from the PDS3 central catalog database.
- Registry User Interface
The Registry User Interface provides a simple viewing capability of the contents of the associated Registry Service. It is intended to offer visual verification of successful registration of products.
- Search Service
The Search Service provides functionality for accepting queries from data consumers for registered products and includes functionality for retrieving search results. This component acts as the interface to the Registry Service for the data consumer.
- Report Service
The Report Service provides the capability for capturing and reporting metrics. With this release and the previous release, this service is undergoing testing of configurations and features with a set of metrics from the Engineering Node and the Imaging Node at JPL. This service is not yet available to the user community.
- Security Service
The Security Service provides authentication and authorization functions for the system. This service is satisfied with an open source directory service. The directory service is populated with the PDS personnel list extracted from the PDS3 central catalog database. The application server hosting the Registry Service and Registry User Interface is configured to restrict access to certain URLs and to forward those requests to this service for authentication and authorization.
Discipline Node Environment
This section details the deployment to a participating Discipline Node environment. The Nodes are asked to download, install and exercise the software that makes up this release. The following diagram details an example deployment of selected components:
Click the image for a larger version.
The selected components depicted above are intended to aid the Nodes in their PDS3 to PDS4 conversion exercises. The following diagram depicts a normalized system flow, starting with schema design, continuing onto data product label generation and validation and finishing up with data product registration:
Click the image for a larger version.
This diagram identifies where the system components come into play within the system flow. These components and the ones depicted in the deployment diagram, are described in more detail with respect to how the components can be utilized in the PDS3 to PDS4 conversion exercises with an eye towards testing these components for use in operations:
- Design Tool
The Design Tool is intended to aid users in the development of their data product label schemas. This release identifies two off-the-shelf products (Oxygen and Eclipse) that are available for this purpose. The provided documentation guides the user with respect to the download, installation and operation of each of these products.
- Generate Tool
The Generate Tool is intended to aid users in the generation of their data product labels. This tool was developed by the Imaging Node at JPL and provides a command-line interface for generating PDS4 Labels from either a PDS3 Label or a PDS-specific DOM object.
- Validate Tool
The Validate Tool comes pre-packaged with the latest version of the generic schemas generated from the data model. The tool allows the user to validate collections of products or single products against the associated generic schema. Specific schemas can be passed into the tool to enable a more detailed validation check. Although the Design Tools listed above provide a file-by-file validation capability, this tool allows the user to validate a batch of products and generates a summary report.
- Harvest Tool
The Harvest Tool provides the means for registering products with the Registry Service. This tool reads a PDS4 product label, extracts specified metadata and registers the product with the registry. This tool allows the user to register a batch of products and generates a summary report.
- Registry Service
The Registry Service provides functionality for tracking, auditing, locating and maintaining artifacts within the system. Ultimately, all products (including PDS3 products) will be registered and tracked with the Registry Service. For this release, users are asked to install and configure a local instance of the service in order to exercise this procedure. Additionally if the user is participating in the PDS3 to PDS4 conversion exercises, the resulting products or collections of products can be registered with their local registry instance.
Note: There was a typo in the Derby database configuration portion of the Installation document at the time of release. The Installation document has been updated online but the version of the document in the release package has not been updated. Please refer to the online version of the document for the correct configuration.
- Registry User Interface
The Registry User Interface provides a simple viewing capability of the contents of the associated Registry Service. It is intended to offer visual verification of successful registration of products.
Details will be forthcoming regarding deployment of the above components at the Discipline Nodes.