Technical Overview > System Architecture
  
System Architecture
Real-time, in-memory database
A key differentiation point of the FactoryStudio platform is its ability to be applied in both hard Process Control with real-time, in-memory information and also on Level 2 and Level 3 applications, where the information is stored on SQL databases and exchanged with external applications.
The real-time core of FactoryStudio is an in-memory, event-driven database. That database is the result of more than 25 years of continuous learning and it is a complete new design, leveraging the current technologies and the past experiences.
The design specification included as a priority
Reliability and operational stability.
Distributed architecture, both internally (mult-core CPUs) as external (multiple users and projects)
Use operating platforms for software and hardware of broad support and longevity
Increase modularity for lower costs of deployment and maintenance.
Combine flexibility and easy User Interface, allowing efficient use and open integration with future systems and requirements.
 
Real-time Information Management, IT and SCADA combined
The function of real-time database, shown in gray in the diagram, is to allow the modularity of the system, creating an abstraction layer that allows you to isolate tasks to communicate with relational databases, communication with other systems and with the field, the user interfaces and systems of calculation and optimization. Its structure enables synchronization between the various processes independent of values in real-time, event notification and update tables of information.
This Manager uses components designed specifically for the .NET platform with the infrastructure for tracking events. Making a comparison with a real-time supervisory, or a level 1, we have the following key differences:
 
Table 1: Real-time database new generation
HMI/SCADA databases
FactoryStudio real-time database
Basic Tags Types, such as boolean, int, float (real) and texts
In addition to these, also manages events, dates, tables, queries, and structured data.
Server-centric and centralized module processing
Distributed processing, multi-core and multi-processes, client and advanced control stations.
Proprietary access Interfaces
Access via Interfaces classes.NET or web services
Definition of variables on databases on proprietary systems
Definition of variables in standard databases with support for SQL and ADO.NET
Does not allow hot swap (swapping the project configuration without stopping the application)
Allows hot updates with built-in version management.
Persistence and redundancy
The Real-time database access to the original values and events in RAM, for the continuity of operations in the event of critical system failure, can be used both for a disk cache (Persistence or Retentiveness) or a TCP/IP synchronization with another station in a Hot-Standby architecture. Both solutions are built-in to the system and the best topology depends on the specific project requirements.
Engineering and Runtime
When creating an application, the FactoryStudio platform uses the concept of Engineering and Runtime
Engineering: Refers to the application configuration, or the creation of a FactoryStudio project. The Engineering tools are a set of configuration utilities, such as Table Editors, Drawing tools, which allow you to implement the application specifications at a higher level, using friendly configuration user interfaces, rather than low-level programming. When custom logic is necessary, guided user interfaces allow you to create C# and VB.Net code, in an easier are self-organized way, again providing a high-level access to the project components.
Runtime: Refers to execute the Project configuration, which means run the developed Application. The runtime system will execute the data acquisition, calculation, logging and alarms and provide real-time graphics displays, according the project engineering configuration.