The MDA (Matrix Data Architecture) is Gainsight’s proprietary back end infrastructure that serves as the foundation for any instance of Gainsight. From data storage to Gainsight’s Rules Engine, the MDA is the invisible layer that Gainsight operates on outside of Salesforce.
Gainsight designed the MDA in a very similar fashion to Salesforce, so that we can replicate multi tenancy within our product. Each salesforce environment in which you have Gainsight installed and active will have its own tenant associated with the MDA.
Data in MDA is organised and maintained in different types of objects:
- System Objects
- Standard Objects
- Custom Objects
Customer data is collected and stored in various data stores in any organization. It could be resident in CRM / ERP systems or it might reside in internal IT systems. In some scenarios, there could be third party aggregators/tools that collect the information, based on customer usage of the product. Connectors are offered out of the box to connect the varied data sources and sync up information into Gainsight’s MDA.
Data Management information is categorized into:
This article explains how this connection is established and maintained. You can also learn more about Data Management in Gainsight in our free self-paced elearning courses on Customer Success University.
The initial connection is established from the Integration page in the administration section of Gainsight. From here, Gainsight can authorize the connection between your Salesforce environment and MDA. This authorization must come from a user with a valid and active profile within your Salesforce instance.
This type of authorization is known as OAuth user authorization which means that the level of access you will have to your data in Salesforce from Gainsight will be directly determined by the level of access granted to that logged in user.
The MDA is actually a distributed system comprising of four different data store types:
- AWS Redshift: This is Gainsight’s primary bulk data store DB and holds all the actual data values that are stored in the MDA.
- Mongo DB: This is a NOSQL type database used to store all the schema / meta data for the tables that are in Redshift.
- Postgres: This database is used to store and process transactional type data and is used in specific parts of the Gainsight product, such as Scorecards 2.0 and Programs.
- Redis: This database is used to cache session data.