5.2.1.2. gemini_framework.abstract.database_reader_abstract

Abstract database reader organizing internal/external data flows.

Coordinates reading from an external source and writing into the framework’s internal time-series database (InfluxDB by default), including tag registration and time handling.

Classes

DatabaseReaderAbstract()

Abstract base class for database readers.

class gemini_framework.abstract.database_reader_abstract.DatabaseReaderAbstract[source]

Bases: ABC

Abstract base class for database readers.

Initialize database reader.

connect()[source]

Connect to databases.

delete(plant_name)[source]

Delete plant data from database.

disconnect()[source]

Disconnect from databases.

get_current_time_str()[source]

Get current time as string.

get_internal_database_last_time_str(plant_name, asset_name, tagname)[source]

Get last time from internal database.

import_raw_data()[source]

Import raw data from external to internal database.

read_external_database(external_tagname, starttime_str, endtime_str, timestep=None)[source]

Read data from external database.

read_internal_database(plant_name, asset_name, internal_tagname, starttime_str, endtime_str, timestep=None)[source]

Read data from internal database.

register_tags(units)[source]

Register tags for units.

static round_minutes(dt, direction, resolution)[source]

Round datetime to specified resolution.

abstract set_external_db_parameters()[source]

Set external database parameters.

set_internal_db_parameters()[source]

Set internal database parameters.

update_parameters(parameters)[source]

Update reader parameters.

write_internal_database(plant_name, asset_name, internal_tagname, time, result)[source]

Write data to internal database.