Results from discussion in Bergen, 08.09.2010
Diana starts now reading gridded data via Fimex. Fimex provides access to a information unit, i.e. a model run, a netcdf-file. Fimex does not provide the functionality to efficiently extract the information unit from an archive, e.g. a directory with model-files (/opdata ?, /starc/DNMI_HIRLAM4) or a database (WDB).
General indexer should be an indexer API with user-configurable changeable index-types. It should enable us to extract a set of information from a certain data-source in a fast way. Grindex should be API driven and easily to integrate with diana and Fimex.
DNMI_HIRLAM4/2010/09/15/grdqh00.dat_20100915 | HIRLAM4 = model, 2010/09/15/00 = reference time |
arctic_mfc-b2010091500-f2010091506.nc | arctic_mfc = model, 2010091500 = reference time |
/opdata/hirlam4/grdqh00.dat | hirlam4 = model, reference time from data content |
str searchCriteria = "MODEL,REFERANCETIME,FILENAMEMATCH:"*=MODEL/YY/MM/DD/grdqhHH.dat_*"'; gr = new Grindex(uri, string searchCriteria, dataformat, config) str searchDSL = "model=*;refernceTime < 2007-08-09' GrindexFind found = gr->find(str searchDSL) size_t count = found->count() vector<boost::shared_ptr<CDMReader> > = found->cdmReaders();
(Maybe this should be a part of fimex, but very related to Grindex?)