• Francisco Fraile
    Francisco Fraile
    2017-11-13

    Overview

    The Storage component provides services to store:
    + Relational data (SQL)
    + Document oriented (NoSQL)
    + Times series (NoSQL)

    The [IO Toolkit] provides resources for the development of Device Drivers and APIs (hereby referred to as IO Components.
    IO COmponents implement interoperability mechanisms to integrate on-premise manufacturing assets (software or hardware)
    As specified in the functional specificiations, there are no direct interactions between Storage and IO Components: the Middleware Components mediate between these components. However, it is important to clafify some important aspects in the design phase in order to make sure that the development is as efficient as possible.
    The objective of this discussion is to highlight and clarify these aspects between the different partners involved.
    At the time of writing this document, the main issue is related to the need of a local storage database for IO Components. This local storage database has been proposed as a secondary storage mechanism to improve reliability. In case that the connection between the IO Component and the platform is unavailable, the IO component could still integrate data from manufacturing assets into the short-term historic in the local storage database. Other data entities, eg configuration, can be stored primarily via the Storage Component, but also having a fallback to local storage, synching the data and implementing some kind of fallback mechanism between both. This case can be described as follows:

    • Post-installation actions. During the post-installation phase, the IO Component REST application gets an authentication token for the component and creates the configuration database in vf-OS storage via the Storage component APIs. All the parameters are obtained from the (PKI signed) configuration files in the component.

    Post-installation

    This post installation actions can also be implemented in the vf-OS Middleware: The IO Component publishes the configuration data using the Pub/Sub. The Storage subscribes to all configuration elements and stores the data. This approach is more consistent with the architecture.

    • A user logins using the IO Component Identity Service. The IO Component REST application gets the authentication token for the user with the credentials provided by the user. The User uses the Configuration UI to edit the configuration. The IO COmponent REST application uses the identity service to get the userInformation. It checks the user role permissions against its security configuration. The information is updated in both databases.
      workflow
     

    Related

    Wiki: IO Toolkit


    Last edit: Francisco Fraile 2017-11-21