In the world of time-series data, structure matters. Whether you’re building a data pipeline for an industrial IoT deployment or designing a monitoring system for wind turbines, how you organize your tables can determine everything from query performance to engineering effort. And in these environments, sensors are many, data is fast, and the complexity never stops growing.
The Challenge with One Table per Device
The idea of organizing all of a device’s data into a single table is compelling. From a business and analytics perspective, it feels natural: show me all the data for wind turbine #108 or pump station A12. But the technical reality is more complicated.
A single device typically includes multiple sensors, each with different collection intervals and data types — mechanical, electrical, environmental, and so on. Modeling all of that in one physical table would either require:
- Sacrificing normalization and flexibility
- Introducing large amounts of NULLs in each row (since not all sensors collect data at every timestamp)
- Or performing complex multi-table joins that degrade query performance and increase maintenance overhead
This disconnect between data collection architecture and business logic is where virtual tables come in.
Enter the Virtual Table
To bridge the gap between physical schema design and real-world analytics needs, TDengine has introduced the virtual table: a flexible, query-time abstraction that lets users define custom logical views over existing tables, without duplicating data or changing their storage schema.
A virtual table is not a physical container and does not store data itself. Instead, it provides a dynamically generated view that merges selected columns from multiple subtables. This lets users analyze data as if it were in a unified table, while keeping the underlying structure optimized for write performance and storage efficiency.
With virtual tables, TDengine offers a middle ground: performance at scale, and simplicity at the query layer.
How It Works
You create a virtual table or virtual supertable by selecting specific columns from multiple source tables. When you query the virtual table, the data in these columns are aligned by timestamp, with NULL filled in for any missing entries. Whenever new or updated data is written to the source tables, these changes are automatically reflected in the virtual table.
For example, if you have separate tables for wind speed, rotor torque, and temperature on a turbine, a virtual table can merge these into one unified schema aligned by timestamp, presenting a coherent time-series dataset that can be queried directly.

This is especially useful when:
- Performing cross-sensor correlation analysis
- Feeding unified datasets into visualization or ML pipelines
- Simplifying user access to device-level data
Advantages of Virtual Tables
- Personalized Schema Without Redesign: With virtual tables, every team can define the schema they need without impacting the physical table design. Want to see only the environmental parameters? Create a virtual table with just those columns. Want to analyze everything together? Define a virtual supertable that spans them all.
- Real-Time, Query-Time Generation: Since virtual tables are generated at query time, they always reflect the latest data in the source tables. There’s no ETL or materialization step required. The data is where it has always been, just presented in a way that makes sense for analysis.
- Minimal Performance Trade-Off: Because the virtual table includes only the columns referenced in the query, it avoids the inefficiencies of pre-joining all possible fields. TDengine’s engine dynamically builds the necessary structure during execution, optimizing for speed and resource usage.
- Simplified Application Logic: Instead of juggling multiple queries or application-side merges, developers can treat virtual tables like any other table in TDengine. This reduces code complexity, improves readability, and accelerates time to value.
Learn More
- Read an in-depth article about how virtual tables assist industrial data governance.
- See how virtual tables are already helping companies like Extracellular streamline operations.
- Get started with the documentation and explore on your own or contact our solutions team to see how virtual tables can help you build a better industrial data architecture.