The Five Use Cases in Data Observability: (#4) Fast, Safe Development and Deployment

The fourth data observability use case: fast, safe development and deployment using regression tests and impact reviews to catch errors before production.

Written by Chris Bergh on May 10, 2024

DataOpsData ObservabilityDataOps ObservabilityDataOps TestGenOpen Source
The Five Use Cases in Data Observability: (#4) Fast, Safe Development and Deployment

Key points

  • Development and deployment is the fourth of the five data observability use cases DataKitchen describes, alongside data evaluation, data ingestion, data production, and data migration.
  • The change that breaks production is usually a new SQL script, Python module, Yaml configuration, or dataset dropped into a working system, which is why the errors have to be caught inside the development cycle rather than after the deploy.
  • Development observability answers deployment questions as well as test questions — did all my tests pass, will this create a failed deploy, what code is in what environment, how often do we change the production schema, and did the last deployment actually work.
  • Pre-deployment testing means running functional, unit, and regression tests in the development environment against test data, so a change is validated before it reaches production.
  • Test automation wired into a CI/CD tool such as Jenkins, plus feedback on each deployment and an end-to-end Data Journey view of the data estate, is what lowers the risk of a problematic change reaching production.

The integrity and functionality of new code, tools, and configurations during the development and deployment stages are crucial. This blog post delves into the third critical use case for Data Observation and Data Quality Validation: development and Deployment. It highlights how DataKitchen’s Data Observation solutions equip organizations to enhance their development practices, reduce deployment risks, and increase overall productivity.

NOTE

The Five Use Cases in Data Observability

Data Evaluation: This involves evaluating and cleansing new datasets before being added to production. This process is critical as it ensures data quality from the onset.

Data Ingestion: Continuous monitoring of data ingestion ensures that updates to existing data sources are consistent and accurate. Examples include regular loading of CRM data and anomaly detection.

Production: During the production cycle, oversee multi-tool and multi-data set processes, such as dashboard production and warehouse building, ensuring that all components function correctly and the correct data is delivered to your customers.

Development: Observability in development includes conducting regression tests and impact assessments when new code, tools, or configurations are introduced, helping maintain system integrity as new code of data sets are introduced into production.

Data Migration: This use case focuses on verifying data accuracy during migration projects, such as cloud transitions, to ensure that migrated data matches the legacy data regarding output and functionality.

The Development and Deployment Challenge

The development phase often involves integrating new SQL scripts, Python modules, Yaml configurations, or datasets into existing systems. Each addition or modification poses potential risks that could propagate errors into production environments. The primary challenge is identifying and resolving these issues early in the development cycle to prevent failed deployments and operational disruptions.

A robust data observability strategy addresses several critical questions to ensure the stability and reliability of development activities:

DataKitchen Provides a Solution

DataKitchen’s Open Source Data Observability is a powerful toolset to tackle these challenges:

  1. Pre-Deployment Testing : The platform enables the execution of functional, unit, and regression tests within the development environment. This approach allows teams to validate changes against test data before they reach production.
  2. Continuous Integration and Deployment (CI/CD) Suppor t: By automating tests and working integrally with your CI/CD tool like Jenkins, DataKitchen helps maintain code quality and consistency across different environments, reducing the likelihood of deployment failures.
  3. Real-Time Monitoring and Alert s: The system provides instant feedback on the deployment process, highlighting successes and pinpointing failures, which accelerates troubleshooting and reduces downtime

DataKitchen’s solution offers an end-to-end Data Journey visualization that covers the complex data estate necessary for thorough development testing. This feature ensures developers have a comprehensive view of how new code or data sets integrate with existing systems, enhancing understanding and reducing integration errors.

Benefits of Effective Data Observability in Development

Implementing DataKitchen’s observability tools during the development and deployment phases brings substantial benefits:

Conclusion

For organizations aiming to enhance their development processes and ensure successful deployments, adopting DataKitchen’s Data Observability solutions is an excellent strategy. By integrating comprehensive testing and real-time monitoring into the development lifecycle, companies can prevent costly errors and accelerate their time-to-market for new data sets and features.

Next Steps: Download Open Source Data Observability, and Then Take A Free Data Observability and Data Quality Validation Certification Course


FAQ

What are the key points in this blog?

Development and deployment is the fourth of five data observability use cases. New SQL scripts, Python modules, Yaml configurations, and datasets each carry risk into a working system, so functional, unit, and regression tests run in the development environment against test data before anything is promoted. Observability then answers the deployment questions: what code is in what environment, did the deploy work, how many tests passed.

What is the development use case in data observability?

It covers the data observability checks that run when new code, tools, configurations, or datasets are introduced: regression tests and impact assessment, so a change is proved safe before it is promoted. The point is to find problems inside the development cycle rather than after a deploy, where the result is a failed deployment and operational disruption.

What are the five use cases in data observability?

Data evaluation of new datasets before they enter production, data ingestion monitoring for existing sources, data production across multi-tool pipelines, development work such as regression tests and impact assessment when code or configuration changes, and data migration verification that moved data matches the legacy system.

What tests should run before deploying a data pipeline change?

Functional, unit, and regression tests, executed in the development environment against test data rather than production data. That is what makes the difference between finding a broken transformation before promotion and finding it because a dashboard is wrong. Impact assessment belongs in the same pass: what else depends on the thing you changed.

What questions should observability answer about deployments?

Did all my tests pass. Will this change create a failed deploy. What code is in what environment. How many deployments failed before, and how many did we do last quarter. How many tests ran in the QA environment, and how many passed, failed, or warned. How often do we change the production schema. And for a given project, what pipelines, tests, deploys, and tickets are in flight.

How does data observability fit into a CI/CD pipeline?

It automates the tests the pipeline runs and reports what happened. Working alongside a CI/CD tool such as Jenkins keeps code quality consistent across environments and cuts the chance of a failed deployment, while feedback on each deploy shows what succeeded and where it broke. An end-to-end Data Journey view covers the data estate the change touches.

Install Open Source TestGen Free, no vendor lock-in Request a Demo See TestGen Enterprise in action
Chris Bergh

Chris Bergh

CEO and Head Chef at DataKitchen. He is a leader of the DataOps movement and is the co-author of the DataOps Cookbook and the DataOps Manifesto.

LinkedIn →