• new

    Release 2026.06 - Bringing Data Observability Into Your Code

  • new

    Contribute to the Future of AI & Data Innovation

  • new

    • Release 2026.06 - Bringing Data Observability Into Your Code

  • new

    • Contribute to the Future of AI & Data Innovation

Data Observability for Data Engineers: A Practical

|

7

min read

A batch pipeline can finish green while the dashboard it feeds is already wrong. The load may contain only part of the expected data, an upstream system may have added a column that changes a transformation, or the latest partition may be hours late. Infrastructure monitoring reports a successful run, while analysts and machine learning systems consume stale or corrupted outputs.

That gap is where data observability for data engineers earns its place. It examines the behavior of the data moving through warehouses, lakes, streams, and transformations, then connects anomalies to ownership, impact, and response. The practical challenge isn't collecting every possible signal. It's building enough coverage to catch meaningful failures without moving sensitive data out of your environment or burying engineers in alerts.

Table of Contents

  • Why Data Engineers Need Observability Beyond Pipeline Monitoring

    • Monitoring systems and monitoring data

    • The five pillars and their practical value

  • Instrumenting the Four Core SLIs Every Pipeline Needs

    • 1. Job success rate

    • 2. Freshness latency

    • 3. Completeness and volume

    • 4. Schema conformity

  • Solving the Alert Fatigue Problem That Undermines Observability

    • Design alerts around decisions

    • Measure detection quality, not notification volume

  • Implementing Observability in Regulated and On-Premises Environments

    • A deployment sequence that survives security review

    • Heterogeneous estates need a common contract

  • Choosing the Right Alerting Strategy for Your Data Stack

    • When simple rules win

    • When adaptive methods help

  • Integrating Observability into Your Existing Pipeline Architecture

    • Put checks where they answer a question

  • Starting Small and Scaling Your Observability Implementation

Why Data Engineers Need Observability Beyond Pipeline Monitoring

At 9:00 a.m., an orchestration dashboard shows a successful overnight job. The warehouse task completed, retries stayed at zero, and the compute cluster remained healthy. By late morning, finance notices that a revenue dashboard is missing recent transactions. A model trained on the same table has also started producing unstable results.

The pipeline didn't fail in the conventional sense. It delivered a partial partition and marked the work complete. A downstream join excluded records, and the resulting table looked structurally valid enough for dashboards to load. Traditional monitoring saw an available system. It didn't see unreliable data.

A diagram illustrating why data engineers need observability beyond simple pipeline monitoring due to potential silent failures.

Monitoring systems and monitoring data

Pipeline monitoring still matters. Job success rate, retry behavior, task duration, executor health, and infrastructure capacity help engineers identify operational failures. But those signals answer whether a process ran, not whether the output is complete, timely, structurally consistent, or behaving normally.

Data observability adds inspection of the data itself. It combines technical signals with context such as lineage, owners, downstream dependencies, and business criticality. The distinction is similar to the difference between checking that a delivery truck left the warehouse and checking whether the package contains the right items and arrived before the customer needed it.

A useful starting point is the digna comparison of data observability and data quality, because quality rules and observability solve related but different problems. Deterministic tests enforce known expectations. Observability helps expose unexpected changes that nobody thought to encode as a test.

The five pillars and their practical value

Most data observability models use five pillars, freshness, distribution, schema, lineage, and volume, as described in Databricks' overview of data observability.

  • Freshness shows whether data arrived within its expected schedule. It matters most for operational dashboards, regulatory reporting, and processes that depend on current records.

  • Volume compares the amount of data with normal behavior. It can expose incomplete loads, duplicate ingestion, broken filters, and upstream outages.

  • Schema tracks columns, data types, and structural changes. It becomes critical when source systems evolve independently of warehouse consumers.

  • Distribution looks at value behavior, including null patterns, ranges, uniqueness, and other dataset characteristics. It can catch a semantically broken feed that still has the right columns and row count.

  • Lineage connects an incident to the assets and teams affected. Without it, engineers spend response time searching for owners and downstream dependencies.

A regulated warehouse may prioritize schema and lineage because an uncontrolled structural change can affect reporting evidence. A streaming platform may emphasize freshness and distribution because delayed or abnormal events can distort operational decisions quickly. The right implementation doesn't treat every pillar equally. It gives deeper coverage to data products whose failure carries greater business or compliance impact.

For broader industry context, the observability tag on ecommerce is useful for seeing how reliability concerns appear outside core platform engineering. The production lesson is straightforward: keep infrastructure monitoring, then add data-level signals where a green pipeline status can still hide a bad outcome.

Instrumenting the Four Core SLIs Every Pipeline Needs

A practical observability rollout can begin with four service level indicators, or SLIs, on each critical pipeline: job success rate, freshness latency, completeness or volume, and schema conformity. These signals cover execution, timing, quantity, and structure without requiring an elaborate monitoring program on day one.

An infographic titled Instrumenting the Four Core SLIs, featuring icons for Job Success Rate, Data Freshness, Data Latency, and Data Quality.

1. Job success rate

Track completed, failed, retried, skipped, and timed-out executions. A simple success ratio is useful, but don't stop at a binary status. Record the execution path, duration, dependency state, and whether the job produced its expected output.

For batch systems, emit a completion event only after the target partition has been committed and validated. For streaming systems, distinguish process liveness from useful progress. A consumer can remain connected while lag grows or malformed records accumulate.

2. Freshness latency

Freshness measures the time since the last successful update, or the delay between expected and actual delivery. For critical datasets, teams often express the metric as a p95 or p99 latency, which prevents a small number of fast records from masking a long tail of delayed arrivals. Industry guidance on freshness monitoring also frames the check against the expected ingestion cadence.

Batch pipelines should record scheduled time, arrival time, and successful availability time. Streaming systems should track event-time lag and ingestion-time lag separately, since a live consumer can still process late events.

Use historical behavior as context rather than applying one universal threshold. A practical baseline compares the same hour of day across the prior 2–4 weeks, as outlined in Streamkap's guidance for streaming observability. For a critical alert, the recommended statistical starting point is 3 standard deviations from baseline, while a warning can use 2 standard deviations. Those values belong in a policy that also considers delivery commitments and downstream consequences.

3. Completeness and volume

Compare expected with actual record counts, partitions, files, or event windows. A daily batch may need an expected partition and a minimum record range. A stream may need to maintain event throughput and avoid unexplained gaps in time windows.

Counts alone aren't enough. Pair them with duplicate checks, null-rate monitoring, and partition coverage so a duplicated load doesn't look complete. Volume anomalies often arrive before a dashboard visibly breaks, which makes them valuable early indicators rather than merely post-incident diagnostics.

4. Schema conformity

Measure the percentage of rows that pass structural validation, then track changes to column names, types, nullability, and nesting. Schema drift includes added columns, removed columns, and datatype changes, as documented in Ataccama's explanation of schema tracking.

Keep the check close to the source boundary and again before high-value consumption layers. That placement helps distinguish an upstream contract change from a transformation defect. Store the observed schema version with each run so responders can compare the first bad output with the change that preceded it.

Practical rule: Baseline first, alert second. A threshold without historical context either misses gradual drift or creates noise during normal operating cycles.

For teams defining delivery metrics precisely, this guide to data timeliness definitions and monitoring metrics provides a useful vocabulary for separating arrival, processing, and availability delays.

Solving the Alert Fatigue Problem That Undermines Observability

More checks can make reliability worse when nobody trusts the notifications. A 2025 enterprise observability report found that only 13% of telemetry data was used, which means the central problem isn't always missing visibility. It may be an excess of signals that never become operational decisions, as reported in recent enterprise observability coverage.

The mistake is treating every deviation as an incident. A small distribution change on an exploratory table shouldn't page the same team, or use the same escalation path, as stale data feeding regulatory reporting. Engineers need a way to rank signals by impact, confidence, and ownership.

Design alerts around decisions

Every alert should answer four questions:

  • What changed? Identify the dataset, field, partition, or pipeline.

  • How unusual is it? Show the baseline, observed value, and confidence.

  • Who owns the response? Route the notification to a named team or service owner.

  • What could be affected? Include lineage and the business process that depends on the asset.

A useful alert might state that a critical table arrived outside its normal delivery pattern, identify the missing partition, show the downstream reporting dependency, and point to the ingestion job responsible. “Volume anomaly detected” isn't an incident workflow. It's an invitation to begin manual investigation.

Statistical thresholds help reduce arbitrary paging. Use 3 standard deviations for critical alerts and 2 for warning alerts when historical behavior is stable, then suppress duplicate notifications while an incident remains open. For seasonal, sparse, or rapidly changing data, a learned baseline may outperform a fixed rule, but it still needs an owner and a business-aware severity policy.

Measure detection quality, not notification volume

Mean-time-to-detect is often the most revealing reliability measure because teams can only resolve an issue after they know it exists. One 2026 industry study reported that data teams averaged 67 incidents per month, with 68% needing 4+ hours to detect issues and an average of 15 hours to resolve them, according to Integrate.io's survey coverage. The operational implication is clear: reducing detection delay may create more value than adding another dashboard.

Track noisy alerts that required no action, alerts with no assigned owner, repeated alerts for one root cause, and incidents discovered by business users first. Then tune thresholds, consolidate related signals, and remove checks that don't change a decision.

A focused data quality dashboard should help responders see trends and unresolved incidents, not merely display a large inventory of checks. The strongest observability program is not the one with the most alerts. It's the one engineers believe enough to act on.

Implementing Observability in Regulated and On-Premises Environments

A SaaS-first design often assumes that metadata and samples can move freely to an external service. That assumption fails in financial services, healthcare, telecommunications, and public sector environments where data residency, auditability, access control, and security review shape every architectural decision.

The implementation pattern I trust in these environments keeps production data inside the customer boundary. In-database execution computes metrics where the data already lives, while the observability layer receives permitted metadata, metric results, and incident context instead of unrestricted production records.

A data engineer monitors real-time data pipelines on a large holographic display in a modern server room.

A deployment sequence that survives security review

Start with the data-flow diagram. Document where checks execute, what leaves the database, which service account runs them, and where results are stored. Security teams can review a specific flow more effectively than a promise that a product is “secure.”

Separate metric computation from investigation data. Row counts, freshness timestamps, schema fingerprints, and aggregate quality metrics may be sufficient for detection. Record-level samples should be optional, masked, or prohibited where policy requires it.

Use private deployment boundaries. A private cloud or on-premises installation can run inside the customer's VPC, cloud account, or data center. Keep connectors, schedulers, metadata stores, and user interfaces within approved network zones.

Make audit evidence part of the design. Store check definitions, execution times, observed results, acknowledgements, ownership changes, and remediation history. Auditors usually need to establish what was checked, when it ran, what happened, and who responded.

Teams should also document residency decisions explicitly. The data residency requirements guide is a useful reference when deciding which metadata may cross regional or organizational boundaries.

Heterogeneous estates need a common contract

Legacy databases, warehouse platforms, lake storage, Kafka topics, and transformation tools rarely expose identical metadata. Standardize the observability output rather than forcing every source into the same instrumentation method. Each integration should publish asset identity, update time, volume or completeness result, schema state, check status, owner, and lineage references.

Least-privilege service accounts, read-only access where possible, masked identifiers, and separate credentials per environment reduce the blast radius of the monitoring system itself. Test the deployment against backup, failover, and disconnected-network scenarios before production rollout.

The trade-off is real. In-database checks may consume warehouse resources, while external scanning may simplify onboarding but create governance friction. Measure query cost, schedule expensive profiling away from peak workloads, and use lightweight metadata checks continuously with deeper validation on critical assets.

Choosing the Right Alerting Strategy for Your Data Stack

Alerting strategy should follow data behavior, not tool fashion. Static thresholds are easy to explain and audit. Statistical baselines adapt to normal variation. Machine learning can reduce manual rule creation, but it introduces model behavior that compliance and platform teams may want to inspect. Deterministic validation remains essential wherever a business rule must be enforced exactly.

Strategy

Best For

Limitations

Implementation Complexity

Static thresholds

Predictable counts, hard limits, contractual delivery windows

Break under seasonality, growth, and gradual drift

Low

Statistical baselines

Dataset-specific volume, freshness, and distribution behavior

Need sufficient historical context and careful tuning

Medium

Machine learning anomaly detection

Complex patterns, changing behavior, and broad coverage

Requires explainability, governance, and review of false positives

Medium to high

Deterministic record validation

Regulatory controls, business rules, and exact row-level requirements

Can't identify unknown patterns without defined rules

Medium

When simple rules win

Use a static rule when the failure condition is unambiguous. A required partition that hasn't arrived, a prohibited datatype, or a field that must satisfy a defined business constraint should produce a deterministic result. These checks are easier to test, explain to auditors, and reproduce during incident review.

Static thresholds also work well for stable high-volume feeds with clear operational limits. They become fragile when normal behavior changes by hour, season, customer segment, or product lifecycle. A single global threshold often creates false positives during legitimate peaks and misses slow degradation.

When adaptive methods help

Statistical baselines are useful when each dataset has its own rhythm. Compare like with like, such as the same hour or delivery window, and preserve the historical context that led to the alert. Machine learning can extend this approach across many assets, but engineers should still require a reason code, baseline visualization, and an override process.

The most defensible design combines methods. Use anomaly detection for broad coverage of freshness, volume, and distributions. Add deterministic checks for regulatory fields, contractual requirements, and business-critical record logic. Route both through the same incident workflow so responders don't have to reconcile separate alert systems.

A monitoring and reporting layer should expose not only whether a check failed, but also its trend, owner, severity, and downstream relevance. digna's monitoring and reporting capabilities represent one example of that combined operating model, alongside tools built around dbt tests, warehouse assertions, or custom orchestration checks.

Integrating Observability into Your Existing Pipeline Architecture

Observability shouldn't require a rebuild. The safest pattern adds measurement at boundaries that already exist, then sends results to a shared incident and metadata workflow without blocking every task on every check.

A diagram illustrating how to integrate observability components into a standard data pipeline architecture for engineers.

In Airflow, emit execution and completion metadata from DAG tasks, then run freshness and completeness checks after the target partition is committed. In dbt, retain test results and model timing as first-class observability events. Spark jobs can publish input and output counts, rejected-record counts, schema fingerprints, and partition details. Kafka consumers should expose lag, event-time delay, malformed-record rates, and topic-level volume behavior.

Put checks where they answer a question

Use synchronous checks when continuing would create unacceptable downstream risk. A schema conformity check before publishing a shared contract or a completeness check before releasing a regulatory dataset may reasonably block the next stage.

Use asynchronous checks for broader profiling and trend analysis. Distribution metrics, column statistics, and historical comparisons can run beside the critical path, provided the resulting alert has a clear containment process. This avoids turning every analytical check into a pipeline bottleneck.

Schema handling deserves an explicit policy. Classify added columns, removed columns, and datatype changes as compatible, review-required, or breaking. Don't automatically fail every additive change, but don't accept a datatype modification without review, as it can change how downstream consumers interpret values.

Lineage should be captured at transformation boundaries, not reconstructed during an incident. Store source-to-target relationships for Airflow tasks, dbt models, Spark transformations, and streaming topics, then attach checks to the assets they describe.

Design principle: Observability should make the pipeline easier to operate, not become another dependency that can stop it unnecessarily.

Finally, use observability results to improve architecture. Repeated freshness delays may expose an overloaded extraction window. Persistent volume anomalies may point to weak source contracts. A pattern of schema incidents may justify versioned interfaces rather than more alerts.

Starting Small and Scaling Your Observability Implementation

Monitoring everything on the first day creates a catalog of checks before the team knows which signals matter. Start with one critical pipeline, preferably an asset that feeds executive reporting, customer operations, regulatory work, or a production model. Rank candidates by business impact, incident history, dependency depth, and the difficulty of detecting failure manually.

A phased rollout is easier to defend because each phase produces operational evidence.

  1. Days 1–30: Map the selected pipeline, identify owners and downstream consumers, establish freshness, job success, completeness, and schema SLIs, and record the baseline.

  2. Days 31–60: Add distribution or record-level validation where the first phase reveals risk. Tune warning and critical thresholds, route alerts to accountable teams, and document the response workflow.

  3. Days 61–90: Review incidents and near-misses, remove noisy checks, add lineage context, measure mean-time-to-detect, and select the next pipeline based on demonstrated risk rather than enthusiasm.

Measure outcomes that change engineering decisions. Mean-time-to-detect shows whether the team learns about failures earlier. Incident volume and repeated root causes reveal whether monitoring is reducing operational burden. Prevented downstream failures demonstrate value to analysts, compliance stakeholders, and business owners.

Adoption also depends on ownership. Assign each critical dataset a technical owner, define who can acknowledge or suppress an alert, and require a reason when a check is disabled. Review false positives after incidents, not just during an annual tooling exercise.

digna can support this phased model with in-database execution, private cloud or on-premises deployment, anomaly detection, timeliness monitoring, record-level validation, and schema tracking. If your environment cannot move production data to a SaaS platform, evaluate whether the architecture preserves that boundary while still giving engineers usable incident context.

Use the first 90 days to instrument one business-critical pipeline, establish trustworthy baselines, and measure detection quality before expanding coverage. To evaluate an in-environment approach for your warehouses, lakes, and regulated data flows, visit digna and explore how its modular observability platform can fit your existing architecture.

Share on X
Share on X
Share on Facebook
Share on Facebook
Share on LinkedIn
Share on LinkedIn

Meet the Team Behind the Platform

A Vienna-based team of AI, data, and software experts backed

by academic rigor and enterprise experience.

Meet the Team Behind the Platform

A Vienna-based team of AI, data, and software experts backed by academic rigor and enterprise experience.

Product

Integrations

Resources

Company

INDEXED BYIndexerNow INDEXED BYIndexerNow