Common mechanism for data queries
All Foresight Analytics Platform tools use a uniform kernel engine for designing and running data queries.
Foresight Analytics Platform supports data extraction from relational DBMS using SQL, MDX-based extracting data from multidimensional DBMS, and in-memory data processing and caching. Data extraction from database management systems using SQL is based on the separate retrieval of dimensions and data from databases. It enables the user to create an SQL query without using links between the tables and speeds up data extraction.
MDX-based data extraction mechanism from multidimensional database management systems uses standard MDX functions. In its turn, the result of running MDX queries can be cached both on the dictionary level and on the data level.
In-memory data processing is based on loading data sets into virtual memory from file cache. New data is loaded to file cache at the first call by extracting from DBMS server. Later this data is addressed via an internal mechanism (without using SQL or MDX) optimized for extra fast query execution against the data. The in-memory mechanism can be enabled for any multidimensional data source created in platform repository.
Foresight Analytics Platform uses a uniform mechanism for distributing objects (queries, reports, and so on) via multiple channels (email, FTP, portal, or mobile application).
The problem management mechanism is used for this purpose. Any required operations may be determined within the mechanism: loading data via ETL, calculating aggregates and calculated factors, caching cubes, calculating modeling and forecasting tasks, calculating reports and exporting them to external formats, publishing reports to mobile devices, and executing other tasks, including executing custom modules, and so on. The tasks can be run according to a schedule, they can be called from other units, or called via web services.
The user can also export reports to an external format, send reports by email, or publish reports to a certain directory in a portal or FTP server.
Foresight Analytics Platform uses a single repository of metadata. Several users can simultaneously work in the repository. A single user can also simultaneously work in several repositories.
All the objects can be accessed in a consistent way. After an object is created it appears as a repository item and can be further used to take part in any operation (provided that this object can be used in this type of operation) in a standard dialog box. Metadata on all the created objects and the relationships between these objects is stored in this repository.
In the repository all objects are equal, regardless of data source used (relational, multi-dimensional or file).
The common repository enables the user to perform the following operations:
Creating, copying, and deleting objects.
Granting permissions to objects.
Logging executed operations.
Transferring objects between different repositories.
Creating links from one repository to the objects of another one and working with these objects from first repository.
Reusing all main objects: connections, tables, dimensions, cubes, reports, and so on. For example, dimensions created by a single user can be used by other users for creating new cubes.
Describing metadata of user objects, that is, enlarging standard object model of the platform repository depending on project needs.
Access control, managing users and user groups and access permissions
Foresight Analytics Platform uses a uniform program kernel including a uniform settings mechanism and monitoring of access for all objects created in a uniform metadata repository. All platform tools are based on this kernel and that is why all platform tools use the uniform security, metadata and administration.
Foresight Analytics Platform uses a uniform mechanism to manage users, groups of users and access permissions. Management is executed using the Security Manager tool. Foresight Analytics Platform enables the user to create custom users and groups, or it can also use existing users or groups integrating with LDAP directories, including Active Directory, OpenLDAP, Samba 4.0 or later, Apache Directory Server, 389 Directory Server.
Foresight Analytics Platform capabilities to manage users and groups of users, access permissions:
Differentiation of access to all platform objects. The platform recognizes common operations for all object types and specialized operations for specific object types.
Logging access for all types of objects and object operations. Flexible settings of tracked objects and operations.
Access differentiation on the level of metadata objects and on the more detailed level. For example, differentiating access to specific elements of dictionary or to specific cells of cube.
Limiting the time a user can be logged in for certain week days, permitting a user to log in only using a specific workstation (based on workstation name, IP address or MAC address), setting up password complexity (password length, required sets of characters, prohibition to use some words).
Using of common database with delimitation of access permissions or usage of dedicated database for each client in cloud BI applications based on web services.
All Foresight Analytics Platform tools are strongly integrated via the common repository of metadata and the platform program kernel. The created contents can be used in various tools. For example, an express report can be used in a dashboard and further set up in a mobile application. All data sources are unified and can be accessed from various Foresight Analytics Platform tools.
All Foresight Analytics Platform tools are available via desktop, web and mobile applications.
The web application is aimed at supporting of modern web standards, interacting with the platform via web service and it is a Rich Web Application. In order to create rich and dynamic user interface the web application uses up-to-date technologies: HTML5, CSS3, COMET, ECMAScript5, WebGL, DHTML, JavaScript and SVG. The following technologies of web application development are supported: ASP.NET and Java.
Three latest browser versions are supported to work with the web application:
Mozilla Firefox.
Google Chrome.
Opera.
Apple Safari for MacOS.
Microsoft Internet Explorer.
Microsoft Edge.
Sputnik.
Mobile application is available for iPad 2 or later. The following Foresight Analytics Platform tools are supported: Dashboards, Analytical Queries (OLAP), Reports.
Foresight Analytics Platform uses a uniform mechanism to manage and set up access permissions to all objects created in the repository.
Each object can be assigned to users and user groups permissions to read, edit (including permissions changes) and delete. By default, the permissions are inherited from parent objects. It is possible to redetermine permissions for children with the permissions inherited from the current object, and to view effective user permissions for the current object. Object access control is checked by the platform kernel when the object is accessed from any of the tools. For each object, it is possible to enable auditing of specific operations or all operations with the object.
All Foresight Analytics Platform components can be installed within a single server install: BI server and web server, web services, web application and desktop application.
A scaling tool in Foresight Analytics Platform is implemented by means of caching of dimensions, cubes and time series databases, clustering by means of setting up several application servers to the cluster using load balancer. There is no integrated workload balancing, high availability to the platform, but integration with external solutions is available by customization.
In Foresight Analytics Platform BI search mechanism is implemented by means of the Apache Solr search engine and supports token usage, stemming, lemmatization, speech tagging, decomposition on creating indices and handling search queries.
Foresight Analytics Platform search is available via Foresight Analytics Platform REST and SOAP web services, and it can be connected to other search engines via implementing the appropriate adapter.
See also: