Apache IoTDB Time Series Database
website·Indexed 33 days ago
https://www.timecho.comAn open-source time series database designed for the Industrial Internet of Things (IIoT). It features a native industrial architecture with tree-table dual models, edge-cloud synergy, and high-performance capabilities for high-frequency data collection, extreme storage compression, and millisecond-level queries. The project is an Apache Software Foundation top-level project and has set world records in TPCx-IoT benchmarks.
What's inside IoTDB
- Changan Intelligent Automobile utilizes a five-layer big data processing architecture based on the Hadoop ecosystem to manage vehicle connectivity data. The architecture is designed to support millions of connected vehicles (targeting 10 million by 2025) across three primary platforms: a Control Platform (unified vehicle-cloud-consumer architecture), a Data Platform (sensor and computing migration to cloud), and a Service Platform (open ecosystem integration).
Overview of IoTDB Data Subscription
The IoTDB subscription client provides a streaming data consumption method for lightweight streaming data acquisition. It is supported starting from version V2.0.11.1. It is particularly useful for:
- Obtaining newly written data in real time for dashboards or supervisory control.
- Integrating with downstream systems like Flink, Kafka, DataX, and MySQL.
- Incrementally backing up TsFiles to specified storage.
- Running low-latency real-time computation via consensus subscription from the IoTConsensus write path.
Overview of Datang Xianyi Smart Power Plant Architecture
Datang Xianyi implements a Smart Power Plant architecture designed for self-perception, self-learning, and self-adaptation to achieve safety, economy, environmental protection, and efficiency. The technical architecture consists of three primary layers:
- Infrastructure Layer: Comprises intelligent and power equipment.
- Digital Control Platform: A layer combining ubiquitous sensing networks with cloud computing, big data, and IoT technologies. This layer heavily utilizes IoTDB for data perception and collection.
- Smart Application Layer: Covers the entire power plant lifecycle, including infrastructure construction, safety, operation, maintenance, fuel, materials, business management, and office operations, culminating in a smart decision-making framework.
Overview of the TsFile storage format
TsFile is a custom columnar storage format developed by Apache IoTDB designed to reduce disk space usage (reported up to 85% reduction compared to some international systems). It uses a multi-level hierarchical structure for data storage and indexing:
Data Hierarchy:
- ChunkGroup: Stores data for a device over a specific period.
- Chunk: Stores data for a single physical measurement over a period. It is categorized into:
TSChunk: For non-aligned sequences.TimeChunkandValueChunk: For aligned sequences.
- Page: The smallest unit of data for a physical measurement, categorized into
TSPage,TimePage, andValuePage.
Indexing Mechanism:
- Intra-sequence Indexing: Multi-level statistics (Page-level, Chunk-level, and File-level) used to filter data blocks, reduce IO, and enable fast aggregate queries without scanning raw data.
- Inter-sequence Indexing: A metadata index tree at the end of the file used to quickly locate a specific sequence's data position via a Device $\rightarrow$ Measurement $\rightarrow$ Intra-sequence index path.
Overview of Nested Queries in IoTDB
Nested queries (subqueries) are query statements contained within other query statements, consisting of an inner query and an outer query. In IoTDB, these are classified by their relationship to the outer query and the dimensionality of their result sets.
Classification by Reference:
- Non-Correlated Subquery: The inner query is independent of the outer query and executes only once. (Supported)
- Correlated Subquery: The inner query references columns from the outer query's table. (Supported in V2.0.5 and later).
Classification by Result Set Dimensionality:
- Scalar Subquery: Returns a single row and column. Usable in
SELECT,WHERE,FROM, andHAVINGclauses. (Supported) - Column Subquery: Returns N rows and one column. Usable in
SELECT,WHERE,FROM, andHAVINGclauses. (Supported) - Table Subquery: Returns N rows and M columns. Usable in
FROMclauses. (Supported) - Row Subquery: Returns one row and N columns. (Not Supported)
Overview of Data Retention (TTL) in IoTDB
IoTDB supports Time-to-Live (TTL) settings at the table level to automatically delete old data. This helps control disk space and maintain high query performance and low memory usage.
Key characteristics:
- Unit: TTL is defined in milliseconds (ms).
- Expiration Logic: Data is considered expired based on the data point's timestamp, not the write time.
- Behavior: Once data expires, it becomes unqueryable and cannot be written to. However, physical deletion from disk is delayed until the next compaction process.
- Precision: TTL settings are always in milliseconds regardless of the time precision configured in the system files.
Overview of Timecho and Apache IoTDB
Timecho was founded in October 2021 by the core team of Apache IoTDB. The company provides industry-leading time-series database management systems and services designed for industrial users. Their solutions focus on high throughput, high compression, and high availability to solve challenges related to data storage, querying, and utilization in IoT-native environments.Overview of Apache IoTDB core features
Apache IoTDB is a high-performance time-series database management system designed for IoT scenarios. Its core capabilities include:
- High-Throughput R/W: Capable of writing tens of millions of data points per second with stable performance regardless of data volume growth.
- Efficient Storage: Uses columnar storage and advanced compression algorithms achieving a lossless compression ratio of over 20:1 (reducing storage space by 80%+ compared to traditional schemes).
- Query Optimization: Supports fast retrieval by time range, device ID, and metric tags using time-series indexing and pre-aggregation, including downsampling queries.
- High Availability: Distributed architecture with multi-replica management and automatic failure recovery for 24/7 industrial-grade stability.
- Security: Includes data encryption and access control mechanisms.
Overview of Domestic Open Source Time Series Databases (TSDB)
Domestic open-source time series databases are evolving from technical followers to innovation leaders, serving as critical data infrastructure for industrial internet and IoT applications. They prioritize autonomous control and security, allowing users to audit source code to eliminate backdoor risks, which is essential for national security and critical infrastructure.Overview of IoT and IIoT Special Topic at Community Over Code Asia 2026
The 'Community Over Code Asia 2026 - IoT and IIoT' special topic, produced by the Apache IoTDB core team, focuses on how the Apache ecosystem empowers interconnected devices, industrial systems, and edge AI. Key areas of focus include system architecture, cross-domain integration, and full-stack IoT practices, specifically regarding large-scale device cluster management and end-to-end intelligent IoT systems.Overview of the Eclipse Foundation
The Eclipse Foundation is a European-based international non-profit association. It provides a business-friendly, neutral environment for open source collaboration. It manages over 400 projects, including the Eclipse IDE and Jakarta EE, spanning domains such as IoT, automotive, and system engineering.Overview of the IoTDB C Native API (SessionC)
The C Native API (SessionC) is a C language wrapper for the C++ Session SDK. It is compatible with the C++ driver and shares the sameiotdb_sessionshared library. To use it, developers only need to include theSessionC.hheader. Thrift and Boost are encapsulated within the library, so they do not need to be installed separately by the application developer. This feature is supported starting from version V2.0.10.1.