Data Integration Updated: 2026-03-14

What is Data Virtualization?

A data integration approach that provides a unified, real-time view of data from multiple sources without physically moving or replicating the data.

From the field

Data virtualization is the "query where the data lives" approach. Instead of copying every source into a central warehouse, you put a query engine in front (Trino, Starburst, Denodo, Dremio, Snowflake cross-database queries) and let users issue one SQL statement that federates across Postgres, S3 + Iceberg, MongoDB, Kafka, and the Snowflake warehouse. The appeal is obvious: no ETL pipeline for every new source, no data duplication, real-time freshness. The reality is subtler.

What virtualization is actually good at

Data virtualization earns its keep in three places: (1) exploration and discovery — analysts can sniff a new source before you commit to ingesting it; (2) "last-mile" joins between warehouse data and a low-volume source (e.g., joining Snowflake fact tables with a Postgres config table that has 5K rows); (3) cross-region or cross-cloud federation where physically replicating everything is impractical or violates data-residency rules. It loses its value when you start federating heavy BI workloads across half a dozen sources — pushdown works imperfectly, network latency dominates, and queries that would take 2 seconds on a materialized warehouse table take 45 seconds on the virtualization layer.

Field story

A retailer I worked with used Trino/Starburst to federate across their Snowflake warehouse, a Postgres product catalog, and S3 + Iceberg event logs. This worked beautifully for data exploration — analysts prototyped dashboards in days instead of waiting on an ETL pipeline. When those dashboards moved to production and got hit by 200 concurrent users, Trino struggled; the queries were joining 50M-row Iceberg tables with Snowflake fact tables over the network, and p95 latency spiked to 30+ seconds. The fix was to materialize the production joins into Snowflake (regular ETL) and leave Trino for exploration. Virtualization is a great front door for analysts; it's rarely the right answer for production BI. Know what workload you're actually building before you commit either way.

Data Virtualization is a data integration technique that allows users to access, query, and combine data from multiple heterogeneous sources through a single virtual layer — without physically moving, copying, or transforming the data into a centralized repository.

How It Works

Traditional ETL:
  Source A → [Extract] → [Transform] → [Load] → Data Warehouse → Query
  Source B → [Extract] → [Transform] → [Load] → Data Warehouse → Query
  (Hours/days of latency, data duplication)

Data Virtualization:
  Source A ──┐
             ├── Virtual Layer → Query (real-time, no duplication)
  Source B ──┘

Key Concepts

Virtual Views

  • Define logical tables that map to physical data sources
  • Users query virtual views as if they were local tables
  • The virtualization layer translates queries to source-native formats

Query Federation

  • Execute a single SQL query across multiple databases
  • The engine pushes filters and aggregations to source systems (pushdown)
  • Results are combined and returned to the user

Semantic Layer

  • Define business-friendly names and relationships
  • Abstract away technical details of source systems
  • Enforce consistent calculations and metrics

Benefits

  1. Real-Time Access: Query current data without waiting for ETL loads
  2. No Data Duplication: Reduce storage costs and governance complexity
  3. Faster Time to Value: Skip the ETL pipeline — query data immediately
  4. Single Access Point: One SQL interface for all data sources
  5. Reduced Complexity: Fewer ETL pipelines to build and maintain

Limitations

  • Performance: Complex joins across sources can be slow
  • Source Dependency: If a source is down, virtual queries fail
  • Not for Heavy Analytics: High-volume BI workloads still need a warehouse
  • Caching Needed: Frequently accessed data may need materialization

Popular Tools

ToolTypeBest For
DenodoEnterprise platformLarge enterprise data fabric
DremioOpen lakehouseData lake virtualization
Trino (PrestoSQL)Open source query engineFederated SQL across sources
StarburstManaged TrinoEnterprise query federation
TIBCO Data VirtualizationEnterpriseHybrid/multi-cloud integration
Snowflake (External Tables)Cloud DWQuerying external data sources

Common Use Cases

  1. Data Fabric: Unified access across on-premise and cloud data
  2. Real-Time Dashboards: BI on live operational data
  3. Data Exploration: Query new sources without building ETL first
  4. Regulatory Reporting: Access audit-ready data from source systems
  5. API Layer: Serve data to applications via virtual SQL views

Key Points

Gotchas

Data virtualization sells a beautiful story. The pitfalls are where production burns you:

  • Pushdown is imperfect and unpredictable. The query engine claims to push filters and aggregations to sources, but support varies wildly per connector. A function that pushes down to Postgres may not push down to MongoDB, and the engine silently falls back to pulling the entire table across the network. Profile every federated query; check EXPLAIN output for what actually pushed down.
  • Network latency kills cross-source joins at scale. Joining 100M Iceberg rows with 500M Snowflake rows requires pulling one side across the network. Even with fast pipes, this is seconds to minutes. Virtualization works best when one side of the join is small (a dimension table) or when both sides are in the same cloud region.
  • Source availability becomes your availability. If your dashboard federates Postgres + Snowflake + MongoDB and one source has a 30-second blip, every query across the virtualization layer fails. Traditional warehouses buffer against source outages; virtualization doesn't. Plan for cached/materialized views of critical queries.
  • Concurrency crushes query engines. Trino, Starburst, Denodo can handle 20 analysts; they struggle with 2000 concurrent dashboard users hitting the same virtualized view. Production BI workloads usually need materialization. Use virtualization for the front door, materialize for the hot path.
  • Cost accounting is fragmented. With a warehouse, you see the whole bill. With federation, costs show up in every source (source database CPU, egress charges, virtualization engine compute). Federated queries can look free until the egress invoice arrives.
  • Governance is harder than it looks. Masking policies, row-access policies, column-level security — these are often enforced per-source, not at the virtualization layer. A "unified" view can expose PII that individual sources had locked down. Verify governance enforcement end-to-end before opening federated access to sensitive sources.
  • Semantic layer drift. Teams define virtual views with business-friendly names and calculations; over time these drift from source reality. Treat the semantic layer like code — version-controlled, tested, owned.
  • Don't use virtualization as a substitute for a data platform. A common anti-pattern: "we don't need a warehouse, we'll just federate with Trino." This works for dozens of queries; it breaks for thousands. At scale you need both.

Frequently Asked Questions

What is data virtualization in simple terms?

Data virtualization is a technology that lets you query data from multiple sources — databases, data lakes, APIs, files — as if they were a single database, without physically copying the data into one place. A query engine (Trino, Denodo, Dremio) sits in front of the sources and translates your SQL into source-native queries, joins results across sources, and returns a unified view. It's useful for exploration, cross-source joins with small dimensions, and situations where physically replicating data is impractical — but it's rarely a full replacement for a properly built data warehouse at scale.

What is the difference between data virtualization and ETL?

ETL physically moves and transforms data into a central warehouse — batch process, hours of latency, data is duplicated but available locally for fast queries. Data virtualization leaves data in place and queries it in real-time through a federated layer — no duplication, always-fresh data, but query performance depends on source systems and network. ETL is better for heavy analytics, historical data, and high-concurrency BI; virtualization is better for real-time access, data exploration, and scenarios where replication isn't feasible. Most mature organizations use both.

Is Trino a data virtualization tool?

Yes — Trino (formerly PrestoSQL, originally built at Facebook) is an open-source distributed SQL query engine that functions as a data virtualization/federation layer. It has connectors for S3 + Iceberg/Parquet, Hive, Snowflake, BigQuery, Postgres, MySQL, MongoDB, Kafka, Elasticsearch, and many more. You write one SQL query and Trino executes it across sources, pushing filters down where possible. Starburst is the commercial, enterprise-supported version of Trino with added security, governance, and cost-management features. Trino is the go-to open-source choice for query federation in modern data platforms.

When should I use data virtualization vs a data warehouse?

Use virtualization when: (a) you're exploring a new source before committing ETL effort; (b) you need to join warehouse fact tables with a small external dimension table; (c) data residency or cross-cloud constraints make replication impractical; (d) real-time freshness matters more than raw query speed. Use a warehouse when: (a) you have high-concurrency BI workloads (100+ users); (b) queries routinely aggregate large data volumes; (c) you need historical point-in-time snapshots; (d) SLAs demand predictable query latency. Most mature platforms use both — warehouse for the hot path, virtualization for exploration and edge cases.

What tools are used for data virtualization?

Open source: Trino (most popular), Presto, Apache Drill, Dremio (open core). Commercial / enterprise: Denodo (the heavyweight enterprise data fabric platform), Starburst (managed Trino), TIBCO Data Virtualization, IBM Cloud Pak for Data, SAP HANA SDI. Cloud-native: Snowflake's cross-database queries and external tables, BigQuery's external data sources, AWS Athena Federated Queries. Choose based on ecosystem — Trino/Starburst for open-source and multi-cloud; Denodo for enterprise data fabric with strong governance; cloud-native for teams heavily invested in a single cloud warehouse.

Can data virtualization replace a data warehouse?

Rarely in production. Virtualization excels at exploration, low-volume cross-source joins, and real-time access to operational sources. It struggles at high-concurrency BI, heavy aggregations, and predictable SLA-bound workloads. Network latency, imperfect pushdown, and source availability make it fragile for mission-critical dashboards used by hundreds of users. The successful pattern is hybrid: warehouse for materialized, high-concurrency workloads; virtualization for exploration, edge cases, and last-mile joins. Teams that try to go pure-virtualization usually end up building a warehouse within 18-24 months.

What is query federation and how does it work?

Query federation is the core mechanism of data virtualization — a single SQL query is parsed, split into per-source subqueries, executed on each source system, and results are combined and returned. The federation engine (Trino, Denodo) pushes down as much work as possible — filters, projections, simple aggregations — to the source system to minimize data movement. What can't be pushed down is performed in the federation engine itself. Pushdown efficiency varies by connector and query shape, which is why profiling matters. A well-designed federated query can be nearly as fast as native; a poorly-designed one pulls millions of rows across the network.

Related Terms

Data WarehouseETL (Extract, Transform, Load)Data FabricData MeshData Catalog

Related Tools

DenodoDremioTrinoStarburstSnowflake

Learn More

Related Articles

Browse All Terms Read Articles