This article provides an overview of Gainsight Matrix Data Architecture (MDA) which is Gainsight’s proprietary back end infrastructure that serves as the foundation for any instance of Gainsight.
The MDA is Gainsight’s proprietary back end infrastructure that serves as the foundation for any instance of Gainsight. The MDA is the invisible layer that Gainsight operates to provide data storage which enables features to work such as Rules Engine, Adoption Explorer, and Renewal Center.
Gainsight’s MDA is designed to replicate multi-tenancy within the product. Data in MDA is organized and maintained in the following types of objects:
- System Objects
- Standard Objects
- Custom Objects
Customer data is collected and stored in various data stores in any organization. The customer data can reside in CRM / ERP systems, or in internal IT systems. In some scenarios, there can be third party aggregators/tools that collect information, based on customer usage of the product.
The Gainsight Data Platform offers a mechanism where the matrix data model manages all of this data, and transforms this data to derive business metrics using the tools offered by Gainsight such as Rules Engine, Aggregations, and CTAs.
Connectors are integrations that are offered out of the box to connect the varied data sources, and sync up information into Gainsight.
Data Management information is categorized into:
- Managing data in Gainsight
- Gainsight Standard Objects
- Data Space
The MDA is a distributed system that comprises of four data store types:
- AWS Redshift: This is Gainsight’s primary bulk data store database, and holds the actual data values that are stored in the MDA.
- MongoDB: This is a NOSQL type database that stores the schema / metadata for the tables that are in Redshift.
- Postgres: This database stores and processes transactional type data, and is used in specific parts of the Gainsight product, such as Scorecards 2.0 and Report Builder.
- Redis: This database stores session data.
Components of MDA
Gainsight MDA uses the Polyglot persistence technology; a concept of having multiple types of databases to handle varying data storage requirements. The different types of databases in MDA include Elastic File system, in-memory database, Columnar database, and Graph database. All the databases are abstracted from the usage of the user, and are used based on scenario and purpose. The MDA architecture is hosted on the cloud infrastructure.
The following image depicts the Gainsight MDA storage architecture.
For more information on managing data in Gainsight, refer to the following articles: