REGARDS storage microservice
The Storage (or rs-storage) microservice is an integral part of the functional
groups OAIS Services (Functional overview),
GeoJson services (Functional overview) and
Restitution services.
The rs-storage is the microservice that manages the physical storage and retrieval of files
This microservice can handle online, and nearline storage locations.
A nearline storage location stores files in an online buffer and periodically transfers the files from the buffer to a long-term archival system that is not accessible synchronously. The files need to be restored to become available for download. For more information, see the Wikipedia articles on Nearline storage and Amazon S3 Glacier, which is an example of nearline storage used in REGARDS.
Its main responsibilities are:
- Copying files of a storage system to another
- Storing files in a storage system
- Retrieving files from a storage system
- Deleting files in a storage system
For nearline locations, the following functionalities are also provided:
- Checking the availability of a file in a storage system
- Requesting the restoration of a file from a storage system
Unlike other microservices, the rs-Storage microservice is not intended to be accessed directly by users. The REST
APIs are
mainly private and are intended for maintenance rather than for performing actual storage or retrieval operations.
Instead, file storage requests are handled by the Ingest
or Feature Manager microservices, while file retrieval requests are handled by
the Order microservice (to retrieve product files by *order) or
the Catalog microservice (to retrieve product files by direct download)' .
The stored files cannot be accessed through the API because the files access rights are not managed by the storage
microservice but by the Data Manager and Catalog microservices.
The rs-Storage microservice depends on its plugins, which serve as interfaces between the microservice and the storage
system in use (online or nearline).
| Concept | Compatibility | Description |
|---|---|---|
| Multitenant | Yes | Can handle multiple tenants/projects |
| Vertical scalability | Yes | Uses Jobs system |
| Horizontal scalability | No | Service can not be deployed with multiple instances |
You can learn how the service works with the conception section.
How to use
You can learn how to operate the microservice using the API Guides :
- Browse all REST API available endpoints.
Plugins
A storage location plugin serves as the interface between the microservice and the actual storage space (COTS). See the Plugins section to learn more about the available storage location plugins and how to configure them.
How to configure
To learn how the microservice is configured with static parameters from properties files see the Configuration section.
To understand the configuration of specific tenants (projects), see the Import/export configuration section.
How to access source code
Microservice source code is available on GitHub.