[RICK] Implement Caches for ReferencedSites
-------------------------------------------

                 Key: STANBOL-56
                 URL: https://issues.apache.org/jira/browse/STANBOL-56
             Project: Stanbol
          Issue Type: Improvement
          Components: RICK
            Reporter: Fabian Christ
            Assignee: Rupert Westenthaler


Reported by project member rupert.westenthaler, Nov 16, 2010

ReferencedSites can define a cache strategy.
NONE ... means that no cache should be used
USED  ... indicated, that Entities loaded from the site should be cached locally
ALL ... indicated, that the Cache holds all entities of the referenced site.

The caching functionality will be implemented based on the Yard interface. This 
means that all the cached data will be stored within a Yard (The Yard is the 
storage component of the RICK)

To give the user control about the information to be caches the already 
existing mapping functionality needs to be extended. 
Users need to be able to define 
 - fields to be cached
 - languages to be cached for human language texts like labels and descriptions.
 - data type restrictions (e.g. one might not want to cache string values for 
latitude and longitude)
 - data type conversions (e.g convert the string 2,576 to a double)
This functionality should be implemented based on the mapping functionality 
already provided by the "eu.iksproject.rick.servicesapi.mapping" package.

Cache need to keep there own configuration. To allow easy copy&paste operation 
with pre-computed caches such configurations MUST BE stored within the Cache.

A change to the configuration of the cache normally needs to recompute every 
item in the cache. This might not be feasible especially for FULL caches. 
However it might still be useable to allow users to define additional fields 
that can be cached for entities downloaded form the site.
To allow that Caches need two configurations:
 - base: Information present for each entity stored by the cache
 - additional: Information that are cached if entities are updated in the cache.

Caches need to analyse queries if they can be executed and/or answered by using 
the cache. For this the base configuration MUST BE used.
 - queries can be executed if all fields with constraints are present in the 
cache
 - queries can be answered if all selected fields are stored in the cache

Comment 1 by project member rupert.westenthaler, Nov 20, 2010

Revision 1074 added 
 - support for Caches
 - base/additional Mappings
 - language filters
 - data type filters
 - data type conversions

Not Implemented:
 - analyzing queries if the can be executed based on the cache if cache 
strategy is FULL
 - currently all queries are executed on the cache if cache strategy is FULL




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to