Cloud Data Fusion in Google Cloud: Visual Data Pipelines Without the Heavy Coding
A complete, plain-English guide to Cloud Data Fusion: how its drag-and-drop studio, plugins, Wrangler, compute profiles and managed instances work together to build, run and govern batch and streaming data integration pipelines on Google Cloud.
Imagine you want to build a toy railway. You could carve every piece of track from raw wood, or you could buy a box of ready-made pieces: straight tracks, curves, switches and stations, and snap them together on the living-room floor in an afternoon. If you later want a bigger layout, you simply add more pieces. Cloud Data Fusion is that box of ready-made pieces for data. Instead of writing long programs to move and reshape data, you drag blocks onto a canvas, connect them with arrows, fill in a few settings, and press run. Behind the scenes, Google Cloud turns your picture into real, scalable data processing. In this guide we start from the first idea and build up to the choices that decide whether your pipelines are reliable, secure and affordable.
1What Is Cloud Data Fusion?
Before looking at features, let us understand what Cloud Data Fusion is and the problem it solves.
The one-sentence definition
Cloud Data Fusion is a fully managed, cloud-native data integration service on Google Cloud that lets you build and manage data pipelines using a visual, point-and-click interface instead of writing code. It is built on CDAP, an open-source data integration framework, so the pipelines you create are not locked into a proprietary black box. You design the flow of data visually, and the service runs it on managed processing clusters.
What is data integration?
Data integration means bringing data from many different places into one useful, consistent form. A company may have customer records in a database, orders in files, and web activity in a message feed. To analyze them together, someone must collect, clean, combine and load them into a warehouse. This work is often described as ETL, which stands for extract, transform and load, or ELT, where the loading happens before the transformation.
Think of a water treatment plant. Water arrives from rivers, wells and rain tanks (sources), passes through filters and chemical stations (transformations), and flows out to homes through one clean network (the destination). A data pipeline does the same thing with information, and Cloud Data Fusion is the control room where you design the plant using blocks instead of welding the pipes yourself.
Who it is for
Data Analysts
People who know the data and the business rules well but are not full-time programmers can build pipelines themselves.
Data Engineers
Engineers who want to build standard pipelines quickly and spend their coding time on the truly custom parts.
Migration Teams
Teams moving data from on-premises systems and other clouds into Google Cloud using ready-made connectors.
Governance and Platform Teams
Groups who need to see where data came from and how it changed, using built-in lineage and metadata features.
“Code-free” does not mean “thought-free”. You still need to understand your data, your business rules and how pipelines behave at scale. The visual tool removes much of the programming, not the design work.
2Why Cloud Data Fusion Exists
Understanding the pain it removes makes its design choices easy to follow.
Building data pipelines by hand is slow. Each source needs its own connection code, each transformation needs careful testing, and every pipeline needs logging, error handling and scheduling. Teams ended up with large collections of scripts that only their authors understood, and whenever those authors left, nobody dared to touch them. At the same time, business teams waited weeks for simple new reports because data engineers were overloaded.
Visual data integration tools had existed for years, but many were heavy, expensive products that ran on dedicated servers. The CDAP project offered an open-source, extensible alternative. Google adopted it and offered it as a managed service, so that organizations could get a visual integration tool with the scale and convenience of the cloud and without running their own servers.
Script Sprawl
Hundreds of hand-written scripts, each with its own style and its own hidden assumptions, become hard to maintain.
Specialist Bottleneck
Only a few engineers can build pipelines, so everyone else waits in a queue.
Visual, Open Framework
CDAP provides reusable plugins and a visual designer in an open-source package.
Managed Service on Google Cloud
Cloud Data Fusion packages the framework as a managed service that integrates with Google Cloud security and processing tools.
3Core Concepts and Vocabulary
A handful of terms appear everywhere in Cloud Data Fusion. Learn these and the rest feels familiar.
Instance
One deployment of Cloud Data Fusion, with its own web interface and settings. You create it in a Google Cloud project and region.
Pipeline
A visual flow of connected blocks that reads data, changes it and writes it somewhere. The central thing you build.
Plugin
A reusable block with a specific job, such as reading from a database or removing duplicates. Plugins are the pieces of your toy railway.
Source, Transform, Sink
The three main block types: sources read data in, transforms change it, and sinks write it out.
Pipeline Studio
The canvas where you drag, connect and configure blocks.
Wrangler
An interactive data preparation tool for cleaning and shaping sample data by clicking and applying steps, then reusing those steps in a pipeline.
Compute Profile
A saved description of the processing cluster a pipeline will run on, such as its size and network.
Namespace
A named workspace inside an instance that keeps pipelines, plugins and settings for different teams separate.
Hub
A catalog where you can find and install extra plugins, templates and sample pipelines.
Macro
A placeholder in a setting that is filled in when the pipeline runs, such as a date or a file name.
Think of cooking from a recipe card. The pipeline is the recipe, plugins are the cooking steps like chop or boil, macros are blanks you fill in each time (“use today’s vegetables”), and the compute profile is the choice of kitchen: a small home stove or a big restaurant range.
flowchart LR
A[Source Plugin] --> B[Transform Plugin]
B --> C[Transform Plugin]
C --> D[Sink Plugin]
C --> E[Error Collector]
E --> F[Error Sink]
4Architecture: Where Things Actually Run
The friendly canvas hides an important split between the design tool and the processing engine. Understanding it explains costs, networking and failures.
Control plane and execution plane
Cloud Data Fusion has two main parts. The first is the instance itself, which hosts the web interface, stores your pipeline designs, tracks metadata and schedules runs. It is managed by Google, and in a typical setup it runs in a separate Google-managed project connected to yours. The second part is the execution environment: when a pipeline runs, Cloud Data Fusion typically translates it into jobs that run on a Dataproc cluster in your own project, using Apache Spark as the processing engine.
flowchart TD
U[Pipeline Designer in Browser] --> I[Cloud Data Fusion Instance - Design, Metadata, Scheduling]
I --> P[Compute Profile]
P --> D[Dataproc Cluster in Your Project]
D --> S1[Sources]
D --> S2[Sinks]
I --> M[Metadata and Lineage Store]
Think of an architect’s office and a construction site. The office holds the blueprints, schedules and records (the instance). The construction site, with workers and machines, is where the building actually happens (the cluster). You can have a small office managing many sites, and sites can open and close as projects start and finish.
Ephemeral clusters
By default, many setups use ephemeral clusters. When a pipeline run starts, Cloud Data Fusion creates a fresh Dataproc cluster, runs the job, and deletes the cluster when it finishes. This means you pay for processing only while pipelines run, and each run gets a clean environment. The trade-off is a startup delay of a few minutes each time a cluster is created. For frequent or time-critical runs, you can instead point pipelines at an existing, long-running cluster.
The path of a pipeline run
Design and Deploy
You build the pipeline in the studio and deploy it, which saves a runnable version.
Start a Run
A run starts by hand, on a schedule or because another pipeline triggered it, with any runtime values filled into macros.
Provision Compute
The compute profile tells the service to create a cluster or connect to an existing one.
Execute on Spark
The pipeline is translated into jobs that run in parallel across the cluster’s machines.
Record Results and Lineage
Run status, metrics, logs and lineage details are saved for later review.
Clean Up
Ephemeral clusters are deleted, so charges stop once the work is done.
Forgetting that two bills exist. You pay for the Cloud Data Fusion instance for as long as it exists, and separately for the Dataproc clusters used by pipeline runs. Teams that only watch one of them are often surprised.
5Editions and Choosing an Instance
Cloud Data Fusion comes in more than one edition. Picking the right one avoids both overspending and missing features.
| Edition | Intended Use | Typical Characteristics |
|---|---|---|
| Developer | Learning, experiments and development | Lowest cost, limited capacity, not meant for production workloads |
| Basic | Production batch pipelines for standard needs | Visual studio, core plugins, batch pipeline support |
| Enterprise | Large-scale production and advanced needs | Everything in Basic plus additional capabilities such as streaming pipelines, replication and higher availability options |
The exact feature split between editions can change over time, so always confirm the current comparison in Google Cloud documentation before choosing. In general, start with Developer while learning, use Basic for straightforward batch integration in production, and move to Enterprise when you need real-time pipelines, change data replication or stronger availability.
Other instance choices
Region
Create the instance in a region close to your data and compute to reduce latency and transfer costs.
Private or Public Access
Private instances keep traffic inside your VPC network and are the common choice for sensitive data.
Encryption Keys
Use Google-managed keys by default, or customer-managed keys if your policies require control over them.
Instance Version
New versions arrive over time. Plan upgrades and test pipelines when you change versions.
Use separate instances, or at least separate namespaces, for development, testing and production. This prevents an unfinished experiment from touching live data and lets you control who can change what.
6Pipeline Studio: Building Visually
The studio is where most of your time will be spent, so let us see how a pipeline comes together.
The canvas and the plugin palette
On the left sits a palette of plugins grouped by type. You drag a plugin onto the canvas, connect it to others with arrows, and open its properties to fill in the details, such as which table to read or which column to filter. The studio checks the settings and shows the data structure, called the schema, that flows out of each block, so you can see how data changes along the way.
Plugin types
Sources
Read from databases, files, message feeds, cloud storage and business applications.
Transforms
Clean, filter, rename, convert, mask and reshape records, one at a time or in bulk.
Analytics
Group, aggregate, join and deduplicate data across many records.
Sinks
Write results to warehouses, databases, files and other destinations.
Conditions and Actions
Control the flow: run a step only if something is true, run a database command, or move a file before or after the main work.
Error Handlers and Alerts
Collect bad records separately, and send notifications when something happens.
Common transformations in plain words
| Need | Typical Approach in the Studio |
|---|---|
| Remove unwanted rows | Use a filter transform with a condition |
| Fix messy values | Use Wrangler directives to trim, change case, parse dates or split columns |
| Combine two datasets | Use a joiner that matches records on a shared key |
| Total or count by group | Use a group-by aggregator |
| Remove duplicates | Use a deduplicate block on chosen columns |
| Hide sensitive values | Use masking or hashing directives on those fields |
| Split good from bad records | Use validation and the error collector, routing bad rows to a separate sink |
Preview before you run
The studio has a preview mode that runs your pipeline on a small sample, without writing to real destinations, and shows the data after each step. This is the fastest way to find mistakes, such as a wrong column name or a join that produces no matches. Use it often while building.
Name your blocks clearly, such as “Filter Active Customers” instead of “Filter 2”. A pipeline is a living document, and clear names turn the canvas into explanation your teammates can read at a glance.
Testing only with a tiny, clean sample. Real data has missing values, odd formats and surprising duplicates. Test with a representative sample that includes ugly cases before the first production run.
7Wrangler: Cleaning Data Interactively
Data from the real world is rarely clean. Wrangler turns cleanup into a visual, step-by-step activity.
How Wrangler works
You open a sample of your data, such as a file or a database table, and see it as a grid. You then apply steps by clicking on columns and choosing actions: split a full name into first and last, fix date formats, drop empty rows, change text case, or parse a messy text column into structured fields. Each action becomes a recorded step, called a directive, and the full list of steps can be attached to a pipeline so it is applied to all your data, not just the sample.
Wrangler is like cleaning a muddy pair of shoes with a recorded routine. You try the steps on one shoe: brush, wipe, polish. Once you are happy with the result, the same routine is applied to every pair that comes through the door.
Load a Sample
Open a small, representative slice of the raw data in the grid.
Apply Steps
Click columns and choose actions to clean, parse, split, mask or derive values, watching the result instantly.
Review the Recipe
See the list of recorded steps, reorder or remove them, and check the output schema.
Add to a Pipeline
Send the recipe into the studio as a transform block, ready to run on the full dataset.
Wrangler shows only a sample, so a cleaning rule that works on the sample may miss rare formats elsewhere. Always check the output of the first full run and keep an error path for records that do not fit the rules.
8Connectors: Sources and Destinations
A pipeline is only useful if it can reach your data. Cloud Data Fusion ships with many connectors and lets you add more.
| Category | Examples | Typical Role |
|---|---|---|
| Google Cloud services | BigQuery, Cloud Storage, Pub/Sub, Spanner, Bigtable | Warehouse, file landing, event feeds and serving stores |
| Relational databases | MySQL, PostgreSQL, SQL Server, Oracle through database connectors | Operational data sources and some destinations |
| Files and formats | CSV, JSON, Avro, Parquet, ORC, XML | Batch file ingestion and export |
| Business applications | CRM, ERP and marketing platforms through available plugins | Bringing business data into analytics |
| Messaging | Pub/Sub, Kafka | Streaming sources and sinks |
| Other clouds and storage | Object storage from other providers via plugins | Multicloud data movement |
The Hub and custom plugins
The Hub is a catalog from which you can install more plugins, ready-made pipeline templates and sample solutions. If no plugin exists for a system you need, developers can write a custom plugin and upload it, so that analysts can then use it in the studio like any other block. Alternatively, a generic database connector using a driver you upload can reach many systems.
Reaching systems on-premises
To read from databases in your own data center, the compute running your pipeline must have a network route to them. This is normally arranged with Cloud VPN or Cloud Interconnect, together with private networking for the instance and a compute profile in the right network. Planning this early avoids many connection failures later.
Testing a database connection successfully from the design interface and assuming the pipeline will connect too. The test and the real run may use different network paths. Make sure the Dataproc workers can reach the database, with correct firewall rules and routes.
9Batch, Real-Time and Replication Pipelines
Cloud Data Fusion supports more than one style of data movement. Each fits a different need.
Batch Pipelines
Process a defined set of data on a schedule or on demand, such as a nightly load of yesterday’s orders. The most common style and available in every production edition.
Real-Time Pipelines
Continuously process events as they arrive, for example messages from a feed, with results available within seconds. Usually requires a higher edition.
Replication
Continuously copy changes from supported operational databases into a destination such as BigQuery, keeping the analytics copy close to up to date without custom code.
| Aspect | Batch | Real-Time | Replication |
|---|---|---|---|
| Input | Fixed set of data | Continuous events | Database change log |
| Freshness | Minutes to hours | Seconds | Seconds to minutes |
| Transform power | Rich, any plugin | Rich, limited to streaming-capable plugins | Mostly copy with light mapping |
| Best for | Reports, migrations, scheduled loads | Live enrichment and alerting | Keeping a warehouse in sync with a source database |
flowchart TD
Q1{Do you only need to mirror a database to a warehouse?} -->|Yes| R[Replication]
Q1 -->|No| Q2{Must results arrive within seconds?}
Q2 -->|Yes| S[Real-Time Pipeline]
Q2 -->|No| B[Batch Pipeline]
The sources and databases supported for replication, and the edition required, are specific and change with versions. Confirm them in current documentation before you design around replication.
10Compute Profiles and Performance
A pipeline’s speed and cost depend heavily on the cluster it runs on.
What a compute profile controls
A compute profile stores settings such as the type and number of machines, the disk size, the network and subnet, the region and the service account used by the cluster. You can create several profiles, for instance a small one for tests and a larger one for heavy production loads, and choose one for each pipeline or each run.
Ephemeral Dataproc
Creates a new cluster for each run and deletes it afterwards. Pay only while running, but add a startup delay.
Existing Dataproc Cluster
Uses a cluster you already keep running. Faster starts, but you pay for it while idle.
Remote Hadoop or Custom
Connects to clusters outside the standard setup, for teams with special environments.
Tuning a pipeline
Right-Size the Cluster
Match the number and size of workers to the data volume. Too small is slow; too large wastes money.
Filter Early
Drop unneeded rows and columns near the source so later steps process less data.
Watch Joins and Skew
Large joins and uneven data distribution can slow a pipeline. Use settings that suit the size of each side, and avoid keys where a few values dominate.
Partition Reads
When reading from databases, split the read across several parallel connections on a well-spread column rather than one big query.
Measure, Then Adjust
Use run metrics and logs to find the slowest stage before changing anything.
Problem
Reading a very large database table through a single connection, with no splitting, and then blaming the cluster for being slow.
Why It’s Harmful
One connection becomes the bottleneck, so adding workers changes nothing, and the source database is pressured by one long query.
Correct Approach
Split the read into several parallel parts using a numeric or date column with an even spread, and filter to only the data needed.
11Scheduling, Triggers and Orchestration
Pipelines rarely run once. They run on time, in order, and with the right inputs.
Built-in scheduling
You can schedule a deployed pipeline to run at set times, such as every night at two o’clock. You can also set triggers so that one pipeline starts when another finishes, either always or only when it succeeds or fails. This lets you chain a series of steps, such as ingest, then clean, then load, without outside tools.
Macros and runtime arguments
Hard-coding values such as a date or a file path makes pipelines inflexible. Macros let you leave a blank in a setting, and the value is supplied each run, either manually, from the schedule or from an earlier pipeline. For example, a daily load can receive “yesterday’s date” and read only that day’s files.
Orchestrating bigger workflows
When your workflow includes many different systems, not just Cloud Data Fusion, a dedicated orchestration service such as Cloud Composer, which is based on Apache Airflow, can start Cloud Data Fusion pipelines as one step among many. It also handles dependencies, retries and alerts across the whole workflow.
| Need | Good Option |
|---|---|
| Run one pipeline every night | Built-in schedule |
| Run pipeline B after pipeline A succeeds | Built-in trigger |
| Pass today’s date into a pipeline | Macro with a runtime argument |
| Coordinate many tools and jobs with retries | Cloud Composer calling Cloud Data Fusion |
| Start a pipeline when a file arrives | An event-driven trigger that calls the Cloud Data Fusion API |
Setting schedules that overlap, so a new run starts before the previous one has finished. This can cause duplicate or conflicting writes. Leave enough time between runs or design the load to be safe to repeat.
12Metadata, Lineage and Data Governance
Knowing where data came from and what happened to it is a major reason teams choose Cloud Data Fusion.
Lineage
Cloud Data Fusion records lineage, a map showing how data moved through pipelines: which sources fed which datasets, which pipelines touched them, and how fields were changed along the way. This includes field-level lineage, which can show that a column in a report was built from specific columns in a source after specific transformations.
Lineage is like the label on a food product that tells you the farm, the factory and the date of each step. When someone finds a problem with the final product, you can trace backward to the exact origin instead of guessing.
Metadata
Datasets and pipelines can be tagged and described, and the system collects technical information such as schemas and run histories. Search tools let people find datasets by name, tag or field, which reduces duplicate work and helps new team members learn the data landscape.
Impact Analysis
Before changing a source column, see which pipelines and reports depend on it.
Troubleshooting
When a number looks wrong, trace it back through each step to find where it changed.
Compliance Evidence
Show auditors how sensitive fields were handled from source to destination.
Data Discovery
Help analysts find trusted, documented datasets rather than building their own copies.
Lineage is only as good as the pipelines that produce it. Moving data by hand or by one-off scripts leaves gaps in the story. Route important data movement through governed pipelines.
13Security and Networking
Pipelines touch valuable data, so security needs attention in several layers.
Identity and access
Access is controlled through Identity and Access Management. Predefined roles allow some people to administer instances, others to design and run pipelines, and others only to view. Besides human users, service accounts matter: the Cloud Data Fusion service uses one identity to manage resources on your behalf, and the Dataproc cluster runs as another, which needs permission to read your sources and write your destinations. Give each only what it needs.
Role Separation
Keep administrators, pipeline developers and operators in different roles, and give business viewers read-only access.
Private Instances
Use a private instance connected to your VPC so the interface and traffic are not exposed on the public internet.
Least-Privilege Service Accounts
Use a dedicated service account for pipeline execution with access only to the needed datasets and buckets.
Encryption
Data is encrypted at rest and in transit. Use customer-managed keys if your policies require them.
Secure Storage for Credentials
Keep database passwords and keys in a secure store and reference them, rather than typing them into pipeline settings.
Service Perimeters and Audit Logs
Use VPC Service Controls where needed, and review audit logs for administrative actions.
Protecting sensitive data in pipelines
Use masking, hashing or removal of sensitive fields as early as possible, and make sure error outputs and logs do not store raw personal data. Applying these steps in a shared, reviewed pipeline gives consistent protection and a lineage record that proves it.
Letting pipelines run under a broad, powerful account because it “just works”. A mistake in one pipeline could then change or expose far more than intended. Use narrowly scoped identities.
14Monitoring, Logging and Troubleshooting
When a pipeline fails at three in the morning, clear signals decide how fast you recover.
| Tool or Signal | What It Shows | Best Used For |
|---|---|---|
| Pipeline run history | Status, start and end times, duration of each run | Spotting failures and slowdowns over time |
| Run logs | Detailed messages from the pipeline and cluster | Finding the exact error |
| Stage metrics | Records in and out for each block | Seeing where data is lost or filtered |
| Cloud Logging and Monitoring | Centralized logs, metrics and alerts | Alerting and dashboards across many pipelines |
| Dataproc cluster views | Cluster health, machine use and Spark jobs | Diagnosing resource shortages |
| Error collector output | Records that failed processing, with reasons | Data quality review |
| Alert plugins | Notifications on success or failure | Telling people when something needs attention |
A simple troubleshooting routine
Did It Start?
If the run never reached running state, look at provisioning errors: permissions, quotas, network or cluster settings.
Where Did It Fail?
Open the run and find the first failing stage and its error message.
Compare Record Counts
Check records in and out of each stage to find where rows disappeared or multiplied.
Check Connections and Permissions
Confirm the cluster can reach the source and destination and that the service account has access.
Reproduce with Preview
Use a small sample in preview to reproduce the issue before changing the real pipeline.
A pipeline that succeeds but writes zero rows is often worse than one that fails, because nobody notices. Add checks and alerts on record counts, not just on run status.
15Handling Errors and Data Quality
Bad data is a fact of life. A good pipeline expects it and handles it gracefully.
Error Collector and Error Sink
Send records that fail a transformation to a separate destination with the reason attached, instead of failing the whole run.
Validation Rules
Check required fields, value ranges and formats as data enters, and route violations aside.
Row Count Checks
Compare counts between source and destination, and alert on unexpected differences.
Failure Thresholds
Decide how many bad records are acceptable. A few might be fine; a flood probably means a deeper problem and should stop the run.
Safe Reruns
Design loads so running them again does not create duplicates, for example by replacing a partition rather than appending.
flowchart LR
A[Read Source] --> B[Validate Records]
B -->|Valid| C[Transform and Enrich]
B -->|Invalid| D[Error Collector]
C --> E[Write to Destination]
D --> F[Error Table for Review]
F --> G[Fix and Replay]
G --> B
Problem
Letting any single bad record fail the entire pipeline, or silently dropping bad records with no record of them.
Why It’s Harmful
The first causes constant failures from tiny problems; the second causes hidden data loss that undermines trust in reports.
Correct Approach
Capture bad records with reasons in an error table, monitor their volume, and stop the run only when failures cross a threshold.
16Development Lifecycle, Version Control and CI/CD
Visual does not mean unmanaged. Professional teams treat pipelines like any other important software asset.
Exporting and importing pipelines
Every pipeline can be exported as a file that describes its design. You can store these files in a source control system, review changes, and import them into another instance. This is how teams move a pipeline from development to testing to production without redrawing it.
Promoting across environments
Build in Development
Design and preview in a development instance or namespace with sample data.
Export and Version
Export the pipeline file and commit it to source control with a clear description of changes.
Review and Test
Another person reviews the change, and automated checks or test runs verify behavior with realistic data.
Deploy to Production
An automated process imports the approved file into the production instance, using the Cloud Data Fusion API, with environment-specific settings supplied through arguments.
Monitor and Learn
Watch the first runs closely and record lessons for the next change.
Editing production pipelines directly in the studio with no record of what changed. When something breaks, nobody knows what was different. Treat the exported, versioned file as the source of truth.
17Cost and Pricing
Cloud Data Fusion costs come from more than one place. Knowing them prevents bill shock.
Instance Charges
The instance is billed per hour while it exists, at a rate that depends on the edition. It is billed even when no pipelines are running.
Execution Cluster Charges
Dataproc machines and disks used to run pipelines are billed to your project, usually only while clusters exist.
Storage and Data Services
Cloud Storage, BigQuery and other sources and sinks have their own charges for storage, queries and loading.
Network Transfer
Moving data across regions or out of Google Cloud can add transfer fees.
Logging
Verbose logs from many frequent runs can generate noticeable logging volume.
Ways to keep costs under control
Good Habits
- Use the Developer edition for learning, and delete unused instances
- Choose the lowest edition that meets your needs
- Use ephemeral clusters so you pay only during runs
- Right-size clusters and use compute profiles suited to each pipeline
- Filter data early to process less
- Run big jobs off-peak and avoid unnecessary reruns
- Keep source, instance and cluster in the same region
Cost Traps
- Leaving an idle instance running for months
- Using the highest edition when a lower one would do
- Many tiny, frequent runs that each pay a cluster startup
- Oversized clusters for small jobs
- Cross-region data movement without noticing
- Forgetting to remove old clusters or test resources
Pricing differs by edition and region and changes over time. Always confirm the current rates on the official Cloud Data Fusion pricing page before planning a budget.
18Cloud Data Fusion Compared with Other Tools
Several Google Cloud services move or transform data. Picking the right one saves effort.
| Service | Style | Best Fit |
|---|---|---|
| Cloud Data Fusion | Visual, plugin-based integration on managed Spark | Teams that want drag-and-drop pipelines, many connectors, lineage and less coding |
| Dataflow | Code-based Apache Beam pipelines, serverless | Custom logic, advanced streaming, very large scale and fine control |
| Dataproc | Managed Spark and Hadoop clusters | Existing Spark or Hadoop code and tools |
| BigQuery SQL and scheduled queries | SQL inside the warehouse | Transformations of data already loaded in BigQuery |
| Datastream | Managed change data capture | Simple, low-latency replication from databases into Google Cloud |
| BigQuery Data Transfer Service | Scheduled, managed imports | Loading data from supported applications and storage into BigQuery |
| Cloud Composer | Workflow orchestration | Coordinating many jobs and systems with dependencies and retries |
If building a data pipeline were like building a house, Cloud Data Fusion is a prefabricated kit with clear instructions, Dataflow is a custom architect-designed build, Dataproc is renting a fully equipped workshop, and Composer is the project manager who schedules all the crews.
flowchart TD
Q1{Is data already in BigQuery and SQL enough?} -->|Yes| A1[BigQuery SQL]
Q1 -->|No| Q2{Only need a database copy into the cloud?}
Q2 -->|Yes| A2[Datastream or Data Fusion Replication]
Q2 -->|No| Q3{Prefer visual building and many ready connectors?}
Q3 -->|Yes| A3[Cloud Data Fusion]
Q3 -->|No| Q4{Need custom streaming logic or huge scale?}
Q4 -->|Yes| A4[Dataflow]
Q4 -->|No| A5[Dataproc for existing Spark code]
19Design Patterns and Anti-patterns
Patterns capture what experienced teams repeatedly find works; anti-patterns capture what goes wrong.
Helpful patterns
Landing, Cleaning and Serving Layers
Raw data is first landed unchanged in Cloud Storage or a raw dataset, then cleaned and standardized by a pipeline, then shaped into business-ready tables. Keeping raw data lets you reprocess later if rules change.
Parameterized, Reusable Pipelines
Use macros for dates, paths and table names, so one pipeline serves many days, regions or customers rather than being copied and edited each time.
Incremental Loading
Instead of reloading everything each night, load only new or changed records using a date or change marker. This reduces time, cost and pressure on source systems.
Error Table and Replay
Failed records are saved with reasons. Once rules are fixed, a small pipeline replays them into the main flow.
Early Masking of Sensitive Data
Personal fields are masked or hashed at the first opportunity, so downstream users and logs never see raw values.
Pipeline Chains with Triggers
Small, single-purpose pipelines linked by triggers or by an orchestrator are easier to test, rerun and understand than one enormous pipeline.
Anti-patterns to avoid
Problem
One gigantic pipeline with dozens of blocks that does ingestion, cleaning, joining, aggregation and loading all at once.
Why It’s Harmful
It is hard to understand, test and debug, and any failure forces a rerun of everything.
Correct Approach
Split into focused pipelines with clear inputs and outputs, connected by triggers or an orchestrator.
Problem
Hard-coding values such as dates, file paths and credentials directly inside pipeline settings.
Why It’s Harmful
Every change requires editing the pipeline, secrets are exposed, and promotion between environments is error-prone.
Correct Approach
Use macros and runtime arguments for values, and reference secrets from a secure store.
Problem
Using a visual tool for logic that is heavy on custom algorithms, forcing it into long chains of awkward blocks.
Why It’s Harmful
The canvas becomes tangled and slow, and the result is harder to maintain than ordinary code.
Correct Approach
Write the complex part as a custom plugin or in a code-based tool such as Dataflow, and use the visual tool for the standard parts.
Problem
Running a Cloud Data Fusion instance around the clock for a handful of small pipelines that run once a week.
Why It’s Harmful
The instance fee runs continuously regardless of use, so costs far exceed the value delivered.
Correct Approach
Consider a lighter tool for tiny workloads, or consolidate pipelines on shared instances to spread the cost.
20Advantages, Disadvantages and Real-World Uses
An honest view of strengths, limits and where teams actually use it.
Advantages
- Visual design makes pipelines accessible to more people
- Large library of connectors and transformations
- Built-in preview, lineage and metadata features
- Runs on managed, scalable Dataproc and Spark
- Open-source foundation reduces lock-in
- Good integration with Google Cloud security and monitoring
- Pipelines can be exported, versioned and automated
Disadvantages / Trade-offs
- Instance fee runs continuously, which hurts small workloads
- Ephemeral cluster startup adds delay to each run
- Complex custom logic can be awkward to express visually
- Two layers to manage and pay for: the instance and the clusters
- Some features require higher editions
- Networking to private or on-premises systems needs careful setup
Real-world examples
Retail Warehouse Loading
A retailer pulls sales files from stores, customer data from a database and product data from a business application. Visual pipelines clean and join them each night and load a BigQuery warehouse that feeds morning dashboards.
Data Center Migration
A company moving to Google Cloud uses ready-made database connectors to copy hundreds of tables from on-premises systems, with repeatable pipelines that are rerun until the cutover is complete.
Healthcare Data Standardization
A health organization combines records from several clinics in different formats, masks personal fields early, and uses lineage to show regulators how each report field was produced.
Self-Service for Analysts
A finance team uses Wrangler and the studio to prepare monthly data without waiting for engineers, while a platform team reviews and promotes their pipelines to production.
Keeping Analytics in Sync
A company replicates changes from an operational database into BigQuery so analysts can query near-current data without putting load on the production system.
21Best Practices and Frequently Asked Questions
A checklist to carry into every project, followed by answers to common beginner questions.
Best Practices
- Choose the right edition and delete unused instances
- Separate development, test and production
- Use macros, secure credentials and clear block names
- Validate data early and send bad records to an error table
- Use private networking and least-privilege service accounts
- Right-size compute profiles and filter early
- Export pipelines and keep them in source control
- Alert on failures and on suspicious record counts
- Keep pipelines small, focused and rerunnable
Common Mistakes
- Overlooking the separate instance and cluster costs
- Testing connections from the studio but not from the cluster
- Hard-coding dates, paths and passwords
- Ignoring bad data until reports look wrong
- Editing production pipelines with no version history
- One enormous pipeline for everything
- Using broad permissions for convenience
Not for most common tasks. You build pipelines visually with ready-made plugins. Coding is only needed for custom plugins or very specialized logic.
Cloud Data Fusion is a managed Google Cloud service built on CDAP, an open-source framework for data integration. This is why plugins and pipelines have an open foundation rather than being fully proprietary.
Typically on Dataproc clusters in your own project, using Apache Spark. The instance only designs, schedules and tracks them.
With ephemeral clusters, a new cluster must be created for each run, which takes a few minutes. Use an existing cluster if you need faster starts, at the cost of paying for it while idle.
Cloud Data Fusion is a visual, plugin-driven tool running on Spark clusters. Dataflow is a code-based, serverless service built for custom logic and advanced streaming. Many organizations use both for different jobs.
Yes, real-time pipelines are supported in higher editions, though the transformations available in streaming mode are more limited than in batch. Check current documentation for details.
Provide a network path with Cloud VPN or Cloud Interconnect, use a private instance and a compute profile in the right network, and make sure firewall rules allow the cluster to reach the database.
Use lineage, including field-level lineage, to trace the report’s columns back through each pipeline and transformation to the original source fields.
Export the pipeline file, keep it in source control, review it, and import it into the production instance through the interface or the API, supplying environment-specific values through arguments.
You decide. With the error collector, bad records can be routed with their error reason to a separate destination while good records continue, and you can set thresholds that stop the run if too many fail.
The instance, billed hourly by edition even when idle, plus the Dataproc clusters used during runs, plus the services you read from and write to, and network transfer.
Often not. The continuous instance fee can outweigh the value. Lighter tools, such as scheduled queries or transfer services, may be more economical for small, simple needs.
22Summary and Key Takeaways
Cloud Data Fusion is Google Cloud’s managed, visual data integration service. You design pipelines by dragging plugins onto a canvas, clean data interactively with Wrangler, preview results on samples, and then run the pipelines on managed Dataproc clusters that can be created and deleted for each run. Built on the open-source CDAP framework, it offers a large library of connectors, scheduling and triggers, lineage and metadata for governance, and support for batch, real-time and replication styles in the appropriate editions. Its strengths are speed of development, accessibility and traceability; its trade-offs are the continuous instance fee, cluster startup time and the awkwardness of very custom logic. Success comes from choosing the right edition, designing small and rerunnable pipelines, handling bad data deliberately, securing identities and networks, versioning pipelines like code and watching both run status and record counts.
Key Takeaways
- Visual, managed integration on CDAP — build pipelines from plugins on a canvas instead of writing code, with an open-source foundation.
- Two layers to understand — the instance designs, schedules and tracks; Dataproc clusters in your project run the work, and each is billed separately.
- Pick the right edition and style — Developer for learning, Basic for batch production, Enterprise for streaming and replication needs, confirmed against current documentation.
- Prepare and preview — use Wrangler and preview with realistic samples to catch problems before production runs.
- Design for bad data — validate early, send failures to an error table with reasons, add record-count checks and make loads safe to rerun.
- Secure and govern — private instances, least-privilege service accounts, early masking, and lineage for audits and troubleshooting.
- Operate like software — export and version pipelines, use macros instead of hard-coded values, promote through environments and control cost by right-sizing and removing idle resources.