GoodData.CN: Modern headless BI is now available (for free)

ZD
GoodData Developers
3 min readApr 19, 2021

We’ve just launched GoodData.CN, the modern headless BI framework. In this article, I briefly describe the new product’s capabilities.

TLDR: Skip the BS. I want to try it myself.

docker pull gooddata/gooddata-cn-ce

Documentation and API reference is here. If you get in stuck, join our Slack community for help. Development is free of charge. Production deployment for an unlimited number of users is also free. You’ll pay for advanced features.

Cloud-Native

The GoodData.CN is deployed as a single Docker image via a pull from Docker Hub or as a set of Kubernetes images available via Helm chart. For initial evaluation, development, and testing, we recommend the Docker image. Later when you need to deploy to production, you install the k8s images via Helm chart and deploy your analytics content with a single POST API call.

API first

The complete GoodData.CN functionality (report computation, metadata, authentication, lifecycle, etc.) is available via well-designed REST APIs.

All metadata entities and configurations are declarative and are organized in a hierarchy with multiple API entry points. This design allows for simple one-call import and export of a whole analytical solution as well as granular management of individual objects (e.g. insights, dashboards, or measures).

The API is described via the OpenAPI schema that you can import to Postman and invoking it.

You can also generate different programming language bindings (e.g. Python, Java, .NET, etc.) using the OpenAPI generator. The lowest layer of the GoodData.UI Javascript SDK is also generated.

Realtime analytics

The GoodData.CN packages the GoodData analytics engine that is used by more than 2 million active users today. It includes workspaces for deploying analytics to multiple organizations and users, the logical data model, and MAQL analytical language for easy-to-use self-service analytics.

The analytics queries are executed in your database. The GoodData.CN currently supports PostgreSQL, Amazon Redshift, Snowflake, and Vertica. We are already working on additional databases including Google BigQuery, Azure Synapse, and others.

Unlike many BI tools, the realtime (direct) query supports the same analytical features as the queries on top of the imported data. Compare this with for example PowerBI DAX that is only available on top of the imported data.

Modern UI embedding

The GoodData.CN inherits the data visualization layer and associated UI tools from the GoodData hosted platform. The same data visualizations and visual editing components are available.

All UI components (dashboards, individual insights, and visual editors) support no-code embedding via IFRAMEs as well as advanced low-code embedding as React (or Vue, Angular, etc.) component. Both embedding modes provide integration capabilities (messages, events, etc.) that allow for interactions that span analytics and use-cases in your app.

The UI newly supports custom themes (e.g. dark mode) for visual alignment with your app. Take a look at code examples in this gallery.

Multitenancy & Continuous Delivery

The GoodData.CN provides advanced capabilities for rolling out analytics new solution versions to many (external) organizations and users.

First, the hierarchical declarative configuration allows for flexible versioning of a whole solution as well as individual objects.

The GoodData.CN allows for a declarative definition of a shared analytics content (e.g. dashboards, insights, and measures) that each tenant initially receives in the so-called master workspace. Individual tenant’s workspaces inherit the shared content from the master and the tenant’s users can override it with custom changes.

And more

Intelligent caching, OICD (OAuth) authentication, and many more nice features are available.

Free development and production deployment

The GoodData.CN is licensed for free for both development and production deployments. You pay only for advanced functionality like specific database connectors, query federation, advanced caching, etc.

Try it today by pulling the Docker image

docker pull gooddata/gooddata-cn-ce

Documentation and API reference is here. If you get in stuck, join our Slack community for help.

--

--