Hyrax: Difference between revisions
Line 6: | Line 6: | ||
[[Image:HyraxArchitecture.jpg|left|thumb]] | [[Image:HyraxArchitecture.jpg|left|thumb]] | ||
Hyrax uses the Java servlet mechanism to hand off requests from a general web daemon to DAP format-specific software. This results in higher performance for small requests. The servlet front end, which we call the '''O'''PeNDAP '''L'''ightweight '''F'''ront end '''S'''erver (OLFS) looks at each request and formulates a query to a second server (which may or may not on the same machine as the OLFS) called the '''B'''ack '''E'''nd '''S'''erver (BES). | |||
The BES is the high-performance server software from HAO. It handles reading data from the data stores and returning DAP-compliant responses to the OLFS. In turn, the OLFS may pass these response back to the requestor with little or no modification or it may use them to build more complex responses. The nature of the Inter Process Communication (IPC) between the OLFS and BES is such that they should both be on the same machine or be able to communicate over a very high bandwidth channel. | The BES is the high-performance server software from HAO. It handles reading data from the data stores and returning DAP-compliant responses to the OLFS. In turn, the OLFS may pass these response back to the requestor with little or no modification or it may use them to build more complex responses. The nature of the Inter Process Communication (IPC) between the OLFS and BES is such that they should both be on the same machine or be able to communicate over a very high bandwidth channel. |
Revision as of 17:33, 16 December 2010
This is the OPeNDAP 4 Data Server, also known as Hyrax.
Hyrax is a new data server which combines the efforts at UCAR/HAO to build a high performance DAP-compliant data server for the Earth System Grid II project with existing software developed by OPeNDAP.
Overview
Hyrax uses the Java servlet mechanism to hand off requests from a general web daemon to DAP format-specific software. This results in higher performance for small requests. The servlet front end, which we call the OPeNDAP Lightweight Front end Server (OLFS) looks at each request and formulates a query to a second server (which may or may not on the same machine as the OLFS) called the Back End Server (BES).
The BES is the high-performance server software from HAO. It handles reading data from the data stores and returning DAP-compliant responses to the OLFS. In turn, the OLFS may pass these response back to the requestor with little or no modification or it may use them to build more complex responses. The nature of the Inter Process Communication (IPC) between the OLFS and BES is such that they should both be on the same machine or be able to communicate over a very high bandwidth channel.
Both the OLFS and the BES will run and serve test data immediately after a default installation. Additional configuration is required for them to serve site specific data.
Features
- THREDDS Catalog Support
- Hyrax supports the THREDDS catalogs. It can server user supplied static catalogs and it will dynamically generate THREDDS catalogs of it's internal holdings..
- SOAP Messaging Support
- Hyrax supports SOAP requests. A prototype SOAP interface is included with this release of Hyrax. It is discussed in the RSG template pages here. Example client code can be found at our web site, and can be found in our Subversion archive here.
- Plugin Format and Response Handlers
- The Back-End Server (BES) used with Hyrax supports run-time loading of handlers for different formats and different response types (e.g., the ASCII response and the HTML form interface). To replace one of the standard handlers, or to add a new one, edit the bes.conf file.
- Simple Conversion from the Old-style Handlers
- It is fairly simple to convert handlers written for the older OPeNDAP server to run-time loadable modules for the BES.
- Feature Request
- Is there a feature you would like to see but don't? Let us know: support@opendap.org or opendap-tech@opendap.org (You need to subscribe first)
@TODO: Add a more comprehensive listing of the Hyrax feature set.
Downloads
To obtain Hyrax just go to the Hyrax download page and get it.
Documentation
How To Guides
For Users:
- Hyrax Installation Instructions
- Hyrax Configuration Instructions
- Hyrax integration with the Apache Web Server
- BES Modules:
- freeform data handler
- file out netcdf
- NcML data handler (Some features are not complete)
- Customizing Hyrax
- Release Notes
- System Administrators Workshop
For Developers:
- BES
- Building the BES from source.
- How to debug the BES
- Eclipse - How to Setup Eclipse in a Shrew Checkout
- How to create your own BES Module
- Starting and stopping the BES
- Running the BES command line client
- BES Client commands
- BES XML Commands
- Extending your BES Module
- Example BES Modules - the Hello World example and the CSV data handler
- BES communication protocol using PPT (point to point transport)
- OLFS
- Software Developers Workshop
Reference documentation
Thanks!
We hope we hope you find this software useful, and we welcome your questions and comments.
Contact Us
Technical Support:
- support@opendap.org
- opendap-tech@opendap.org (You need to subscribe first)
Hyrax Java Development:
- ndp <at> opendap <dot> org
Hyrax C++ Development:
- pwest <at> ucar <dot> edu (bes)
- jgallagher <at> opendap <dot> org (libdap)
Sponsorship
OPeNDAP Hyrax development is sponsored by:
This material is based upon work supported by the National Science Foundation under Grant No. 0430822. Any opinions, findings and conclusions or recomendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF).