Recordings

AAI Historical Tracking Recorded Session 2018-03-28

Attendees

Date

Duration 60 minutes

Discussion items 

TimeItemWhoNotes

Review Proposed Epic

Epic:
 
A subsystem is needed to track the history of the A&AI real-time database at an attribute/entity level for every resource (nodes & edges). The following is what would need to be tracked for the attribute value and entity assertions

  • source of change (provenance)
  • timestamp of when the change (add/update/delete) was made in the database
  • timestamp of when the change (add/update/delete) was made in the network as per provided by the client (preferred that client sends this but not mandatory)


The client will need a streamlined way to access this history via URIs and a GUI. For Casablanca only singular entity history queries will be supported showing the state of the entity at a given time. The design needs to be extensible enough to easily support history queries over a range of time, retrieving complicated topology history, traversal mS endpoints (custom query/dsl), and aggregations post Casablanca. 
Any data populated in A&AI before this feature was implemented, would not have historical information.
If the results have a subset of attributes that did not exist in the range of the data requested, A&AI will display the partial history available
Data retention limits will be enforced on the historical database to truncate history, this data retention timeframe will be configurable 

AAI-953 - Getting issue details... STATUS
 


Review Proposed User Stories

Stories:

  • Create the A&AI history subsystem framework (scaffolding)
  • Develop functionality for the history subsystem to handle storing the historical data within the database layer, recording the database entry time as a meta property on a value/entity/relationship update along with the source of the update
  • Develop functionality for the history subsystem to handle storing the network sequence time as a meta property on a value/entity/relationship update (if the network sequence timestamp was passed in), also store the source of the update
  • Develop functionality for the history subsystem to retrieve the state of an entity/relationship at a given database timestamp
  • Develop functionality for the history subsystem to retrieve the state of an entity/relationship at a given network sequence timestamp (will only pull entity/relationships that have a network sequence timestamp)
  • Develop functionality for the history subsystem to truncate history data after a configurable range of time
  • Update the existing A&AI GUI to include functionality to query historical data for an entity/relationship at a particular point in time
  • Ensure the history subsystem is properly updating the logs per ONAP guidelines

Action items

  • James Forsyth will create the epic and skeleton stories for this initiative, Due