Analytics as Code
Build and manage with UI or code for the ultimate in scalable, reusable, and automated analytics.
The principles of Analytics as Code
How to leverage software engineering best practices within your analytics.
Collaborate with code
With Analytics as Code, collaboration is enhanced through a shared, modular, and parameterized codebase, allowing business users to understand metrics and analysts to trace data lineage. This approach encourages collective ownership and the democratization of data by enabling all team members to propose, review, and merge changes via pull requests —breaking down silos.
Code without conflicts
Effective version control enables developers and analysts to collaborate on the same codebase without conflicts, providing a clear history of changes for easy auditing and issue tracking. It supports code reviews, maintains a clean production environment, and allows rollback to previous versions if needed.
Automate for efficiency
By automating and integrating analytics with data pipelines, you save time, decrease errors, and increase data quality. This approach, borrowing best practices from software engineering, enhances the robustness, scalability, and maintainability of analytics.
Reuse to save time and effort
Analytics as Code promotes the creation of modular, reusable components that can be combined and reconfigured to address new business questions, ensuring consistency and accelerating data product builds. By leveraging existing code, analysts save time and effort, reducing errors and building a rich library of analytics assets that can be quickly redeployed to respond to changing business conditions.
Ensure compliance and clarity
Analytics as Code increases transparency and makes workflows understandable and accessible to developers and end users by representing all objects and configurations as versioned code. This ensures compliance with corporate or regulatory requirements while making it easy for anyone to understand business metrics, trace data lineage or catch errors before they go to production.
Code isn’t just for developers
Skills:
Analytics Engineer
Apply version control, CI/CD, and automated testing beyond your data pipeline to BI and end users.
Skills:
Data Analyst
Build and scale analytics solutions from modular components to save time and create trust.
Skills:
Product Owner
Treat analytics like the rest of your product with rapid, code-efficient enhancements.
Benefits of Analytics as Code
Understanding Analytics as Code
Learn more about what it is and why it matters, with renowned author Donald Farmer.
Analytics as Code in action
Where to leverage software engineering best practices in your analytics.
BI and analytics
Analytics as Code is a powerful approach for building BI and analytics content, enabling seamless transitions between UI-and code-based development, which enhances flexibility and control over the entire analytics lifecycle.
- Build visualizations through the GoodData UI or through code.
- Centrally make edits and deploy updates across the entire analytics environment.
Custom data apps
Analytics as Code is ideal for building custom data applications because it leverages familiar development tools, embraces open-source standards, and streamlines complex tasks through code, offering greater efficiency and customization than traditional UI-based methods.
- End-to-end declarative and human-readable code.
- APIs and SDKs are first-class citizens.
Data pipelines
The process of building and maintaining data pipelines is streamlined with GoodData blueprints, which ensures consistency, efficiency, and ease of management throughout the data lifecycle.
- End-to-end platform can be viewed, edited, updated, and deployed via code.
- Collaborate, modify, audit, and deploy through CI/CD.
Environments administration
Administering an environment with Analytics as Code enhances control and scalability, allowing for automated deployments, efficient user management, and the flexible composition of content, all within a streamlined, code-driven framework that your DevOps team is already familiar with.
- More easily apply continuous improvement to analytical applications.
- Maintain consistency across existing environments and build new ones, while minimizing manual intervention.
Compliance and security
Analytics as Code strengthens compliance and security by providing robust data governance, traceability, rollback and version control capabilities, ensuring adherence to regulatory requirements and safeguarding sensitive information.
- Assets are stored centrally and fully auditable.
- Automation and use of code reduces human error.
Discover how adopting Analytics as Code will help boost your data product
Ready-to-use blueprints
Enables seamless collaboration by blending no-code/UI, low-code, and all-code options.
- Users can tap into extensive pre-existing code blueprint libraries on GoodData’s Github.
- Interoperable infrastructure integrates with multiple languages and tools.
Dive deeper into the details
Learn more
Learn more about the Analytics as Code vision
Common questions
Explain Analytics as Code in layman terms
Analytics as code involves using programming languages to define, manage, and execute analytics in a way that is more precise, repeatable, and flexible than UI-bound tooling.
What is the relationship between Analytics as Code and the Analytics Lake
Analytics as code and the Analytics lake are complementary in that AaC is a flexible approach to building and maintaining analytics, and the analytics lake serves as the repository for large volumes of data. The two complement each other because both facilitate sophisticated levels of scale, automated workflows, and flexible analytical data products.
Why is Analytics as Code important?
AaC is a contemporary approach that aligns with the ‘modern data stack’ and development practices to meet the demands of fast-paced and data-driven environments.