Difference between revisions of "Energy data"

From embargo
Jump to navigation Jump to search
Line 87: Line 87:
 
* https://files.embargo.energy/entsog-analysis/
 
* https://files.embargo.energy/entsog-analysis/
  
=== ENTSOG data as relational database ===
+
=== ENTSOG data as relational database ===
  
 
(Experimental, physical flow data from 01 Jan 2021 to 05 Aug 2022, where flow value is not null)
 
(Experimental, physical flow data from 01 Jan 2021 to 05 Aug 2022, where flow value is not null)
  
 
Postgres access: <code> psql -h embargo.energy -U embargo entsog </code>; password: 9mTc_9hPjk}&D27/F,VHC8qG
 
Postgres access: <code> psql -h embargo.energy -U embargo entsog </code>; password: 9mTc_9hPjk}&D27/F,VHC8qG
 +
 +
Some fields:
 +
 +
====== Table operator: ======
 +
 +
* adjacentcountry: non-TSO country (includes non-EU countries such as RU, MK, NO)
 +
* crossborderpointtype, examples: 'In-country EU', 'Cross-Border EU|EU', 'Cross-Border EU|Non-EU', 'Cross-Border Non-EU|Non-EU', 'In-country Non-EU'
 +
* directionkey, examples: 'exit', 'entry'
 +
* eurelationship, examples: 'within EU', 'between EU and Non-EU', 'Non-EU'
 +
* hasdata, examples: 'True', 'False'
 +
* id, examples: '5DE-TSO-0014VTP-00045exitDE-TSO-0010', '5DE-TSO-0002VTP-00012exitDE-TSO-0007'
 +
* isdoublereporting, examples: 'None', 'False', 'True'
 +
* ispipeinpipe, examples: 'False', 'True'
 +
* isvirtualizedcommercially, examples: 'False', 'True'
 +
* isvirtualizedoperationally, examples: 'False', 'True'
 +
* lastupdatedatetime, examples: '2022-07-05T19:07:06+02:00'
 +
* operatorkey, examples: 'UK-TSO-0001', 'NL-TSO-0001', 'DE-TSO-0005'
 +
* operatorlabel, examples: 'National Grid Gas', 'GTS', 'Gasunie Deutschland '
 +
* pointkey, examples: 'VTP-00045', 'VTP-00011', 'VTP-00012'
 +
* pointlabel, examples: 'THE VTP (DE)', 'VHP GASPOOL', 'VHP NetConnectGermany', 'Wallbach'
 +
* pointtype, examples: 'Trading Point', 'Cross-Border Transmission IP within EU', 'Storage point', 'Distribution Point', 'Cross-Border Transmission IP between EU and Non-EU (import)', 'Cross-Border Transmission IP between EU and Non-EU'
 +
* tsobalancingzone, examples: 'DE THE BZ', <nowiki>''</nowiki>, 'UK', 'Netherlands', 'TRF',
 +
* tsocountry: country of TSO (includes non-EU countries such as RU, MK, NO)
 +
* virtualreverseflow, examples: 'No', 'Yes'
 +
*
  
 
Some tentative examples:  
 
Some tentative examples:  

Revision as of 20:01, 15 August 2022

Here we list energy open data:

Germany

Trading Hub Europe

THE, Germany: Daily gas consumption

Bundesnetzagentur

BNetzA, Germany: Daily briefings about gas imports, storage, and consumption

Realized gas savings in 2022
Month 2021 2022 Diff. Diff.
TWh TWh TWh %
Jan 142.3 129 -13.3 -9.3 %
Feb 121.2 106 -15.2 -12.5 %
Mar 109.7 92.5 -17.2 -15.7 %
Apr 95.9 82.0 -13.9 -14.5 %
May 68.2 51.0 -17.2 -25.2 %
Jun 46.1 39.6 -6.5 -14.1 %
Jul 40.4 39.1 -1.3 -3.2 %
Aug 38.8
Sep 45.3
Oct 73.2
Nov 109.7
Dec 125.6
TOTAL 1016.4 -84.6

BDEW

BDEW: Monthly gas consumption in Germany 2022 vs. 2021

Eurostat

EU

Gas storage inventory

Data not in AGSI summary:

Bruegel

ENTSOG gas data

ENTSOG example query to get physical flows on 01 March 2022:

Some analyses (experimental, feedback welcome):

ENTSOG data as relational database

(Experimental, physical flow data from 01 Jan 2021 to 05 Aug 2022, where flow value is not null)

Postgres access: psql -h embargo.energy -U embargo entsog ; password: 9mTc_9hPjk}&D27/F,VHC8qG

Some fields:

Table operator:
  • adjacentcountry: non-TSO country (includes non-EU countries such as RU, MK, NO)
  • crossborderpointtype, examples: 'In-country EU', 'Cross-Border EU|EU', 'Cross-Border EU|Non-EU', 'Cross-Border Non-EU|Non-EU', 'In-country Non-EU'
  • directionkey, examples: 'exit', 'entry'
  • eurelationship, examples: 'within EU', 'between EU and Non-EU', 'Non-EU'
  • hasdata, examples: 'True', 'False'
  • id, examples: '5DE-TSO-0014VTP-00045exitDE-TSO-0010', '5DE-TSO-0002VTP-00012exitDE-TSO-0007'
  • isdoublereporting, examples: 'None', 'False', 'True'
  • ispipeinpipe, examples: 'False', 'True'
  • isvirtualizedcommercially, examples: 'False', 'True'
  • isvirtualizedoperationally, examples: 'False', 'True'
  • lastupdatedatetime, examples: '2022-07-05T19:07:06+02:00'
  • operatorkey, examples: 'UK-TSO-0001', 'NL-TSO-0001', 'DE-TSO-0005'
  • operatorlabel, examples: 'National Grid Gas', 'GTS', 'Gasunie Deutschland '
  • pointkey, examples: 'VTP-00045', 'VTP-00011', 'VTP-00012'
  • pointlabel, examples: 'THE VTP (DE)', 'VHP GASPOOL', 'VHP NetConnectGermany', 'Wallbach'
  • pointtype, examples: 'Trading Point', 'Cross-Border Transmission IP within EU', 'Storage point', 'Distribution Point', 'Cross-Border Transmission IP between EU and Non-EU (import)', 'Cross-Border Transmission IP between EU and Non-EU'
  • tsobalancingzone, examples: 'DE THE BZ', '', 'UK', 'Netherlands', 'TRF',
  • tsocountry: country of TSO (includes non-EU countries such as RU, MK, NO)
  • virtualreverseflow, examples: 'No', 'Yes'

Some tentative examples:

Give out consumption (apparently underestimation)

select left(operatorkey,2), date_trunc('month', periodto), round(sum(value)) from flows where pointkey in (select pointKey from operator where pointtype = 'Aggregated Point - Final Consumers') and flowstatus = 'Confirmed' group by left(operatorkey,2), date_trunc('month', periodto) order by left(operatorkey,2), date_trunc('month', periodto);

Sort by distribution points select pointlabel, operatorlabel, sum(value) from flows where pointkey in (select pointKey from operator where pointtype = 'Aggregated Point - Final Consumers') and periodto > '2022-07-01' and periodto <= '2022-08-01' and left(operatorkey,2) = 'DE' group by operatorlabel, pointlabel order by operatorlabel ;

German cross-border transmissions select left(operatorkey,2), date_trunc('month', periodto), round(sum(value)) from flows where pointkey in (select pointKey from operator where pointtype like 'Cross-Border Transmission IP%' and tsoCountry = 'DE' and isPipeInPipe = 'False') group by left(operatorkey,2), date_trunc('month', periodto) order by left(operatorkey,2), date_trunc('month', periodto);

Python scripts: git clone https://git.embargo.energy/entsog.git

EU: Energy prices