Tools¶
The infDB ecosystem includes a variety of tools designed to handle different aspects of data workflows. These so called tools are software that interact with infDB and process data through standardized, open interfaces. This modular approach allows you to tackle problems of any complexity by combining different tools into custom toolchains.
Different tools can be linked together to form profiles, which are predefined sequences of tools that work together to achieve a specific goal. For example, a profile might include a data transformation tool followed by a validation tool and then an enrichment tool. By running a profile, you can execute all the included tools in the correct order with minimal effort.
Run Profile or Tool¶
If you want to run a profile (multiple linked tools) or a single tool, you can use the bash script tools/tools.sh:
# Profile
# bash tools/tools.sh -p PROFILE AGS
bash tools/tools.sh -p linear 09185149
# Single Tool
# bash tools/tools.sh -t TOOL AGS
bash tools/tools.sh -t ro-heat 09185149
Run Multiple AGS¶
If you wnat to run a profile or tool for multiple AGS, you can use the run_ags.py script directly:
# Profile
uv run python3 tools/run_ags.py -p linear [-a AGS1,AGS2,... -n NUM_WORKERS -c]
# Single Tool
uv run python3 tools/run_ags.py -t ro-heat [-a AGS1,AGS2,... -n NUM_WORKERS -c]
-a AGS1,AGS2,...: Comma-separated list of AGS
- -n NUM_WORKERS: Number of parallel workers to use (default: 5)
- -c: Clean database before running
AGS: - 09780139 Sonthofen - 09185149 Neuburg a. d. Donau - 05119000 Oberhausen (NRW)
Profiles available: - linear
Template¶
If you want to or create or integrate your own software or scripts into the infDB ecosystem, you can use the template for a devContainer provided by the infDB. A more detailed description can be found under Tools -> infdb-template.
Python Package¶
Moreover, there is a python package infdb that can be used to interact with the infDB database and services. It provides functionalities for database connections, logging, configuration management, and utility functions. You can find more information about the package in the API -> pyinfdb.
Currently Integrated Tools¶
The following tools are currently integrated with infDB:
- infDB-basedata: Containerized pipeline for data transformation, validation, and enrichment
- pylovo-generation: Python tool for generating synthetic low-voltage distribution grids
- EnTiSe: Python tool for energy time series generation and management