Foresight Analytics Platform can work in various configurations by using separate servers to focus on business logic core, security core or user interface. For simple systems designed for a small number of users, a configuration with DBMS server and Foresight Analytics Platform desktop application or BI server and web applications is sufficient. For more complex systems, in which fault tolerance is important, one can create a cluster of BI servers, use virtual environments or cloud solutions. If two or more BI servers are used, it is recommended to add a state server to configuration, which will restore object parameters in case of failure of the requested BI server. The platform can use Redis as a state server.
NOTE. A state server is not included in setup package of Foresight Analytics Platform.
The selected configuration must take into account how DBMS servers are organized, in which platform repositories will be created, as well as other data sources, to which Foresight Analytics Platform can connect to get data.
Below is the basic configuration with the use of a single BI server.
The configurations given below use the following legend:
Business logic core provides work logic of Foresight Analytics Platform, logic of interaction between objects, loads, processes, calculates and saves data. |
|
Security core executes administration functions and information security functions. |
|
User interface ensures interaction of the user with Foresight Analytics Platform. |
|
Web service is used to interact between the web application and system servers via http/https requests. |
|
Interaction between configuration elements on the level of Foresight Analytics Platform. |
|
Interaction between configuration elements on user level in manual mode. |
Standard configuration of Foresight Analytics Platform includes the use of the desktop and web applications:
On using the desktop application:
The user interacts with desktop application interface.
The desktop application sends requests to license server, as a result the desktop application determines access to the functionality.
The desktop application interacts with database via the DBMS driver using business logic core.
If the web application is used, business logic and security functions are performed by BI server, the user interface is presented by the web application:
The user interacts with web application interface.
The web application interacts with web server and BI server via the PP.SOM.Som access point. The scheme shows general interaction, a detailed description of web application interaction with other components is given in the Installing and Setting Up Web Application Back End section.
BI server sends requests to license server, as a result BI server determines access to the functionality.
The BI server interacts with database via the DBMS driver using business logic core.
When executing scheduled resource-intensive tasks:
The user sets up scheduled tasks in the desktop application, sends the settings to the application server and starts theTask Scheduler tool.
The application server sends requests to the license server, as a result application server determines access to the functionality.
The application server executes scheduled resource-intensive tasks and interacts with database via the DBMS driver using business logic core.
NOTE. The application server can be combined with the BI server.
The BI server and web application installation is described in the articles: Installing Web Application on Windows OS and Installing Web Application on Linux OS.
It is recommended to develop the system as the sequence of environments that meet customer's requirements.
The number of environments is determined by the system specificity. At least three environments must be created: development, test and production.
The development environment (DEV) is created along with the test environment to develop system functionality:
The test environment (TEST) is created along with the development environment to test developed system functionality and has the same configuration. The developed functionality is transferred to the test environment from the development environment.
The production environment (PROD) is created on the customer side:
The environment uses real customer data. The developer functionality is transferred to the production environment only after successful testing in the test environment.
See also: