...
In case the requested filtered data would be to important to be prepared, a clent client error code 413 is returned with a request suggestion to apply more filtering to the request.
...
Expand | ||
---|---|---|
| ||
When a data request is initiated, the system first checks if the exact same request was already performed previously and if applicable lookup the data directly from an internal cache and return it as a response. As an example, if a dataset has 3 dimensions with respectively 5, 10 and 20 positions available for each dimension, the dataset cardinality is 5 x 10 x 20 = 1000 cells.
The decision whether to deliver the data synchronously or asynchronously is related to factors such as the complexity of the query and the volume of the data (number of cells) to be returned:
In order to know how many positions are available for the dimensions of a dataset, the API provides an SDMX endpoint which returns the SDMX data constraints artefact for the specified dataset. Taking Eurostat Comext dataset DS-045409 as example, its data constraints can be retrieved using: In this dataset, the dimensions have the following number of positions:
The dataset cardinality is then: 2 x 33 x 282 x 40321 x 2 x 468 x 3 = 2 107 276 101 216 cells. Examples queries 1 - Query in range for asynchronous extraction Following query would be considered within limits and processed by the system This query matches the following positions:
Estimated cost: 1 x 1 x 1 x 40321 x 1 x 36 x 1 = 1 451 556 which is above the synchronous limit but below the maximum extraction limit so this request is treated asynchronously. 2 -Query above range for asynchronous extraction Following query would be considered off limits and not processed by the system This query matches the following positions:
Estimated cost: 1 x 1 x 282 x 40321 x 1 x 36 x 1 = 409 338 792 which is above the maximum extraction limit of 5 000 000 cells and an error is returned. |
...