Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Warning
titleWIP


Introduction

  • CPS Temporal is a dedicated service, distinct and decoupled from CPS Core (separated option #4 from CPS-78: Deployment View).
  • Integration between Core and Temporal is message based, asynchronous.
  • For each data modification request,
    • CPS Core is publishing, to a dedicated topic, a message representing the current data configuration or state.
    • CPS Temporal is listening to the same topic and is responsible to keep track of all data over time.
    • In the future, some other services can be created to listen to the same topic in order to implement additional storage forms.
  • The messaging system for this integration is either DMAAP or Kafka (to be deployed independently of CPS). The choice between one of the two is made by configuration when deploying CPS services.
  • Messages published by CPS Core contains following information:
    • Timestamp
    • Dataspace
    • Schema set
    • Anchor
    • Data (complete json data payload)
  • A contract is defined to make the expected information explicit for the publisher and all subscribers. This contract can be provided by a structured message schema format using Protobuf, Avro or JSON.

Architecture Diagrams

Following diagrams are C4 model diagrams (context, container and component) for CPS Temporal

Drawio
bordertrue
diagramDisplayName
lboxtrue
revision1
diagramNameCPS Temporal C4 model diagrams
aspectwpFEzAxE5ar0z73Df44Z
simpleViewerfalse
width1000
aspectHash639798cab29616876d203b76e909731235abafed
linksauto
tbstyletop
diagramWidth161