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.
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 used in MDA are Elastic File system, in-memory database, Columnar database, Graph database, and so on. All the databases are abstracted from you and are used based on scenario and purpose. The entire MDA architecture is hosted on the cloud infrastructure.
The following image depicts the Gainsight MDA storage architecture.