The GoodData Platform provides an end-to-end analytics solution for capturing and loading enterprise data feeds and enables the ad-hoc querying of the data for user-defined reports of previously unavailable insights.
All operational components of this platform are stored and executed in the cloud, enabling significant architectural features, performance benefits, and overall reduced total cost of ownership.
GoodData Platform has been built from the ground up in the cloud. This enterprise-class analytics platform delivers end-to-end capabilities for capturing and storing data from disparate sources and empowering users to deliver meaningful analytics throughout the enterprise.
GoodData Platform Layers
The following diagram illustrates the layers of the GoodData Platform:
Queries submitted from the GoodData Portal are passed through the analytical engine, which breaks them down into smaller sets of queries for performance optimization and caching. These queries are submitted to the datamart for processing.
In GoodData, a datamart contains all of the loaded data and metadata (metrics, reports, and dashboards) for a single subject area. In GoodData, a datamart is called "a project."
The underlying data warehouse contains all of an organization's data and is used for feeding an organization's datamarts.
Extract, Transform & Load
ETL processes are used to acquire data from source systems, consolidate the data, and load it into data sets within the GoodData Platform. These processes can be either built in CloudConnect Designer or by using Ruby before deployment into the GoodData Platform for execution.
This multi-tenant platform features hundreds of asynchronous services that are integrated together to ensure efficient distribution, failover, and security.
- For an overview of the architecture, see Architecture Principles.
- For a visual diagram of the platform, see Platform Architecture.
- For more information on the core services, see Core Platform Services.
Depending on customer requirements, the GoodData Platform can integrate with a variety of databases for secure storage and access to data. See Data Storage.
- All customer data is stored in a data warehouse called a domain (formerly known as an 'organization'). Within a domain, there are individual projects and their data, users, ETL processes. See Structure of a GoodData Domain.
- For more information on terminology, see GoodData Glossary.
In the platform, data models are segmented into two components: the logical data model and the physical data model.
- A logical data model describes the attributes and facts contained in each dataset, as well as the relationships between these objects.
- When the logical data model is deployed to a project in the platform, it is used to create or updated the physical data model, which describes the tables in the data warehouse used to store loaded data.
- Logical data models are created in CloudConnect Designer. See Loading Data Using CloudConnect.
Data can be loaded into a project from virtually any well-organized data source via ETL processes. These processes can be created to Extract source data from a variety of formats, including flat file, database, and JSON via API, Transform it as needed to clean, combine, and streamline the inputs, and Load it into the designated project. For more information, see Data Loading.
You can monitor deployed ETL processes through the Data Integration Console. See Data Integration Console Reference.
You can ETL develop, validate, and test processes locally in CloudConnect Designer before deployment to one or more projects in the platform. See Loading Data Using CloudConnect.
All customer data is secured and localized to the domain belonging to the customer. A user cannot access any data stored in the platform that exists outside of the domain in which the user has been created.
Most users interact with the datastore through the GoodData Portal, a web application that enables users to view or modified projects that have been created for them. See GoodData Portal.
Access to Portal features is governed by the role assigned to each user.
Queries for data from the datastore are passed through the Extensible Analytics Engine for high-performance and scalable retrieval of project assets. These queries are created by Portal request or by user entry in MAQL, a proprietary querying language. See Analytical Querying Processing.
For cloud-based software, platform security is key to the value of the brand. Security of our customer's applications and reporting is a constant driver of change and innovation.