Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop a general scenario data format #1

Closed
Ludee opened this issue Apr 14, 2020 · 8 comments
Closed

Develop a general scenario data format #1

Ludee opened this issue Apr 14, 2020 · 8 comments
Assignees

Comments

@Ludee
Copy link
Member

Ludee commented Apr 14, 2020

There is a data format from the MODEX project FlexMex which is used in open_MODEX and SzenarienDB.

Discuss and develop a common datapackage format for scenario data.

Existing ideas:

@Ludee Ludee self-assigned this Apr 14, 2020
Ludee referenced this issue in OpenEnergyPlatform/academy Apr 14, 2020
@Ludee
Copy link
Member Author

Ludee commented Apr 14, 2020

First version contains:

scalar.csv
timeseries.csv
datapackage.json
erm.graphml

Ludee referenced this issue in OpenEnergyPlatform/academy Apr 14, 2020
@Ludee
Copy link
Member Author

Ludee commented Apr 14, 2020

A first test with the time series data shows that the data size blows up due to repeating values.
Implement an improved relational structure with general info and the time series.

@Ludee
Copy link
Member Author

Ludee commented Apr 28, 2020

@christian-rli
Copy link

(Edit update: singular of timeseries is timeseries)

Ludee referenced this issue in OpenEnergyPlatform/academy May 4, 2020
Ludee referenced this issue in OpenEnergyPlatform/academy May 4, 2020
Ludee referenced this issue in OpenEnergyPlatform/academy May 4, 2020
Ludee referenced this issue in OpenEnergyPlatform/academy May 4, 2020
Ludee referenced this issue in OpenEnergyPlatform/academy May 4, 2020
@Ludee
Copy link
Member Author

Ludee commented May 4, 2020

The updated ERM looks like this. Putting them together would be next logical step.
But then an entry can have a value and a timeseries? Would that be OK?

oep-scenario-data_datapackage_erm

@Bachibouzouk Bachibouzouk self-assigned this Jun 2, 2020
@jh-RLI
Copy link
Collaborator

jh-RLI commented Jun 3, 2020

IMO it looks good, but I think that we are not quite aiming for a correct relational data model with this. As far as I know, there are cases where a scalar has several scenarios/regions/years. This would violate the atomic values, or if several columns are added, redundancies would occur (normalized data).
We could think about introducing more relations. Each relation should hold all functional entities and so on. One large data model might be less complex, but why not follow general best practice?

scalar problem case 1:
non-atomic entities

id scenario region year ...
1 A,B,C or ALL DE,... or ALL 2030,2050 or ALL

case 2:
redundant PK lines

id scenario region year ...
1 A DE 2030
1 B FR 2050
1 C .. ..

As far as I understand we can solve this by adding a new relation and foreign key´s. An easy way to identify a practical data model is to model the relations (1:1 ; 1:n ; m:n) in the ERM as seen below but I'm not quite sure how to group the year and region since it's not clear to me if they belong to the scenario. Otherwise, we need even more relations for those two.

image

FYI: https://stackoverflow.com/a/7296873/10489845

What do you think about this? @Ludee

Otherwise, we could stick with the current approach and review this after receiving some practical feedback.

@Ludee
Copy link
Member Author

Ludee commented Jun 4, 2020

That's a good thought. Keep in mind this is not only for the database. The solution must be valid for the OEP and a datapackage (CSV).

@Ludee
Copy link
Member Author

Ludee commented Aug 6, 2020

We just decided to create a new OEP repo called oedatamodel (oedm) to develop and publish a data model template.

@Ludee Ludee transferred this issue from OpenEnergyPlatform/academy Aug 6, 2020
@jh-RLI jh-RLI linked a pull request Aug 12, 2020 that will close this issue
@jh-RLI jh-RLI closed this as completed Aug 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants