The EMI middleware is addressing four technical areas: Computing, Data, Security and Infrastructure.
Compute Area: include middleware services and corresponding client components involved in the processing and management of user requests concerning the execution of a computational task. They cover the interaction with Local Resource Management Services, the provision of a common interface to the computational resources of a site (the so-called Computing Element) and the availability of high-level meta-scheduling, workflow execution and task tracking functionality.
Data Area: include middleware services and corresponding client components involved in the processing and management of user requests concerning storage management, data access and data replication. Multiple storage solutions exist, addressing different types of resources – disk, tape or a combination of the two – all exporting the same Storage Resource Management (SRM) interface (the so-called Storage Element). Data access libraries are available for storage systems not offering a POSIX interface towards the computational resources. Data and metadata catalogues track the location of copies of data chunks in multiple places.
Security Area: include middleware services and components that enable and enforce the Grid security model, allowing the safe sharing of resources on a large scale. They cover identity management, Virtual Organization membership management, authentication, delegation and renewal of credentials, and authorization.
Infrastructure Area: include middleware services and components that provide common information and management functionality to deployed Grid services. They include the Information System and Service Registry, which provide a view of the services available on the Grid together with their characteristics; the messaging infrastructure, that allows to collect and distribute messages generated by Grid services or user tasks; the service monitoring and management providers that allow the retrieval of Grid services status information and service state management; the Logging and Bookkeeping services that allows collecting, aggregating and archiving job execution information; the accounting functionality to collect, distribute and publish information concerning the usage of resources This area also deals with internal infrastructure components, such as service containers that are required for middleware services.