Technology

Architectural Overview

Techonology overview | Ideal Analytics

The high level architecture of the system is shown above. Some major highlights about the architecture are given below:

Service Layer

This layer is for managing data communication between the UI and the middleware where the actual business logic resides. The three sets of services are for:

  • Managing dataset configuration and metadata (configuration services)
  • Initial loading of data from transactional data-source to the warehouse data-source (data-loader services)
  • Exploring a dataset and creating dynamic views, tables and charts, etc (explorer services)

Middleware Layer

The middleware hosts all types of business logics. The main modules are:

  • Configurator for managing the metadata of the data-sets
  • ETL for actual loading of the data
  • Analyzer for generating runtime queries and fetch data from the column storage

Storage Layer

There are two data stores, used in the system:

  • Data model store is a RDBMS, for storing the configuration and metadata
  • Warehouse store is a Column Store, for storing the actual data for analytics and reporting

Apart from these there are:

  • Data source layer for connecting to external transactional data sources
  • EAI layer for hosting the plugins specific for external application integration
  • Authentication and authorization layer for managing the authentication, SAAS logins, and access control


Deployment Overview

Ideal Analytics servers are linearly scalable. Ideal Analytics instances are mostly stateless, hence easily replicable. The only state-full nature of the server is the authentication state, and that is maintained in a distributed cache to support the replication. With this architecture, an installation of IdealAnalytics can be easily scaled up by creating multiple instances and distributing these in same and separate server machines. Typical deployment architecture could be like the following: