Time Series Management
Time Series Management and Analysis facilities.
Overview
The TimeSeriesManagerService is an application that offers facilities to import, curate and access time series data. The main goal of this service is to elaborate large amount of time series data in real time applying multiple operations: aggregation, union, grouping, filters etc.
Architecture
The interface of the TimeSeries Manager service is distributed across 6 port-types:
- the
ImportFactory
port-type serves as the interface of a single WS-Resource, it allows clients to create new import resources (ImportManager instances).
- the
ImportManager
port-type allows clients to import new time series offering operation like import, de-normalization etc.
- the
CurationFactory
port-type serves as the interface of a single WS-Resource, it allows clients to create new curation resources (CurationManager instances).
- the
CurationManager
port-type allows clients to curate time series offering operation like set column type, replace value etc.
- the
TimeSeriesFactory
port-type serves as the interface of a single WS-Resource, it allows clients to create new time series resources (TimeSeriesManager instances).
- the
TimeSeriesManager
port-type allows clients to operate on time series offering operation like union, grouping, aggregation etc.
How To Access TimeSeries data
TimeSeries offers an high-level library for interaction included in the TimeSeriesServiceStubs. This library offers facilities for service retrieving simply instantiating a TimeSeriesFactoryCall
Object passing as argument a GCUBEScope
and a SecurityManager Array
.
GCUBEScope scope= ..some scope.. //running without security GCUBESecurityManager secMan= new GCUBESecurityManagerImpl(){ @Override public boolean isSecurityEnabled() { return false; } }; TimeSeriesFactoryCall timeSeriesFactoryCall= new TimeSeriesFactoryCall(scope, new GCUBESecurityManager[]{secMan});
The TimeSeriesFactoryCall offers facilities to retrieve information about time series or to open a certain time series giving it a specific id.
... TimeSeriesFactoryCall timeSeriesFactoryCall= new TimeSeriesFactoryCall(scope, new GCUBESecurityManager[]{secMan}); String user = ..some user.. //getting the list of timeseries by ownertimeSeriesFactoryCall.getUserRelatedTimeSeries(user); //getting the list of published timeseries timeSeriesFactoryCall.getPublishedTimeSeries(); //retrieving the EPR to interact with a timeseries String timeSeriesId= ..id.. EndpointReferenceType timeSeriesEPR = timeSeriesFactoryCall.open(timeSeriesId, user);