Because downloading the entire MaStR database from scratch ever time an update is needed takes too long, a continuous updater is required that more or less mirrors the MaStR database.
This will be implemented using a (dockered) PostgreSQL database access through SQLAlchemy. It is checked for new units or units with updated data which is then pull into the database. In a addition, extended data about the unit is requested for download. The list of extended data requests gets iterated in a subsequent process and data is retrieved.
Tasks
Because downloading the entire MaStR database from scratch ever time an update is needed takes too long, a continuous updater is required that more or less mirrors the MaStR database.
This will be implemented using a (dockered) PostgreSQL database access through SQLAlchemy. It is checked for new units or units with updated data which is then pull into the database. In a addition, extended data about the unit is requested for download. The list of extended data requests gets iterated in a subsequent process and data is retrieved.
Tasks
consumer_postponed to Allow for downloading additional data for consumer and gas sector units #163gas_consumer_postponed to Allow for downloading additional data for consumer and gas sector units #163gas_producer_postponed to Allow for downloading additional data for consumer and gas sector units #163gas_storage_postponed to Allow for downloading additional data for consumer and gas sector units #163backfill_basic()such that only data with newer timestamp gets inserted, see hereRe-include adopted time blacklisted that can control number of prcesses used to download additional unit datamaybe later Consider to re-include blacklisted time #148Properly delete successful additional data download requestsnot soo urgent anymore, postponed Make sure SQLAlchemy properly deletes successful when additional data is downloaded #154Allow multiprocessing withpostponed Parallel download in basic_unit_data() #161basic_unit_data()Download only EEG, KWK and permit data for units with "StatistikFlag=='B'". This information is included in extended unit data, see todo note heredownload.pythat are used during mirroring public*_raw.csvcompatible formatHandle NewConnectionError typepostponed NewConnectionError: Temporary failure in name resolution #155