DataMover Historian

DataMover sends data from its platform to a remote platform in cases where there is not sufficient resources to store locally. It shares this functionality with the Forward Historian, However DataMover does not have a goal of data appearing “live” on the remote platform. This allows DataMover to be more efficient by both batching data and by sending an RPC call to a remote historian instead of publishing data on the remote message bus. This allows allows DataMover to be more robust by ensuring that the receiving historian is running. If the target is unreachable, DataMover will cache data until it is available.


The default configuration file is services/core/DataMover/config . Change destination-vip to point towards the foreign Volttron instance.

    "destination-vip": "ipc://@/home/volttron/.volttron/run/vip.socket",
    "destination-serverkey": null,
    "required_target_agents": [],
    "custom_topic_list": [],
    "services_topic_list": [
        "devices", "analysis", "record", "datalogger", "actuators"
    "topic_replace_list": [
        #{"from": "FromString", "to": "ToString"}

The services_topic_list allows you to specify which of the main data topics to forward. If there is no entry, the historian defaults to sending all.

topic_replace_list allows you to replace portions of topics if needed. This could be used to correct or standardize topics or to replace building/device names with an anonymized version. The receiving platform will only see the replaced values.

Adding the configuration option below will limit the backup cache to n gigabytes. This will keep your hard drive from filling up if the agent is disconnected from its target for a long time.

"backup_storage_limit_gb": n

See Also