CoreShock - it's WhereShock Real-Time Core

CoreShock - Real Time Distributed DMBS for ACPS / DCS/ SCADA / HMI / IIoT

Core Foundation - Real Time Distributed DBMS
Key-Value
Key-value data storage engine optimized for fast update
Time Series
Persistent data storage engine optimized for time series data
Real Time
Data processing is carried out in real time or close to it
In-memory
Data processing is carried out exclusively in resident mode (in RAM)
Distributed
Data can be distributed between nodes in a network with different segmentation schemes
Cluster
Data processing is performed in cluster mode and can be parallelized.

Basic properties

CoreShock has the following important properties that distinguish it from other DBMS
Scaling
Scaling the volume of processed data can be carried out by increasing the nodes in the network and it's strongly linear
Segmtation
Data can be distributed on nodes in the network. The data segmentation scheme can be specified
Redundancy
Distributed Data may be redundant, that is, duplicated a specified number of times on given nodes
Replication
Network data replication keeps data consistent
Consistency
Online data consistency is provided in real time
Persistence
All data changes are recorded in a persistent storage

Clustering

CoreShock works in Real Time Cluster mode
Clustering
A set of network nodes form a computational, fault-tolerant cluster; currently, up to 256 nodes are supported
Data Sync and Processing
Data is synchronized and processed in the cluster network according to the rules of cluster computing with support for real-time mode
Parallel computing
The cluster supports parallel computing due to data redundancy and synchronization methodes
Client API
Cluster allows you to serve a large number of customers working in the subscription mode. In the event of a cluster node failure, the client instantly switches to another cluster node, without losing data or interrupting tasks. Currently, up to 2048 client nodes are supported, each of which, in turn, can have the power of an edge application server

Reliability

CoreShock has the following reliability properties
Strict synchronization protocol
Strictly defined data structures, synchronization rules. Transport based on UDP / IP stack with acknowledgment. Support for multicast and unicast messages. There is no significant increase in protocol load with an increase in the number of nodes in the network
Load balancing
Redistribution of load between network nodes in real time, depending on the load of nodes and the cumulative flow of processed data. Also, the load is distributed within the node between processors and hardware cores
Controlled degradation
The system will maintain its operability, and moreover, degradation will not be noticeable until the regression in the operation of the System leads to the failure of its significant components that affect the operability of the system as a whole
Failsafe
Fault tolerance is ensured by node redundancy, QoS, and controlled degradation. Failure of one or more nodes does not lead to a denial of service
Quality of Service (QoS)
The ability to determine static and dynamic data priority rules related to various entities of the target System
Service Agreement (SLA)
The ability to manage indicators such as the target probability of failure (10E-6,10E-7) and the indicator of service availability, up to 99.9999%

Cybersecurity

CoreShock has advanced cybersecurity capabilities
Isolation and Multitenancy
Data isolation is provided, both physically, on separate isolated network nodes, and programmatically, using the Access Control System, realizing multi-tenancy (multi-tenancy) with the help of additional software included in the WhereShock
Access Control System (ACS)
CoreShock does not support access control out of the box, this is done specifically for interfacing with external Security System. However, CoreShock provides efficient storage of attributes of any type of ACS, the rules for which are described by a fairly simple script, in any programming language / scripts supported by the target system.

Interoperability
CoreShock provides maximum compatibility with external systems. The Platform provides for a variety of pairing mechanisms using the Application Programming Interface (API) and special pairing modules (Connectors)
Cross-Platform and Diversity
CoreShock can work on a wide range of hardware under the control of the most common operating systems (OS). Therefore, in one target System, a sabotage variety of hardware and software components can be used, reducing the risk of exploiting vulnerabilities on all nodes of the target System.

Materials

Documentation & Presentations