Is your feature request related to a problem? Please describe.
A timeseries feature with N points currently returns N (x dates x levels x numbers) separate
PointSeries coverages, each repeating mars:metadata and the domain scaffolding. For thousands
of stations over years this is both large and slow to post-process.
The spec defines MultiPointSeries for exactly this case.
Desired output (combined with point 2):
{
"type": "CoverageCollection",
"domainType": "MultiPointSeries",
"coverages": [{
"type": "Coverage",
"domain": {
"type": "Domain",
"axes": {
"t": {"values": ["1992-01-01T06:00:00Z", "1992-01-02T06:00:00Z", "1992-01-03T06:00:00Z"]},
"composite": {
"dataType": "tuple",
"coordinates": ["x", "y"],
"values": [[-20.0, 35.0], [-22.0, 38.0]]
}
}
},
"ranges": {
"dis06": {
"type": "NdArray", "dataType": "float",
"axisNames": ["t", "composite"], "shape": [3, 2], "values": [...]
}
}
}]
}
Note that composite tuples are [x, y] = [lon, lat] per spec. We would need to implement this on the encoder and decoder-side. Going from a MultiPointSeries to an xarray dataset in the decoder would enable us to easily return all requested data in a single dataset, rather than a list of multiple small datasets.
Is your feature request related to a problem? Please describe.
A
timeseriesfeature with N points currently returns N (x dates x levels x numbers) separatePointSeries coverages, each repeating
mars:metadataand the domain scaffolding. For thousandsof stations over years this is both large and slow to post-process.
The spec defines
MultiPointSeriesfor exactly this case.Desired output (combined with point 2):
{ "type": "CoverageCollection", "domainType": "MultiPointSeries", "coverages": [{ "type": "Coverage", "domain": { "type": "Domain", "axes": { "t": {"values": ["1992-01-01T06:00:00Z", "1992-01-02T06:00:00Z", "1992-01-03T06:00:00Z"]}, "composite": { "dataType": "tuple", "coordinates": ["x", "y"], "values": [[-20.0, 35.0], [-22.0, 38.0]] } } }, "ranges": { "dis06": { "type": "NdArray", "dataType": "float", "axisNames": ["t", "composite"], "shape": [3, 2], "values": [...] } } }] }Note that
compositetuples are[x, y]=[lon, lat]per spec. We would need to implement this on the encoder and decoder-side. Going from aMultiPointSeriesto an xarray dataset in the decoder would enable us to easily return all requested data in a single dataset, rather than a list of multiple small datasets.