ESI-FAR / Mopo-arrow_sqlite

Getting to know pyarrow and SQlite
0 stars 0 forks source link

Benchmark tests for Spine Toolbox performance improvements #3

Open suvayu opened 9 months ago

suvayu commented 9 months ago

Spine DB stores parameter_values as JSON blobs in the database. This is fine as long as the blobs are small. When blobs are large objects like a time series, or a shape file. Loading the value can have significant delays, and this freezes the UI (or at least the user can't see something is happening in the background) while the blob is loaded and parsed.

There are several expensive step in this process:

Documentation

Different cases that should be benchmarked

Create example scripts that replicate and benchmark different options:

What to benchmark?

Possible data types

parameter_values can be of various types. (the first two are not relevant here, included for completeness)

Example datasets

Spine data structure

https://github.com/energy-modelling-workbench/spine-data-model#spine-data-model


For more notes on when/how these are used, see ESI-FAR/wiki#44 (the visualisation issue)