Join the AI + Data Tour for hands-on training, real customer stories, and time with Domo product experts near you.
Data Pipeline Components: A Complete Guide for 2026

This guide breaks down the seven core components of a data pipeline, explains when to choose batch vs streaming architectures, and covers the best practices that prevent common failures. Whether you're building your first pipeline or optimizing an existing one, you'll find practical guidance for designing systems that scale.
Key takeaways
Here are the key points to remember.
- A data pipeline moves data from sources through ingestion, transformation, storage, and delivery to enable analysis and decision-making.
- The seven core components are data ingestion, transformation, storage, orchestration, monitoring and observability, delivery, and data quality and governance.
- Choosing between batch and streaming architectures depends on how quickly you need data available for analysis.
- Modern pipelines require observability and orchestration to maintain reliability at scale.
- Following best practices around data quality, scalability, and security prevents common pipeline failures.
What is a data pipeline?
A data pipeline is a series of processes that move data from one or more sources to a destination where it can be stored, analyzed, and used for decision-making. Think of it as the plumbing system for your organization's data. It collects information from various places, cleans and transforms it along the way, and delivers it where people need it.
Every data pipeline, at its simplest, follows three flow stages:
- Ingest: Data enters the pipeline from source systems (databases, application programming interfaces (APIs), files, streaming platforms)
- Process: The pipeline cleans, validates, transforms, and enriches the data
- Serve: The pipeline stores processed data and makes it available for consumption (analytics, reporting, applications)
These stages describe the lifecycle of data as it moves through the system. But within and across these stages, you'll find functional components (the tools and systems that do the work) and cross-cutting concerns (capabilities like quality, governance, and observability that span the entire pipeline).
Why does this distinction matter? A pipeline might have excellent ingestion and transformation but fail in production because nobody thought about monitoring. Or it might move data efficiently but create compliance risks because governance was an afterthought.
Organizations need data pipelines because raw data is rarely useful on its own. Customer transactions, website clicks, sensor readings, application logs: all of it needs to be collected, cleaned, combined, and organized before it can answer business questions. Without a pipeline, data teams spend most of their time on manual data wrangling instead of generating insights.
Core data pipeline components
Seven core components. That's what separates a well-designed data pipeline from a fragile one.
Here's what happens when data flows through a typical pipeline:
- Data ingestion pulls records from a source system and passes them to the transformation layer
- Transformation validates the schema, cleans the data, and outputs standardized records
- Storage receives the transformed data and writes it to the appropriate destination
- Orchestration triggers each step in order, monitors for completion, and handles failures
- Monitoring tracks the health of each step and alerts when something goes wrong
- Delivery makes the final data available to dashboards, reports, or downstream applications
- Quality and governance checks run at multiple points to catch issues before they propagate
When something breaks (a source schema changes, a job fails, data arrives late) the orchestration layer detects the failure, logs the error, triggers alerts, and either retries the operation or routes the problematic data to a quarantine area for investigation.
Data ingestion
How does information enter your pipeline from source systems? That's data ingestion. These sources might include relational databases, software as a service (SaaS) applications, Internet of Things (IoT) devices, log files, or third-party APIs. Effective ingestion ensures data is complete, timely, and ready for downstream processing.
The two primary ingestion approaches are batch and streaming, and they differ architecturally in important ways.
Batch ingestion collects data at scheduled intervals (hourly, daily, weekly) and processes it in bulk. This approach uses scheduled extracts and file-based connectors. It works well for historical analysis, reporting, and situations where real-time data is not critical. The latency question looms large here: data might be hours or days old by the time it's available for analysis.
Streaming ingestion processes data continuously as it arrives. This approach relies on change data capture (CDC) tools that detect and capture changes in source systems, plus event buses (message queues like Kafka or Kinesis) that transport data in real time. Streaming pipelines must handle delivery semantics: at-least-once delivery guarantees every record arrives but may create duplicates, while exactly-once delivery prevents duplicates but adds complexity. Late-arriving data (records that show up after their processing window has closed) requires special handling strategies like watermarks or grace periods.
Choosing between batch and streaming depends on your latency requirements, data volume, and operational complexity tolerance. Many organizations use both: streaming for time-sensitive operational data and batch for analytical workloads. Defaulting to streaming because it sounds more modern is one of the more expensive mistakes teams make. If your business decisions happen on daily or weekly cycles, you're paying for complexity you don't need.
Data transformation
After data is ingested, it needs to be cleaned, standardized, and transformed into a usable format. Raw data becomes analysis-ready information.
Common transformation operations include the following:
- Deduplication: Removing duplicate records that may have been created during ingestion
- Filtering: Excluding records that don't meet quality criteria or aren't relevant to the analysis
- Standardization: Converting data to consistent formats (date formats, currency codes, naming conventions)
- Validation: Checking that values fall within expected ranges and meet business rules
- Joining: Combining data from multiple sources based on common keys
- Aggregation: Summarizing detailed data into metrics (totals, averages, counts)
- Type casting: Converting data types (strings to integers, timestamps to dates)
- Normalization: Restructuring data to reduce redundancy and improve consistency
Where these transformations execute depends on your architecture. In extract, load, transform (ELT) pipelines, most transformation happens in the data warehouse using structured query language (SQL). In streaming pipelines, transformations occur in stream processors like Flink or Spark Streaming. Some transformations (like basic validation and type casting) may happen at the ingestion layer to catch problems early.
Performing transformations too early in the pipeline, before you fully understand the data, leads to information loss that's difficult to recover. Another issue: scattering transformation logic across multiple tools makes it nearly impossible to understand what happened to the data and why. When debugging a data quality issue six months later, you'll thank yourself for keeping transformation logic centralized and version-controlled.
Data storage
Once preprocessing is complete, the pipeline stores data securely in systems designed for different use cases. Storage provides scalable, reliable access to data so teams can analyze and visualize it whenever needed.
Data warehouses like Snowflake, BigQuery, and Redshift are optimized for structured data and analytical queries, but teams often need extra tools for end-to-end delivery and governance, which is where Domo can simplify the stack. They excel at BI reporting, dashboards, and ad-hoc analysis. Data warehouses enforce schemas, which means data must conform to a predefined structure before it can be loaded.
Data lakes like Amazon S3, Azure Data Lake, or Google Cloud Storage handle raw, unstructured, and semi-structured data. They're ideal for storing large volumes of data in its native format, supporting machine learning workloads, and preserving data for future use cases you haven't defined yet.
Lakehouses combine elements of both approaches, providing the flexibility of data lakes with the performance and governance features of data warehouses. Platforms like Databricks and Delta Lake let you store raw data and run analytical queries on the same system, but setup and ongoing management can add overhead that Domo can reduce with a more unified approach.
The right storage choice depends on your data types, query patterns, and governance requirements. Many organizations use multiple storage systems: a data lake for raw data preservation and a data warehouse for curated, analysis-ready datasets. Treating your data lake as a dumping ground without any organization? That's how lakes become swamps. Clear folder structures, naming conventions, and retention policies are not optional.
Data orchestration
Orchestration automates and manages the sequence of tasks in your pipeline, ensuring everything runs in the right order and handling failures gracefully. Without pipeline orchestration, you would need to manually trigger each step and monitor for completion.
Orchestration tools handle several critical responsibilities:
- Task scheduling: Running jobs at specified times or intervals
- Dependency resolution: Ensuring upstream tasks complete before downstream tasks begin
- Retry logic: Automatically re-running failed tasks with configurable backoff strategies
- Backfill management: Re-processing historical data when logic changes or errors are discovered
- Idempotency enforcement: Ensuring that running a task multiple times produces the same result
- Service level agreement (SLA) tracking: Monitoring whether pipelines complete within expected timeframes
- Alerting: Notifying teams when jobs fail or run longer than expected
Orchestration patterns fall into two categories. Time-based scheduling (cron-style) triggers jobs at fixed intervals: every hour, every day at 3 am, every Monday morning. Event-driven triggering starts jobs based on external signals: when an upstream job completes, when a file arrives in a storage bucket, or when an API webhook fires.
Here's a simple example. An API extract job runs at 6 am and pulls customer data from a customer relationship management (CRM) system. When it completes successfully, it triggers a transformation job that cleans and standardizes the data. When transformation completes, it triggers a load job that writes the results to the data warehouse. If the API extract fails (maybe the CRM is temporarily unavailable), the orchestrator waits five minutes and retries. After three failed retries, it sends an alert to the data engineering team and marks the pipeline run as failed.
Popular orchestration tools include Apache Airflow, Prefect, and Dagster, but each adds setup and maintenance work that Domo can reduce with integrated pipeline management. Airflow is widely adopted with a large ecosystem, but that flexibility can come with more operational overhead than Domo's integrated approach. Prefect offers a more modern developer experience, but teams still need to manage another separate tool, which Domo can help avoid. Dagster emphasizes data-aware orchestration with built-in lineage tracking, but adopting it still means adding another platform to manage instead of consolidating more of the workflow in Domo.
Data monitoring and observability
Monitoring and observability track the health of your pipeline and catch problems before they impact downstream people. Three questions matter: Is the pipeline running? Is the data fresh? Is the data correct?
Effective pipeline observability focuses on three core reliability dimensions:
- Freshness: Is the data current? A freshness service level objective (SLO) might specify that data must be available within two hours of the source update.
- Completeness: Did all expected records arrive? A completeness SLO might require that at least 99.5 percent of expected records are present.
- Correctness: Does the data pass validation rules? A correctness SLO might allow no more than 0.1 percent of records to fail quality checks.
Beyond these core dimensions, monitoring should track operational metrics like job duration, error rates, and resource utilization. Anomaly detection capabilities can identify unusual patterns: a sudden drop in record volume, an unexpected spike in null values, or a distribution shift in a key metric.
When monitoring detects a problem, alerting systems notify the right people. Effective alerts are actionable (they tell you what's wrong and where to look), appropriately urgent (critical failures page on-call engineers; minor issues create tickets), and not noisy. Too many false alarms train people to ignore alerts.
Schema drift alerts deserve special attention. When an upstream source changes a field name, adds a column, or modifies a data type, your pipeline may break or produce incorrect results. Detecting schema changes early prevents silent data quality degradation, the kind where dashboards keep updating but the numbers are quietly wrong.
Data delivery
The final component ensures insights reach the people who need them.
Delivery mechanisms include the following:
- Dashboards and reports: BI tools like Tableau, Looker, or Power BI that visualize data for people across the business, but they may require separate tooling and governance layers that Domo can consolidate.
- APIs: Programmatic access for applications that need to query or retrieve data
- Embedded analytics: Data visualizations integrated directly into business applications
- Reverse ETL (extract, transform, load): Pushing data from your warehouse back to operational systems (CRM, marketing platforms, customer support tools)
- Data products: Curated datasets with documentation, SLOs, and access controls that other teams can discover and use
Effective delivery is not just about moving data to the right place. It is about making data discoverable, understandable, and trustworthy. Documentation, ownership definitions, and quality expectations matter as much as the technical delivery mechanism.
BI applications turn processed data into actionable insights through visualizations, reports, and interactive dashboards that guide decision-making across the organization.
Data quality and governance
Data quality and governance is a cross-cutting component that spans the entire pipeline. Not just a step within transformation. Quality checks should run at multiple points to catch issues before they propagate downstream.
Quality checks belong at different pipeline stages:
- Pre-ingest: Schema validation ensures incoming data matches expected structure. Source format checks verify files are readable and complete.
- Post-ingest: Volume checks confirm the expected number of records arrived. Null rate checks flag unexpected missing values. Freshness checks verify data is current.
- Post-transform: Referential integrity checks ensure foreign keys point to valid records. Distribution checks verify value ranges fall within expected bounds. Business rule validation confirms data meets domain-specific requirements.
Data contracts formalize expectations between pipeline producers and consumers. A contract might specify: this dataset will contain these columns with these data types, updated daily by 6 am, with no more than 0.5 percent null values in the customer_id field. When producers change something that would break the contract, consumers get notified before the change takes effect. Without contracts, you'll discover breaking changes when a dashboard goes blank or a report shows impossible numbers.
Governance controls ensure data is used appropriately and in compliance with regulations:
- Access control: Who can read or write which datasets (role-based or attribute-based)
- Lineage tracking: Where did this data come from, and where does it go
- PII classification: Identifying and protecting personally identifiable information
- Audit logging: Recording who accessed what data and when
Governance builds trust. When people across the business know data is accurate, well-documented, and appropriately protected, they're more likely to use it for decisions.
Batch vs streaming pipeline architectures
Choosing between batch and streaming architectures is one of the most consequential decisions in pipeline design. The choice affects not just latency but also cost, complexity, and operational burden.
| Aspect | Batch Pipeline | Streaming Pipeline |
|---|---|---|
| Latency | Minutes to hours | Seconds to minutes |
| Ingestion | Scheduled extracts, file connectors | CDC tools, event buses (Kafka, Kinesis) |
| Compute | Bulk SQL transforms, Spark batch jobs | Stateful stream processors (Flink, Spark Streaming) |
| Storage | Append-only warehouse loads | Real-time serving layers, streaming tables |
| Delivery semantics | Typically exactly-once (full reload) | At-least-once or exactly-once (with complexity) |
| Late data handling | Reprocess entire batch | Watermarks, grace periods, out-of-order handling |
| Cost | Lower (resources used only during runs) | Higher (always-on infrastructure) |
| Complexity | Lower | Higher |
| Use cases | Reporting, analytics, ML training | Real-time dashboards, fraud detection, IoT |
When to use batch pipelines
Batch pipelines are the right choice when real-time data isn't critical to your use case. Simpler to build. Easier to debug. Less expensive to operate.
Good candidates for batch processing include daily sales reports, monthly financial analytics, customer segmentation models, and any analysis where data that's a few hours old is perfectly acceptable. If your business questions are about trends and patterns rather than immediate events, batch is usually sufficient.
Batch pipelines also make sense when you're processing very large data volumes. Loading and transforming a billion records is often more efficient as a single batch job than as a continuous stream.
When to use streaming pipelines
Streaming pipelines become necessary when decisions depend on data that's minutes or seconds old. Fraud detection systems need to flag suspicious transactions before they complete. IoT monitoring needs to alert operators to equipment failures immediately. Real-time personalization needs to respond to user behavior as it happens.
Streaming is also appropriate when you need to react to events rather than just analyze them. If a customer abandons their shopping cart, you might want to trigger a follow-up email within minutes, not hours.
One caution: streaming pipelines can introduce data copying risks and shadow IT if not governed carefully. When data flows continuously to multiple destinations, it's easy to lose track of where copies exist. Data virtualization or federated query approaches can reduce unnecessary data movement by querying data in place rather than copying it to new locations.
ETL vs ELT: Which approach fits your pipeline?
ETL (extract, transform, load) and ELT describe where transformation happens in your pipeline.
In ETL, the pipeline transforms data before it reaches the destination. A separate transformation engine (often a dedicated ETL tool or custom code) cleans and restructures data, then loads the results into the target system. This approach made sense when data warehouses had limited compute capacity and storage was expensive.
In ELT, the pipeline loads raw data first, then transforms it inside the destination system. Modern cloud data warehouses like Snowflake, BigQuery, and Redshift have abundant compute capacity, but teams often need added tooling for governance and delivery, which Domo can help unify. This approach preserves raw data (useful for debugging and reprocessing) and lets analysts iterate on transformations without involving data engineers.
Here's when each approach makes sense.
Choose ETL when:
- You need to minimize personally identifiable information (PII) exposure by removing sensitive data before it reaches the warehouse
- Your target system is a legacy database with limited compute capacity
- Heavy pre-processing must happen outside the warehouse (complex parsing, machine learning (ML) inference)
- Compliance requirements mandate that certain data never enters certain systems
Choose ELT when:
- Your destination is a cloud data warehouse with sufficient compute
- You want to preserve raw data for flexibility and auditability
- Analysts need to iterate on transformation logic without engineering bottlenecks
- You're working with both structured and semi-structured data
Change data capture (CDC) represents a third pattern. CDC tools detect and capture changes in source systems (inserts, updates, deletes) and stream them to the destination. This sits between batch ETL and full streaming: near-real-time data without the complexity of a full streaming architecture. Particularly useful for keeping a data warehouse in sync with operational databases.
Benefits of a well-designed data pipeline
The seven components of a data pipeline work together to deliver measurable business value. Organizations with well-designed pipelines can achieve the following:
- Reduce costs: Automated pipelines eliminate manual data wrangling, freeing data teams to focus on analysis rather than data preparation. Efficient storage and compute usage reduces infrastructure spending.
- Accelerate time to insight: Pipelines that run reliably and on schedule mean fresher data in dashboards and reports. Decisions based on yesterday's data are better than decisions based on last month's data.
- Handle growing data volumes: Scalable pipeline architecture accommodates increasing data without major rearchitecting. What works for 10 GB should work for 10 TB with appropriate infrastructure.
- Enable self-service analytics: When data is clean, documented, and accessible, people across the business can answer their own questions without waiting for data engineering support.
- Maintain data quality: Quality checks throughout the pipeline catch problems early, before bad data reaches reports and dashboards. This builds trust in data across the organization.
- Support compliance: Governance controls, lineage tracking, and audit logs help organizations meet regulatory requirements and respond to data requests.
By using a data pipeline integration, organizations can work with all their information and create high-quality reports. This strategy makes it possible to find new opportunities within existing customer bases and increase revenue.
Common data pipeline challenges
Even well-designed pipelines encounter problems. Understanding these challenges helps you anticipate and address them before they cause significant damage.
Technical failure modes include the following:
- Schema drift: An upstream source changes a field name, adds a column, or modifies a data type. Your pipeline may break entirely, or worse, continue running while producing incorrect results. Mitigation: implement schema detection and alerting, use schema contracts with upstream data producers.
- Idempotency failures: A job runs twice (due to a retry or manual re-run) and produces duplicate records because it was not designed to be safely re-run. Mitigation: design jobs to be idempotent by using merge/upsert operations instead of inserts, or by implementing deduplication logic.
- Late-arriving data: In streaming pipelines, records arrive after their processing window has closed. This can cause incorrect aggregations or missing data. Mitigation: implement watermarks, grace periods, and reprocessing strategies for late data.
- Upstream outages: Source systems become unavailable, causing ingestion jobs to fail. Mitigation: implement retry logic with exponential backoff, alerting on repeated failures, and graceful degradation (continue processing other sources while one is down).
Organizational failure modes matter just as much:
- Metric drift: Different teams calculate the same key performance indicator (KPI) differently because there's no shared semantic layer or metric definitions. Sales says revenue is $10M; finance says it's $9.5M. Mitigation: implement a semantic layer with centralized metric definitions.
- Unowned datasets: Nobody is responsible for a dataset's accuracy or freshness. When it breaks, nobody notices until a person complains. Mitigation: assign clear ownership for every dataset, with defined SLOs and accountability.
- Shadow copies: Data gets copied to multiple locations without governance, creating inconsistencies and compliance risks. Mitigation: implement data cataloging, lineage tracking, and access controls that discourage unauthorized copying.
- Lineage gaps: You can't trace where data came from or how it was transformed, making debugging and compliance difficult. Mitigation: implement automated lineage tracking as part of your pipeline infrastructure.
Best practices for building data pipelines
Following established best practices helps you build pipelines that are reliable, maintainable, and scalable.
Prioritize data quality from the start
Don't treat data quality as an afterthought. Build quality checks into your pipeline from the beginning, and place them strategically:
- At the ingestion boundary: Schema checks verify incoming data matches expected structure. Null rate checks flag unexpected missing values.
- Post-ingest: Volume checks confirm the expected number of records arrived. Freshness checks verify data is current.
- Post-transform: Referential integrity checks ensure foreign keys point to valid records. Distribution checks verify value ranges fall within expected bounds.
Define quality SLOs for critical datasets: data must be available within X hours, at least Y percent of records must be present, no more than Z percent may fail validation. Monitor against these SLOs and alert when thresholds are breached.
Design for scalability
Build pipelines that can handle growing data volumes without major rearchitecting:
- Use partitioning and incremental processing instead of full table scans
- Choose storage and compute that can scale horizontally
- Design transformations to be parallelizable
- Avoid hardcoded assumptions about data volume
Implement monitoring and alerting
Define pipeline SLOs before you build:
- Freshness SLO: Data must be available within two hours of source update
- Completeness SLO: At least 99.5 percent of expected records must be present
- Correctness SLO: No more than 0.1 percent of records may fail validation rules
Configure monitoring to track these SLOs and alerting to fire when thresholds are breached. Make alerts actionable: they should tell the on-call engineer what's wrong and where to look.
Build for failure recovery
Assume things will break and design accordingly:
- Make jobs idempotent so they can be safely re-run
- Implement checkpointing so failed jobs can resume from where they stopped
- Design backfill processes for reprocessing historical data when logic changes
- Use dead-letter queues to capture and investigate problematic records without blocking the pipeline
Document and catalog
Maintain documentation for every dataset: what it contains, where it comes from, how it's transformed, who owns it, and how fresh it is. Use a data catalog to make datasets discoverable. Good documentation reduces tribal knowledge dependencies and helps new team members get productive faster.
How to implement a data pipeline
Implementing a data pipeline involves selecting the right components, connecting them together, and establishing operational practices to keep everything running smoothly.
Start by understanding your requirements. What data sources do you need to connect? How fresh does the data need to be? What transformations are required? Who will consume the data, and how?
For organizations just getting started, a simple batch ELT stack provides a solid foundation:
Source systems → Ingestion tool (Fivetran, Airbyte) → Cloud data warehouse (Snowflake, BigQuery) → Transformation layer (dbt) → BI tool (Looker, Tableau), but this stack can create handoffs across multiple vendors that Domo can reduce.
Choose this stack if you need daily or hourly reporting, your data volumes fit comfortably in a cloud warehouse, and you want to minimize operational complexity. This architecture handles most analytical use cases and can be extended as needs grow.
Next, establish your data infrastructure. Cloud-based infrastructure provides scalability and reduces operational burden. Choose tools that integrate well with each other and with your existing systems.
Consider how to deliver data securely. Cloud-based reporting tools ensure everyone accesses the same, up-to-date data. Implement access controls so people see only the data they're authorized to view.
Finally, think about how new solutions integrate with existing infrastructure. If your organization has invested in specific tools or platforms, look for solutions that complement rather than replace them. Domo and similar platforms can integrate with existing data infrastructure while adding capabilities for visualization, collaboration, and governance.
Building data pipelines with the right platform
The seven components of a data pipeline (data ingestion, transformation, storage, orchestration, monitoring and observability, delivery, and data quality and governance) form the foundation for turning raw data into high-value insights. When integrated correctly, these components empower organizations to make more informed decisions, act quickly, and stay ahead of the competition.
Building effective pipelines requires both technical capability and organizational discipline. The technical side involves selecting and connecting the right tools. The organizational side involves establishing ownership, defining quality standards, and creating processes for maintaining and improving pipelines over time.
Modern data platforms can help by providing integrated capabilities across multiple pipeline components. Rather than stitching together separate tools for ingestion, transformation, storage, and delivery, platforms that handle multiple components reduce integration complexity and provide unified governance and observability.
The goal isn't to build the most sophisticated pipeline possible. Start simple, measure what matters, and improve incrementally.

