Psicle is a “Client-Server” application. The “Client” element refers to individual user machines, whereas the “Server” is a centralised environment that all Clients connect to.
“Client Side” (i.e. on individual users’ machines):
The Psicle Client is installed on individual machines. Most of the computation is performed on the Server, allowing the Psicle Client to be a relatively thin install which reduces the specification of local hardware requirements.
The role of the Client is to provide an easy to use graphical user interface to interact with the server. It provides the environment to view, edit and run models, to set the governance framework and view audit logs.
The Psicle Server Application and SQL database is installed on the Server. The Server is the engine room where all computation happens and where all data is stored. The Server can be hosted physically in-house or virtually in the Cloud (we use Microsoft Azure).
The Psicle Server:
- Intelligently manages requests from the Psicle Clients.
- Carries out all calculations.
- Manages the communication and data transfer to and from external systems and code bases (for example, when integrating Psicle with data systems, or calling external code in R or Python).
- Centrally manages the storage of data in the SQL database.
- Manages the governance framework, including access rights to different Psicle models.
The Client-Server model enables Psicle to be a truly enterprise-wide application:
- Specification: Psicle can be run using light Client specifications and heavier Server specifications, which reduces costs to run Psicle whilst improving the ability at storing and processes large volumes of data with faster model run times.
- Scalability: Server resources can be scaled when required (especially when hosted in the cloud) which allows more computational ability when required.
- All models and data are stored centrally and can be accessed by individual Clients collaboratively. This means “one version of the truth”.
- Several users can edit, view and run models simultaneously.
- Governance: Our governance framework is implemented on the Server, which ensures that users have the appropriate level of access to the model to ensure collaborative working is carried out in a controlled way.
- Maintenance: Centralised backups and key upgrades only need to be made in one place.
Please see our one page Infrastructure document in the attachment below for an overview of a typical Psicle implementation.