Enabling Service Area
The Enabling Service Area includes the services supporting the infrastructure’s run-time. These provide functionalities such as service registration, discovery, orchestration, authentication and authorization, subscription and notification. Enabling services ensure that Manager Services can orchestrate services of Data and Functionality Areas to process data or perform administrative operations, typically executed manually in traditional ADLSs; e.g. query load balance, storage and index replica management etc..
The system governs all resources available, i.e. services and repositories, by means of so-called Enabling Services, to be deployed and administered by the responsible organization and available 24/7. Such services, which form the “operative system” of a D-Net infrastructure instantiation, are:
- Information Service: the service addresses resource registration and discovery; resources (services and repositories) willing to be part of the system have to register to the Information Service, i.e. publish a profile with information about their location, the functionality they expose and their current status; services must keep their profiles updated to their status changes during their life-time; through the Information Service, services can discover and locate the resources they need to interact with;
- Manager Service: the service addresses resource orchestration; Manager Services implement service workflows by discovering the services they need to combine and orchestrating them into pipelines according to the logic at hand. In this view the service are workflow execution engines designed to manage distributed transactions in the D-Net environment. Informally, a transaction is a sequence of atomic actions, initially fired by an event to which the Manager Service was subscribed.
- Result Set Service: Result Sets are mechanisms supported by D-NET services to exchange data in the form of XML files obeying to a given XML Schema, e.g. metadata records of a given metadata format. In particular, they contain an ordered list of XML entries, which can be accessed through paging mechanisms or by position. A ResultSet contains the result of a service elaboration and is identified in the infrastructure by an End Point Reference (EPR). Services, given an input request (possibly accompanied by an input ResultSet EPR), execute the requested operation and return the ResultSet EPR with the result. ResultSets have a life-time, which can be established and modified by both the producer and the consumer.
- Chron Job Service: it is used to schedule and run time-based scripts. The scripts can be programmed in Java and added to the service, when required. The service offers APIs for re-scheduling, suspending, execute a script. Examples of scripts are: weekly re-indexing of metadata stores, collection of content from an URL address, monthy garbage collection of a database, etc.